aboutsummaryrefslogtreecommitdiffstats
path: root/util/stanza.lua
Commit message (Collapse)AuthorAgeFilesLines
* util.stanza: Move misplaced argument to correct placeKim Alvefur2020-12-241-2/+2
| | | | | valid_utf8() takes only one argument, so the false was probably meant to be valid_xml_cdata(text, attribute=false)
* util.stanza: Reject ASCII control characters (fixes #1606)Kim Alvefur2020-11-111-1/+9
|
* util.stanza: Deserialize stanza without mutating input (fixes #711)Kim Alvefur2018-12-011-27/+17
|
* util.stanza: Validate input to clone() (with brief tests)Kim Alvefur2018-11-171-2/+9
|
* util.stanza: Set preserialize as freeze metamethodKim Alvefur2018-10-121-0/+2
|
* util.stanza: Don't automatically generate ids for iq stanzasMatthew Wild2018-09-131-9/+4
| | | | | | | | | | Users of this API should provide their own id attribute that meets their uniqueness requirements. The current implementation leaks information (i.e. how many iq stanzas have been sent by the server to other JIDs). Providing any strong guarantees of randomness here would need to pull in additional dependencies that we don't want in this simple library.
* util.stanza + tests: Bail out of loop if we are iterating too far, fixes #981Matthew Wild2018-08-191-0/+6
|
* Merge 0.10->trunkKim Alvefur2018-07-081-0/+10
|\
| * util.stanza: Add method for removing all children with a specific name, xmlnsKim Alvefur2018-07-081-0/+10
| |
* | util.stanza: Remove redundant check from :text now done in :add_direct_childKim Alvefur2018-06-081-1/+0
| |
* | util.stanza: Verify that other objects added as children are valid stringsKim Alvefur2018-06-081-1/+4
| |
* | util.stanza: Verify that child tags added are really stanzas (closes #1165)Kim Alvefur2018-06-081-1/+1
| |
* | util.stanza: Add :text_tag(), a shortcut for adding nodes with textKim Alvefur2018-03-211-0/+4
| |
* | util.stanza: Allow :text(nil) and :text("") as harmless nopsMatthew Wild2018-03-211-3/+5
| |
* | util.stanza: Switch from asserts to if's, improve performance, errors and testsMatthew Wild2018-03-181-18/+32
| |
* | util.stanza: Add stricter validation for data passed to stanza builder APIMatthew Wild2018-03-161-0/+29
| |
* | vairious: Add annotation when an empty environment is set [luacheck]Kim Alvefur2018-02-281-0/+1
| |
* | util.stanza: Change __type to __name as this is used by Lua 5.3 in some ↵Kim Alvefur2018-02-161-1/+1
| | | | | | | | error reporting functions
* | util: Various minor changes to please [luacheck]Kim Alvefur2017-11-101-1/+7
| |
* | Merge 0.10->trunkKim Alvefur2016-12-021-0/+6
|\|
| * util.stanza: Add an is_stanza() function to check if an object is a stanzaKim Alvefur2016-11-281-0/+6
| |
* | Merge 0.10->trunkMatthew Wild2016-03-091-21/+20
|\|
| * util.stanza: Some code cleanup [luacheck]Matthew Wild2016-03-091-21/+20
| |
* | util.stanza, util.xml, util.xmppstream: Add support for tracking defined ↵Matthew Wild2015-12-081-5/+10
|/ | | | namespaces and their prefix (stanza.namespaces), knowing/preserving prefix names is required for some applications (thanks daurnimator)
* util.stanza: Export xml_escape (missed during removal of module() calls)Kim Alvefur2015-09-031-0/+1
|
* util.*: Remove use of module() function, make all module functions local and ↵Kim Alvefur2015-02-211-36/+38
| | | | return them in a table at the end
* Merge 0.9->0.10Kim Alvefur2014-10-261-13/+2
|\
| * Backout changeset 6e67c73f730c: not a major fix and it breaks interop with ↵0.9.7Matthew Wild2014-10-241-13/+2
| | | | | | | | at least Isode M-Link, and possibly standards, while it's not clear it actually fixes the original problem either.
* | Merge 0.9->0.10Waqas Hussain2014-10-081-2/+13
|\|
| * util.stanza: Escape newlines and tabs (\r\n\t) when serializing stanzas. ↵Waqas Hussain2014-10-081-2/+13
| | | | | | | | \r\n transforms into \n otherwise, and \r\n\t in attributes transforms into spaces.
* | Remove all trailing whitespaceFlorian Zeitz2013-08-091-8/+8
|/
* util.stanza: Use correct index when replacing the tag in .tags (thanks ↵Matthew Wild2013-04-051-1/+1
| | | | daurnimator)
* util.stanza: Add stanza:find(), a light weight XPath-like methodKim Alvefur2013-04-041-0/+26
|
* util.stanza: :maptags(): Fixes to make loop more robust on item removalMatthew Wild2013-04-031-2/+4
|
* util.stanza: Use ipairs instead of childtags (behavior changed in 92c86e11fd44)Kim Alvefur2012-08-211-1/+1
|
* util.stanza: Make stanza:childtags() behave like :get_child()Kim Alvefur2012-07-051-2/+2
|
* util.stanza: Remove unused function importsMatthew Wild2012-04-281-6/+0
|
* util.stanza: Remove unused __add metamethodMatthew Wild2011-12-211-5/+0
|
* util.stanza: Remove childtags and rename matching_tags -> childtags (they ↵Matthew Wild2011-02-221-18/+9
| | | | are API-compatible)
* util.stanza: Rewrite clone() to be more optimized.Waqas Hussain2011-02-201-15/+12
|
* util.stanza: Make some globals local, so they don't clutter the global ↵Waqas Hussain2011-02-031-0/+2
| | | | checking script's output. It's also a minor optimization ;)
* util.stanza: Add get_child_text() method to get the text of the specified ↵Matthew Wild2011-01-311-0/+8
| | | | child element (get_child() + get_text() rolled into one step)
* util.stanza: Iterate on childtags instead of all childs.Kim Alvefur2010-12-171-1/+1
|
* util.stanza: Change get_error() to return nil rather than '' for no textMatthew Wild2010-12-111-1/+1
|
* util.stanza, util.xmppstream, core.xmlhandlers: Allow stanza.last_add to be ↵Waqas Hussain2010-11-261-13/+12
| | | | nil, and set it nil by default. Saves a table allocation per-element. 20% faster stanza building.
* util.stanza: Make the current element <message> instead of <body> when body ↵Waqas Hussain2010-09-211-1/+1
| | | | text is passed to st.message().
* util.stanza: stanza:matched_children() -> stanza:matching_tags()Matthew Wild2010-08-301-1/+1
|
* util.stanza: Add stanza:maptags() to apply a function over child tags ↵Matthew Wild2010-08-301-0/+24
| | | | (return nil to remove tag from stanza)
* util.stanza: Optimisation, remove useless if...then in stanza:children() ↵Matthew Wild2010-08-291-2/+1
| | | | iterator
* util.stanza: Add stanza:matched_children(name, xmlns) [name suggestions welcome]Matthew Wild2010-08-291-0/+17
|