Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 |
| | |||||
* | util.pubsub: Add initial support for configurable access models | Kim Alvefur | 2018-08-04 | 1 | -4/+17 |
| | |||||
* | util.pubsub: Add support for a config validation function | Matthew Wild | 2018-08-01 | 1 | -0/+7 |
| | |||||
* | util.pubsub: Support for returning *all* subscriptions | Kim Alvefur | 2018-07-13 | 1 | -21/+31 |
| | |||||
* | util.pubsub: Return error code known by pubsub.lib if persistent creation fails | Kim Alvefur | 2018-07-01 | 1 | -1/+1 |
| | |||||
* | util.pubsub: Store subscription changes | Kim Alvefur | 2018-07-01 | 1 | -0/+22 |
| | |||||
* | util.pubsub: Persistence on affiliation change | Kim Alvefur | 2018-07-01 | 1 | -0/+10 |
| | |||||
* | util.pubsub: Remove node from persistent storage on deletion | Kim Alvefur | 2018-07-01 | 1 | -0/+13 |
| | |||||
* | util.pubsub: Persist nodes on configuration change | Kim Alvefur | 2018-07-01 | 1 | -5/+14 |
| | |||||
* | util.pubsub: Fix applying per service node defaults when loading from nodestore | Kim Alvefur | 2018-07-01 | 1 | -7/+7 |
| | |||||
* | util.pubsub: Fix typo | Kim Alvefur | 2018-06-26 | 1 | -1/+1 |
| | |||||
* | util.pubsub: Normalize JID used as affiliation | Kim Alvefur | 2018-06-26 | 1 | -0/+1 |
| | | | | | XEP-0060 4.1 Affiliations > All affiliations MUST be based on a bare JID | ||||
* | util.pubsub: Also check for affiliation set on bare JID | Kim Alvefur | 2018-05-22 | 1 | -1/+2 |
| | | | | | This fixes eg publishing from a full JID when the affiliation has been set on the bare JID, as would be common in XMPP. | ||||
* | util.pubsub: Pass node and service objects to broadcaster to allow eg config ↵ | Kim Alvefur | 2018-05-21 | 1 | -4/+4 |
| | | | | access | ||||
* | util.pubsub: Add a default/fallback JID normalization function | Kim Alvefur | 2018-05-20 | 1 | -0/+1 |
| | |||||
* | util.pubsub: Don't record the superuser as owner on creation | Kim Alvefur | 2018-05-20 | 1 | -6/+8 |
| | | | | | | No need to be set as owner, it has all privileges anyways. Since it’s a boolean instead of a string, its presence may cause weirdness in other code expecting all affiliations to be string JIDs. | ||||
* | util.pubsub: Allow setting a callback for validating items to be published | Kim Alvefur | 2018-03-21 | 1 | -0/+4 |
| | |||||
* | util.pubsub: Support a 'nodestore' for persisting nodes (same API as kv stores) | Matthew Wild | 2018-02-02 | 1 | -1/+41 |
| | |||||
* | util.pubsub: Move service methods object creation (just code reorganisation) | Matthew Wild | 2018-02-02 | 1 | -2/+6 |
| | |||||
* | util.pubsub: For clarity, split config tables from their metatables | Matthew Wild | 2018-02-01 | 1 | -6/+9 |
| | |||||
* | util.pubsub: Recreate itemstore if persist_items changes or resize it if ↵ | Kim Alvefur | 2017-11-09 | 1 | -7/+7 |
| | | | | max_items changes | ||||
* | util: Various minor changes to please [luacheck] | Kim Alvefur | 2017-11-10 | 1 | -12/+0 |
| | |||||
* | util.pubsub: Add method for retreiving the last item (useful for sending on ↵ | Kim Alvefur | 2017-11-07 | 1 | -0/+9 |
| | | | | subscribe) | ||||
* | util.pubsub: Return an empty list if specific item asked for does not exist ↵ | Kim Alvefur | 2017-10-18 | 1 | -1/+1 |
| | | | | (thanks jonasw) | ||||
* | pubsub: Distinguish internal representation of node config from XEP-0060 ↵ | Kim Alvefur | 2017-10-17 | 1 | -2/+3 |
| | | | | form (util.pubsub should be protocol-agnostic) | ||||
* | util.pubsub: Remove inclusion of publisher | Kim Alvefur | 2017-10-16 | 1 | -3/+0 |
| | | | | | util.pubsub should stay agnostic of what data types are published and this depended on util.stanza | ||||
* | util.pubsub: Return item-not-found if a single item is requested, and not there | Kim Alvefur | 2017-10-10 | 1 | -1/+5 |
| | |||||
* | util.pubsub: Clear data on node deletion | Kim Alvefur | 2017-10-09 | 1 | -0/+3 |
| | |||||
* | util.pubsub: Clear data store if it supports being cleared, otherwise fall ↵ | Kim Alvefur | 2017-10-08 | 1 | -1/+5 |
| | | | | back to creating a new one | ||||
* | util.pubsub: Don't record publisher when superuser privileges are used (eg ↵ | Kim Alvefur | 2017-07-29 | 1 | -1/+3 |
| | | | | by modules) | ||||
* | util.pubsub: Catch overriden id from storage | Kim Alvefur | 2017-04-26 | 1 | -0/+1 |
| | |||||
* | util.pubsub: Add the publisher as an attribute in the item element. | Emmanuel Gil Peyrot | 2017-04-02 | 1 | -0/+1 |
| | | | | | This makes the backend able to obtain the publisher without changing the API. | ||||
* | util.pubsub: Add a node parameter to itemstore(). | Emmanuel Gil Peyrot | 2017-04-02 | 1 | -4/+4 |
| | | | | | This allows the backend to know the node name, when it needs to differentiate it at storage for example. |