Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | util.pubsub: Add method returning subset of config as metadata | Kim Alvefur | 2024-11-08 | 1 | -0/+19 |
| | | | | | | Allows granting read only access to other sets of users using a separate access control capability, which makes sense as some properties may be intended to be public but read-only. | ||||
* | mod_pubsub: Move precondition error wrangling out of util.pubsub | Kim Alvefur | 2024-10-29 | 1 | -6/+1 |
| | | | | | | | | | Removes dependency on util.error from util.pubsub which was only used for this one special case. Line count reduction! Would be even nicer if templating could be done by util.error itself. | ||||
* | mod_pep: Implement 'roster' (group) access_model | Kim Alvefur | 2023-12-03 | 1 | -1/+1 |
| | | | | | | | Allows e.g. restricting your vcard4 to only family or similar. Notes: This does not include roster groups in the configuration form, so the client will have to get them from the actual roster. | ||||
* | util: Prefix module imports with prosody namespace | Kim Alvefur | 2023-03-17 | 1 | -3/+3 |
| | |||||
* | util.pubsub: Fix item store resize to "max" | Kim Alvefur | 2022-01-06 | 1 | -1/+6 |
| | | | | | Previously this would end up passing the "max" directly to the underlying storage. | ||||
* | mod_pubsub,mod_pep: Implement 'send_last_published_item' option #1436 | Kim Alvefur | 2021-10-19 | 1 | -0/+1 |
| | | | | | | | | Default left as 'never' in mod_pubsub to preserve the previous behavior. Unclear if this is desirable, but can always be changed later. In mod_pep this allows turning off the automatic resending of most recent item. | ||||
* | util.pubsub: Add support for limiting number of items to retrieve | Kim Alvefur | 2021-09-05 | 1 | -1/+6 |
| | | | | | Hopefully this will eventually be upgraded to RSM, which is why the argument is called 'resultspec' and is a table. | ||||
* | util.pubsub: Signal that 'persistent-items' is unsupported when disabled | Kim Alvefur | 2021-07-22 | 1 | -3/+4 |
| | | | | | | XEP-0060 says that this the way to indicate that 'persistent-items' is unsupported, but doesn't explicitly say if it being disabled in the node configuration also counts as unsupported. | ||||
* | util.pubsub: Fix behavior of persist_items disabled | Kim Alvefur | 2021-07-22 | 1 | -7/+22 |
| | | | | | | | | | | | | | When set to 'false' there is no need for a persistence interface at all, since items are not persisted after being broadcast. Had started wondering if maybe the behavior was wrong, after reading parts of XEP-0060 that pointed in that direction. Some discussion of this can be found in logs of xmpp:xsf@muc.xmpp.org?join from around 2021-07-20 Thanks to Ralph for confirming. | ||||
* | mod_pubsub: Explicitly enable persistence by default to preserve behavior | Kim Alvefur | 2021-07-21 | 1 | -1/+1 |
| | | | | | | Since nodes were always persistent according to the XEP-0060 definition. Whether data is stored in memory or on disk was not what this setting was meant for. | ||||
* | util.pubsub: Handle absence of node data interface | Kim Alvefur | 2021-07-21 | 1 | -17/+32 |
| | | | | | | | | This is in preparation for fixing the behavior of 'persist_items', which was misunderstood at some point. In mod_pep it toggles between persistent storage and in-memory storage, while the correct behavior would be to toggle whether published items are stored at all or forgotten after being broadcast. | ||||
* | Merge 0.11->trunk | Kim Alvefur | 2021-05-16 | 1 | -0/+4 |
|\ | |||||
| * | util.pubsub: Fix traceback if node data not initialized | Kim Alvefur | 2021-05-16 | 1 | -0/+4 |
| | | | | | | | | | | This should not be possible, but a traceback indicating node_data being nil here was reported by Ron in the chat. | ||||
* | | util.pubsub: Silence luacheck warnings, leaving notes on future proper fix | Kim Alvefur | 2019-12-23 | 1 | -5/+10 |
| | | |||||
* | | Merge 0.11->trunk | Kim Alvefur | 2019-12-23 | 1 | -4/+10 |
|\| | |||||
| * | util.pubsub: Pass subscribers trough a filter callback | Kim Alvefur | 2019-06-06 | 1 | -0/+2 |
| | | |||||
| * | util.pubsub: Factor out calling of broadcaster | Kim Alvefur | 2019-06-06 | 1 | -4/+8 |
| | | | | | | | | This will simplify doing things along with broadcasting. | ||||
* | | util.pubsub, pubsub.lib and tests: Add text to precondition-not-met error ↵ | Matthew Wild | 2019-10-27 | 1 | -3/+9 |
|/ | | | | (fixes #1455) | ||||
* | util.pubsub: Validate node configuration on node creation (fixes #1328) | Kim Alvefur | 2019-03-03 | 1 | -1/+10 |
| | |||||
* | util.pubsub: Add support for requesting multiple specific items (needed for ↵ | Kim Alvefur | 2019-01-28 | 1 | -8/+13 |
| | | | | #1305) | ||||
* | util.pubsub: Restore subscription index from stored data (fixes #1281) | Kim Alvefur | 2018-12-29 | 1 | -0/+14 |
| | |||||
* | util.pubsub: Clarify comment about return value | Kim Alvefur | 2018-10-21 | 1 | -1/+1 |
| | |||||
* | util.pubsub: Allow publishing with a config that should be used as defaults only | Matthew Wild | 2018-10-18 | 1 | -4/+7 |
| | |||||
* | util.pubsub: Expand comment on return type from get_items | Kim Alvefur | 2018-09-01 | 1 | -1/+1 |
| | |||||
* | util.pubsub: Explicitly add all capabilities to the 'outcast' affiliation ↵ | Kim Alvefur | 2018-08-31 | 1 | -0/+16 |
| | | | | for completeness | ||||
* | util.pubsub: Comments describing the return values of methods | Kim Alvefur | 2018-08-22 | 1 | -19/+19 |
| | |||||
* | util.pubsub: Add 'service' field to all events | Matthew Wild | 2018-08-27 | 1 | -7/+7 |
| | |||||
* | util.pubsub: Remove unused argument | Kim Alvefur | 2018-08-21 | 1 | -1/+1 |
| | | | | I think this was probably a copy-paste mistake. | ||||
* | util.pubsub: Fire item-published/<node> to allow for easier handling of ↵ | Matthew Wild | 2018-08-19 | 1 | -1/+3 |
| | | | | per-node items | ||||
* | util.pubsub, pubsub.lib: Improve error on attempt to publish invalid item | Matthew Wild | 2018-08-18 | 1 | -1/+1 |
| | |||||
* | Pubsub: Add tests for :get_last_item() and fix for non-persistent nodes | Matthew Wild | 2018-08-18 | 1 | -1/+1 |
| | |||||
* | util.pubsub: Fix whitespace [luacheck] | Matthew Wild | 2018-08-18 | 1 | -1/+1 |
| | |||||
* | Backed out changeset 27d800ddc3b0 (see below) | Matthew Wild | 2018-08-18 | 1 | -2/+2 |
| | | | | | | | | | It's uncertain whether item not existing should be success and nil, or fail with an error. XEP-0060's "fetch most recent item" actually fetches a list of up to N items. N here is a maximum, not a minimum. The feeling is that no items is simply an empty list, not a failure of the operation. | ||||
* | util.pubsub: get_last_item(): Fail with item-not-found if no item yet published | Matthew Wild | 2018-08-18 | 1 | -2/+2 |
| | |||||
* | util.pubsub: get_last_item(): Return error if node does not exist | Matthew Wild | 2018-08-18 | 1 | -0/+6 |
| | |||||
* | pubsub.lib, util.pubsub: Move precondition checks to util.pubsub | Matthew Wild | 2018-08-18 | 1 | -2/+17 |
| | |||||
* | util.pubsub: Add comment to clarify return values | Matthew Wild | 2018-08-18 | 1 | -0/+1 |
| | |||||
* | util.pubsub: Pass "retract" as the type of such broadcasts | Kim Alvefur | 2018-08-16 | 1 | -1/+1 |
| | | | | | | | | This moves some XEP-0060 awkwardness out of util.pubsub and into mod_pubsub A retraction is broadcast in an <items> container, whereas most other kinds of broadcasts are in a container with a name matching the 'kind' attribute. | ||||
* | util.pubsub: Allow outcasts to get their subscription status | Matthew Wild | 2018-08-12 | 1 | -0/+2 |
| | |||||
* | util.pubsub: For open nodes, default affiliation is "member" | Matthew Wild | 2018-08-09 | 1 | -1/+1 |
| | | | | | | | | | This allows entities without an explicit affiliation to retrieve items, which is specified by the XEP. Table 6: "Node Access Models" states that for 'open' nodes, "any entity may retrieve items from the node". See also discussion at: https://mail.jabber.org/pipermail/standards/2018-August/035320.html | ||||
* | mod_pep, util.pubsub: Rename restricted->outcast, none->member and add new ↵ | Matthew Wild | 2018-08-08 | 1 | -2/+24 |
| | | | | 'none' affiliation to better match XEP-0060 | ||||
* | mod_pubsub, mod_pep, util.pubsub: Move capability definitions into ↵ | Matthew Wild | 2018-08-08 | 1 | -1/+77 |
| | | | | util.pubsub to avoid duplication | ||||
* | util.pubsub: Include node defaults from current service object | Kim Alvefur | 2018-08-07 | 1 | -0/+3 |
| | |||||
* | util.pubsub: Re-check all subscriptions on access_model change, ↵ | Kim Alvefur | 2018-08-06 | 1 | -0/+12 |
| | | | | unsubscribing those no longer allowed | ||||
* | util.pubsub: Add support for publish_model config option | Matthew Wild | 2018-08-06 | 1 | -1/+14 |
| | |||||
* | util.pubsub: Apply defaults metatable before config check (thanks pep.) | Kim Alvefur | 2018-08-05 | 1 | -1/+3 |
| | | | | | Makes it so that the callback sees the default if it’s not in the form, which makes it easier to validate. | ||||
* | util.pubsub: Add method to retrieve node configuration | Matthew Wild | 2018-08-04 | 1 | -0/+21 |
| | |||||
* | util.pubsub: Use service.node_defaults in case config.node_defaults was not ↵ | Matthew Wild | 2018-08-04 | 1 | -1/+1 |
| | | | | provided (thanks jonasw) | ||||
* | util.pubsub: Tweak default affiliation of access models (fixes failing test) | Matthew Wild | 2018-08-04 | 1 | -2/+2 |
| | | | | | | | | | | | 11:56:59 MattJ> Someone who has the ability to subscribe does not have the "subscriber" affiliation until they actually subscribe, they just have the normal "none" affiliation (which has permission to subscribe) 11:58:05 MattJ> However if the access model is whitelist, then anyone not on the whitelist has an implicit negative affiliation, which we don't currently have, so I just named "restricted" 11:58:16 MattJ> Since it doesn't exist in any code yet, it has no permissions | ||||
* | util.pubsub: Look for a configured callback for more complicated access models | Kim Alvefur | 2018-08-04 | 1 | -0/+10 |
| |