Hosts the markup for all XMPP Protocol Extensions.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
deps Convert deps to Unix style line endings Feb 23, 2017
inbox Merge commit 'refs/pull/698/head' of https://github.com/xsf/xeps Sep 3, 2018
resources Adapt XMPP logos in XEPs to the recent logo change Oct 6, 2017
texml-xsl Import the texml-related XSL files into this repository Sep 28, 2017
tools Add CSV generator tool Apr 5, 2018
.gitattributes Override Git to push Unix style line endings Feb 23, 2017
.gitignore Add PDF generation back to Makefile Jan 3, 2017
.travis.yml Build xeps container on CI Aug 18, 2017
Dockerfile Build refs for Docker image Feb 8, 2018
LICENSE.txt Update some copyright dates Jan 11, 2017
Makefile Document the `inbox-html` recipe Aug 30, 2018
README.md Remove references to GitHub Projects in README Sep 25, 2017
archive.sh Remove trailing whitespaces in every non-XEP file. Feb 17, 2017
checkdeadlinks.py checkdeadlinks: Move the main functionality into a separate function. Oct 3, 2016
dbupdate.py Remove trailing whitespaces in every non-XEP file. Feb 17, 2017
deferred.py Remove trailing whitespaces in every non-XEP file. Feb 17, 2017
examples.xsl Update some copyright dates Jan 11, 2017
fo.xsl corrections Oct 4, 2006
prettify.css Remove executable bit from CSS and JS files. Jan 15, 2017
prettify.js Remove executable bit from CSS and JS files. Jan 15, 2017
protopage.xsl Remove trailing whitespaces in every non-XEP file. Feb 17, 2017
protopagegen.sh 2009 to 2010 Jan 11, 2010
ref.xsl Update some copyright dates Jan 11, 2017
xep-0001.xml Fixed two typos (#505) Sep 4, 2017
xep-0002.xml XEP-0002: Fix minor DTD issues Nov 16, 2016
xep-0003.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0004.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0005.xml XEP-0005: Fix minor DTD issues Nov 16, 2016
xep-0006.xml Lots of DTD fixes Nov 27, 2016
xep-0007.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0008.xml Lots of DTD fixes Nov 27, 2016
xep-0009.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0010.xml Lots of DTD fixes Nov 27, 2016
xep-0011.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0012.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0013.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0014.xml Lots of DTD fixes Nov 27, 2016
xep-0015.xml Lots of DTD fixes Nov 27, 2016
xep-0016.xml XEP-0016: Deprecate May 20, 2017
xep-0017.xml Fix legal notice on old public domain XEPs Jan 4, 2017
xep-0018.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0019.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0020.xml XEP-0020: Deprecate Mar 7, 2018
xep-0021.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0022.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0023.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0024.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0025.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0026.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0027.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0028.xml corrected the date Feb 17, 2010
xep-0029.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0030.xml XEP-0030: add revision block for merged change from PR Oct 4, 2017
xep-0031.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0032.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0033.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0034.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0035.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0036.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0037.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0038.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0039.xml Fix DTD check for 0017–0058 Jan 1, 2017
xep-0040.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0041.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0042.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0043.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0044.xml Fix DTD check for 0017–0058 Jan 1, 2017
xep-0045.xml XEP-0045: Add implementation note about {jabberconference}x payload Jul 31, 2018
xep-0046.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0047.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0048.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0049.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0050.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0051.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0052.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0053.xml change states to match IANA / RFC 7595 Dec 7, 2016
xep-0054.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0055.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0056.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0057.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0058.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0059.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0060.xml XEP-0060: Release version 1.15.2. May 14, 2018
xep-0061.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0062.xml XEP-0061–XEP-097: DTD fixes Jan 2, 2017
xep-0063.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0064.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0065.xml XEP-0065: Remove duplicate example Jun 7, 2017
xep-0066.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0067.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0068.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0069.xml XEP-0061–XEP-097: DTD fixes Jan 2, 2017
xep-0070.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0071.xml XEP-0071: Deprecate instead of Obsolete Mar 8, 2018
xep-0072.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0073.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0074.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0075.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0076.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0077.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0078.xml Fix references to RFC 3629 Mar 17, 2017
xep-0079.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0080.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0081.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0082.xml clarify CCYY is expected to be four digits, even though XML Schema al… Aug 13, 2015
xep-0083.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0084.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0085.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0086.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0087.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0088.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0089.xml Fix several DTD issues Dec 26, 2016
xep-0090.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0091.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0092.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0093.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0094.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0095.xml XEP-0095, XEP-0096: actually change status to Deprecated Nov 29, 2017
xep-0096.xml XEP-0095, XEP-0096: actually change status to Deprecated Nov 29, 2017
xep-0097.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0098.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0099.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0100.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0101.xml XEP-0101–XEP-0185: Fix DTD Jan 2, 2017
xep-0102.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0103.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0104.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0105.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0106.xml XEP-0101–XEP-0185: Fix DTD Jan 2, 2017
xep-0107.xml XEP-0107: Change the namespace of a private example Mar 13, 2018
xep-0108.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0109.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0110.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0111.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0112.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0113.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0114.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0115.xml Fix references to RFC 3629 Mar 17, 2017
xep-0116.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0117.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0118.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0119.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0120.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0121.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0122.xml Merge commit 'refs/pull/613/head' of https://github.com/xsf/xeps Apr 26, 2018
xep-0123.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0124.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0125.xml XEP-0101–XEP-0185: Fix DTD Jan 2, 2017
xep-0126.xml XEP-0126: Deprecated by vote of the council Jan 13, 2018
xep-0127.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0128.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0129.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0130.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0131.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0132.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0133.xml 0133: fix broken node in example Jul 15, 2017
xep-0134.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0135.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0136.xml XEP-0136: advance status to Deprecated. Nov 15, 2017
xep-0137.xml XEP-0137: deprecated by the council Feb 28, 2018
xep-0138.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0139.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0140.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0141.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0142.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0143.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0144.xml XEP-0144: Add revision block Nov 28, 2017
xep-0145.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0146.xml XEP-0146: obsolete per vote of the council Nov 7, 2017
xep-0147.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0148.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0149.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0150.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0151.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0152.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0153.xml XEP-0153: Clarify encoding of update hash Feb 26, 2018
xep-0154.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0155.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0156.xml XEP-0156, XEP-0365: Release a new patch release. Jul 22, 2018
xep-0157.xml XEP-0157: add revision block Jul 21, 2018
xep-0158.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0159.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0160.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0161.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0162.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0163.xml XEP-0163: add version block Mar 18, 2018
xep-0164.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0165.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0166.xml XEP-0095, XEP-0096: Deprecate Nov 29, 2017
xep-0167.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0168.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0169.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0170.xml clarified potential DoS attack Sep 8, 2009
xep-0171.xml XEP-0101–XEP-0185: Fix DTD Jan 2, 2017
xep-0172.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0173.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0174.xml XEP-0174 Add revision block 2.0.1 Feb 8, 2018
xep-0175.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0176.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0177.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0178.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0179.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0180.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0181.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0182.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0183.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0184.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0185.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0186.xml XEP-0126: Deprecated by vote of the council Jan 13, 2018
xep-0187.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0188.xml XEP-0188: Fix DTD Jan 2, 2017
xep-0189.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0190.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0191.xml XEP-0016: Deprecate May 20, 2017
xep-0192.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0193.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0194.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0195.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0196.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0197.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0198.xml Merge commit 'refs/pull/677/head' of https://github.com/xsf/xeps Jul 30, 2018
xep-0199.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0200.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0201.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0202.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0203.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0204.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0205.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0206.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0207.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0208.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0209.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0210.xml Fix several DTD issues Dec 26, 2016
xep-0211.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0212.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0213.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0214.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0215.xml XEP-0215: Fixed typo (SHUOLD -> SHOULD) Dec 15, 2017
xep-0216.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0217.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0218.xml Deferred May 31, 2008
xep-0219.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0220.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0221.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0222.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0223.xml XEP-0223: Add a warning about publish-options support Mar 28, 2018
xep-0224.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0225.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0226.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0227.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0228.xml typo Apr 5, 2009
xep-0229.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0230.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0231.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0232.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0233.xml XEP-0233: Move to draft Mar 16, 2017
xep-0234.xml XEP-0234: Issue LC Nov 29, 2017
xep-0235.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0236.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0237.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0238.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0239.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0240.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0241.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0242.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0243.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0244.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0245.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0246.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0247.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0248.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0249.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0250.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0251.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0252.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0253.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0254.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0255.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0256.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0257.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0258.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0259.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0260.xml XEP-0260: Release a new patch version. May 4, 2018
xep-0261.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0262.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0263.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0264.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0265.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0266.xml 1.1rc1 Mar 1, 2013
xep-0267.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0268.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0269.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0270.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0271.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0272.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0273.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0274.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0275.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0276.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0277.xml XEP-0277: Add revision block Nov 28, 2017
xep-0278.xml XEP-0278: fix incorrect version number Sep 16, 2017
xep-0279.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0280.xml XEP-0280: move end date since I forogt to send the email Feb 8, 2018
xep-0281.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0282.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0283.xml XEP—0283: add revision block Aug 6, 2018
xep-0284.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0285.xml Fix references to RFC 3629 Mar 17, 2017
xep-0286.xml XEP-0286: Move to Active Jan 25, 2018
xep-0287.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0288.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0289.xml XEP-0281, XEP-0289: Add forgotten superseding relation. Jan 28, 2017
xep-0290.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0291.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0292.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0293.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0294.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0295.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0296.xml XEP-0204–XEP-0298: DTD fixes Jan 2, 2017
xep-0297.xml XEP-0297: Fix indentation in examples. Feb 26, 2017
xep-0298.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0299.xml automatically deferred Jul 5, 2012
xep-0300.xml XEP-0300: Address feedback from PSA Feb 14, 2018
xep-0301.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0302.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0303.xml XEP-0300–XEP-0378: Fix DTD issues Jan 1, 2017
xep-0304.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0305.xml XEP-0156, XEP-0365: Update the XMPP over WebSocket to the published RFC. Jul 22, 2018
xep-0306.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0307.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0308.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0309.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0310.xml XEP-0300–XEP-0378: Fix DTD issues Jan 1, 2017
xep-0311.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0312.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0313.xml Tweak the 'complete' wording to reflect intent Jul 16, 2018
xep-0314.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0315.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0316.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0317.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0318.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0319.xml Merge branch 'xep-0319' of https://github.com/linkmauve/xeps into fea… Sep 15, 2017
xep-0320.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0321.xml XEP-0321: more editing in response to discussion on #476 Aug 24, 2017
xep-0322.xml XEP-0322: deferred due to lack of activity Jan 25, 2018
xep-0323.xml Bump revision on IoT XEPs (fix retraction) May 20, 2017
xep-0324.xml Bump revision on IoT XEPs (fix retraction) May 20, 2017
xep-0325.xml Bump revision on IoT XEPs (fix retraction) May 20, 2017
xep-0326.xml Bump revision on IoT XEPs (fix retraction) May 20, 2017
xep-0327.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0328.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0329.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0330.xml Defers many old XEPs Jan 18, 2017
xep-0331.xml Convert line endings to Unix style Feb 23, 2017
xep-0332.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0333.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0334.xml Fix a typo in XEP-0334 May 26, 2018
xep-0335.xml Remove spaces at the end of CDATA blocks in all XEPs. Feb 17, 2017
xep-0336.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0337.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0338.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0339.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0340.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0341.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0342.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0343.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0344.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0345.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0346.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0347.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0348.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0349.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0350.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0351.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0352.xml XEP-0352: Re-issue last call Dec 7, 2017
xep-0353.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0354.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0355.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0356.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0357.xml XEP-357: add missing word "from" Jun 5, 2018
xep-0358.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0359.xml XEP-0359: clarifications and removed 'overwrite' wording Aug 26, 2017
xep-0360.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0361.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0362.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0363.xml XEP-0363: fix last call date after botched announcement mail Jun 4, 2018
xep-0364.xml XEP-0364: deferred after 12 months of inactivity Feb 7, 2018
xep-0365.xml XEP-0156, XEP-0365: Release a new patch release. Jul 22, 2018
xep-0366.xml XEP-0366: defer after 12 months of inactivity Jan 18, 2018
xep-0367.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0368.xml XEP-0368: Advance to draft Mar 9, 2017
xep-0369.xml Add join Jun 6, 2018
xep-0370.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0371.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0372.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0373.xml XEP-0373: add revision block Jul 30, 2018
xep-0374.xml XEP-0374: Fix typo Apr 18, 2018
xep-0375.xml Remove all trailing whitespace from every XEP. Feb 17, 2017
xep-0376.xml XEP-0286, XEP-0376: Fix contact info for Dave Cridland Oct 31, 2017
xep-0377.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0378.xml Mass-defer 36 XEPs Sep 11, 2017
xep-0379.xml XEP-0379: add version block Mar 6, 2018
xep-0380.xml XEP-0380: deferred due to lack of activity Jan 25, 2018
xep-0381.xml XEP-0381: Issue LC Feb 28, 2017
xep-0382.xml XEP-0382: deferred due to lack of activity Jan 25, 2018
xep-0383.xml XEP-0383: defer after 12 months of inactivity Jan 29, 2018
xep-0384.xml Fix a typo in XEP-0384: replace "seperately" with "separately" Jun 10, 2018
xep-0385.xml XEP-0385: Fix typos Apr 9, 2018
xep-0386.xml XEP-0386: deferred due to lack of activity Feb 8, 2018
xep-0387.xml XEP-0387: Move to draft Jan 25, 2018
xep-0388.xml XEP-0388 SASL2: Avoid superfluous whitespaces in Example 1-3 Oct 6, 2017
xep-0389.xml Publish SASL2 and IBR2 as XEP-0388 and XEP-0389 Mar 16, 2017
xep-0390.xml Add &jonaswielicki; entity to xep.ent Jan 23, 2018
xep-0391.xml Fix typo: TI -> IV Jul 31, 2018
xep-0392.xml XEP-0392: Fix a typo (thanks zinid) Jul 28, 2018
xep-0393.xml XEP-0393: clarify language around strong emphasis May 2, 2018
xep-0394.xml Add &jonaswielicki; entity to xep.ent Jan 23, 2018
xep-0395.xml XEP-0395: accept inbox/cap.xml as Experimental Nov 29, 2017
xep-0396.xml Fix typos in XEP-0396 Dec 29, 2017
xep-0397.xml Accept isr-sasl2 as XEP-0397 Jan 22, 2018
xep-0398.xml Fix spelling mistakes and revision block formatting Aug 30, 2018
xep-0399.xml Accept inbox/client-key.xml as XEP-0399 Jan 25, 2018
xep-0400.xml Accept inbox/totp-2fa.xml as XEP-0400 Jan 25, 2018
xep-0401.xml Typo in example 5 title May 23, 2018
xep-0402.xml XEP-0402: Release version 0.2.1. Jul 22, 2018
xep-0403.xml Editorial Jun 6, 2018
xep-0404.xml XEP-0404: fix revision block Jul 5, 2018
xep-0405.xml Add blocking section Jun 6, 2018
xep-0406.xml Add mandatory Nick option Jun 6, 2018
xep-0407.xml Inter-link MIX XEPs May 22, 2018
xep-0408.xml Inter-link MIX XEPs May 22, 2018
xep-0409.xml Accept inbox/im-ng.xml as XEP-0409 Jun 5, 2018
xep-0410.xml Accept inbox/muc-selfping.xml as XEP-0410 Aug 31, 2018
xep-README.xml Tweak XEP editor readme to mention Docker Jul 19, 2017
xep-template.xml Reduce legal notice in template to XML entity May 21, 2016
xep.dtd Extend DTD with more HTML subset Nov 7, 2017
xep.ent Inter-link MIX XEPs May 22, 2018
xep.xsd Remove trailing whitespaces in every non-XEP file. Feb 17, 2017
xep.xsl Fix copyright statement year Jul 31, 2018
xep2texml.xsl Import the texml-related XSL files into this repository Sep 28, 2017
xepinfo.py Remove trailing whitespaces in every non-XEP file. Feb 17, 2017
xeputil.py Remove trailing whitespaces in every non-XEP file. Feb 17, 2017
xmpp.css Hide overflow (with scroll) on long code blocks Sep 21, 2017

README.md

Docker Build Status Build Status

XMPP Extension Protocols (XEPs)

This repository is used to manage work on XMPP Extension Protocols (XEPs), which are the specifications produced by the XMPP Standards Foundation (XSF). See http://xmpp.org/ for details. The rendered documents can be found here:

https://xmpp.org/extensions/

Please use this repository to raise issues and submit pull requests:

https://github.com/xsf/xeps/issues https://github.com/xsf/xeps/pulls

For in-depth technical discussion, please post to the standards@xmpp.org email list:

http://mail.jabber.org/mailman/listinfo/standards

To submit a new proposal for consideration as a XEP, please read this page:

https://xmpp.org/about/standards-process.html#submitting-a-xep

XEP-0001: XMPP Extension Protocols defines the standards process followed by the XMPP Standards Foundation.

Building XEPs

To build a single XEP as HTML simply run:

make xep-xxxx.html

To build PDFs, you'll need to install TeXML (probably in a Python 2 virtual environment). You can then build PDFs with:

make xep-xxxx.pdf

To change the output directory, set the variable OUTDIR, eg.

OUTDIR=/tmp/xeps make all

For more information try make help.

Using Docker

A full set of HTML and PDFs can be generated inside a docker container, with no dependencies on the host other than Docker itself, and served by nginx in the container. To build the template make docker, to run it make testdocker (serves on http://localhost:3080), and to stop/delete it afterwards make stopdocker

Gardening (Issue triaging by non-editors)

For new PRs, anyone with permission may perform gardening tasks. The Go wiki sumarizes "gardening" as:

the background maintenance tasks done to keep the project healthy & growing & nice looking.

In this repo, gardening is mostly triaging issues. An issue is considered triaged when an editor has been assigned to it. Untriaged issues that are in need of attention can be found using the following filter: is:open is:pr no:assignee

To triage new issues or PRs:

  • Is the issue a duplicate? Close it (referencing the original issue).
  • Is the issue a question and not an issue? Close it, pointing them at the mailing list or chat room.
  • Is the PR a new ProtoXEP? Add the "ProtoXEP" label and ensure that the file is in the "inbox/" tree and does not start with "xep-" (if not, leave a comment asking for it to be moved).
  • Is the issue a specific change to an existing XEP or a few XEPs (eg. not whitespace changes to many XEPs, use your judgement)? Make sure the title starts with "XEP-XXXX:" or "XEP-XXXX, XEP-YYYY:".
  • Finally, assign an editor (pick one at random, or pick the one with the least issues already assigned to them; we may re-assign it later so don't feel bad). The list of active editors can be found here: https://xmpp.org/about/xsf/editor-team

Editor

The XMPP Extensions Editor (or, for short, XEP Editor) manages the XMPP extensions process as defined in XMPP Extension Protocols (XEP-0001). In addition, the XEP Editor functions as the XMPP Registrar as defined in XMPP Registrar Function (XEP-0053). Read those documents first, since this README focuses on mechanics instead of philosophy or policy.

All PRs

For all PRs, start by ensuring that the IP release has been signed and that CI has run and no issues were detected before merging.

Triaging a PR

If the PR is not touching a XEP, this guide does not apply. If the PR touches multiple XEPs, go through the steps for each XEP and exit at the first which applies.

  1. Is the PR a ProtoXEP?

    1. Does the PR touch existing XEPs? Close as [invalid] and ask the Opener to split the two things.

    2. Add the ProtoXEP and Ready to Merge labels.

    3. Stop.

  2. Are the changes for all XEPs purely editorial?

    1. Add the Editorial Change and Ready to Merge labels.
    2. Stop.
  3. Is the XEP not in Experimental state?

    (Changes to Non—Experimental XEPs need approval by the approving body as defined in the XEP file itself.)

    1. Add the Needs Council/Needs Board label.
    2. Put the PR in the Council Trello project.
    3. Stop.
  4. Is the XEP in Experimental state and the PR opener is not an author of the XEP?

    1. If the issue has not been discussed on the standards list or if the authors have not been involved in the discussion:

      1. Make sure the standards@ discussion (if it exists) is linked in the PR.
      2. Add the Needs Author label.
      3. Put the PR in the Editor Trello project.
      4. Stop.
  5. Mark the PR as Ready to Merge.

Discussions

Technical discussions SHOULD NOT happen in the xeps repository. If you see a discussion evolve into technical (as opposed to editorial) matters, do the following (I haven’t tried that myself yet, so feel especially free to improve the process):

  1. Lock the conversation.

  2. Copy the technical discussion parts into an email to standards@. My preferred format for this would be something along the lines of:

     Subject: XEP-1234: [insert PR subject here, or something more appropriate]
    
     There was some discussion on the xeps repository an XEP-1234, which got
     technical. I moved this discussion to standards@ so that the whole
     community is aware of the issue and can participate.
    
     @user1 wrote:
     > quote user1 here ...
    
     @user2 wrote:
     > quote user2 here ...
    

    Remove clearly editorial discussion and mark the removal with […].

  3. Add the Needs List Discussion label to the PR and link the standards@ thread you just created. Remove other labels (such as Needs Author).

  4. Monitor the thread; when the discussion is resolved, the PR opener will usually prepare an update. Unlock the conversation to allow editorial discussion to continue, if needed. Remove the Needs List Discussion label and re-triage the PR as described above.

    Note: The locking is mostly used here as a tool to avoid a race condition, not to exclude people from participating. (It would be unfortunate if you had to add more comments to your already-sent email.) Feel free to unlock at some point during the list discussion when you’re sure that all participants have taken note of the move.

General notes on making changes

This section has some hints on the python scripts which help you doing the more tedious tasks of sending emails and properly archiving XEPs.

Before you start working on merging a Pull Request:

  • Ideally, you have the xep-attic repository cloned next to the xeps repository.

  • Before starting to prepare a merge and push, ensure that you have the XEP metadata up-to-date locally:

      $ make build/xeplist.xml
    
  • Make a copy of the metadata:

      $ cp build/xeplist.xml tools/old-xeplist.xml
    

    (avoid putting random XML files in the xeps root directory, the build tooling might mistake them as XEPs; so we put it somewhere else.)

While you’re working on a Pull Request:

  • Use the lokal docker build to ensure that everything is syntactically correct. The process is described above in "Using Docker".

When you have merged the Pull Request and the change went through to the webserver (see also the Docker Build to track the build progress):

  • Send out the emails. First ensure that the new metadata is up-to-date:

      $ make build/xeplist.xml
    

    Check that the emails which will be sent are correct (the --dry-run switch prevents the tool from actually sending emails):

      $ ./tools/send-updates.py --dry-run tools/old-xeplist.xml build/xeplist.xml standards@xmpp.org
    

    (See also the --help output for more information.)

    Once you’ve verified that the correct emails will be sent, actually send them using (note the missing --dry-run flag):

      $ ./tools/send-updates.py tools/old-xeplist.xml build/xeplist.xml standards@xmpp.org
    

    A few tips:

    1. You can also test-send them to your own address by replacing standards@xmpp.org with your own address.
    2. To avoid having to enter your email account details every time, use a configuration file. Invoke the tool with --help for more information and ask jonasw/@horazont if things are still unclear.

    If the tool misbehaves, pester jonasw/@horazont about it.

  • Don’t forget to archive the new versions of the XEPs. If you have the xep-attic cloned next to the xeps repository, you can simply run:

      $ ./tools/archive.py tools/old-xeplist.xml build/xeplist.xml
    

    Otherwise, you will have to explicitly give the path to the attic:

      $ ./tools/archive.py --attic /path/to/xep-attic/content/ tools/old-xeplist.xml build/xeplist.xml
    

    (note that the path must point to the content subdirectory of the xep-attic.)

    Don’t forget to commit & push the changes to xep-attic.

New ProtoXEPs

  • Make sure the protoxep is in the inbox/ tree and has a name that does not start with "xep-" (you may change this or ask the author to change it).
  • Make sure the version is 0.0.1 and the status is ProtoXEP (you may fix this or ask the author to fix it).
  • You may want to build the protoxep locally and ensure the HTML and PDF look okay.
  • Merge the PR as described in "Merging a PR". Once the email has been sent, continue here.
  • Create a card for the protoxep on the Council Trello under "Proposed Agendums".
  • Attach the PR to the card and link the generated HTML.
  • Comment on the PR with a link to the card, thanking the author for their submission and letting them know that their XEP will be voted on within the next two weeks.
  • If the council forgets and doesn't vote on the protoxep, pester them until they do.
  • If the council rejects the XEP, you're done (leave the XEP in the inbox and inform the author of the councils decision). Otherwise, see "Promoting a ProtoXEP".

Promoting a ProtoXEP

  • It is easiest to start a new branch, in case you screw something up on the way.
  • Once the council approves a ProtoXEP, copy it out of the inbox and into the root, assigning it the next available number in the XEP series.
  • Modify the <number/> element in the XML file to match.
  • Set the version to 0.1 and the initials to XEP Editor: xyz (replacing "xyz" with your own initials).
  • Remove the <interim/> element from the XML file if it is included.
  • Set the status to Experimental.
  • Add a reference to the XEP in xep.ent.
  • Make a commit.
  • Treat your branch as you would treat a Ready to Merge PR in "Merging a PR". (you don’t need to create another branch though.)

Promoting XEPs

Ensure that the following sections exist (if not, ask the author to add them before promoting the XEP):

  • Security Considerations
  • IANA Considerations
  • XMPP Registrar Considerations
  • XML Schema (for protocol specifications)

You can also refer to xep-template.xml for a recommended list of sections and whether or not they are required. For a helpful graph of how XEP promotion works, see XEP-0001.

Deferring XEPs

Before Deferring XEPs, read the "General notes on making changes" section.

XEPs get deferred after 12 months of inactivity. There is a tool which handles that process automatically, if it is invoked regularly.

First of all, you need an up-to-date xeplist.xml:

make build/xeplist.xml

To get a list of XEPs which need to be deferred (without changing anything), run:

./tools/deferrals.py -v

To apply the deferrals, make a new feature branch and execute:

./tools/deferrals.py -m 'initials'

where you replace initials with your editor initials so that it is obvious who made the change (those initials will be used in the revision block).

This will modify the XEPs in-place. It uses heuristics for incrementing the version number, finding and inserting the revision block as well as changing the status. Yes, it involves regular expressions (because we don’t want to fully re-write the XML to keep the diffs minimal). It is thus vital that you use git diff to ensure that the changes are sane. If the changes are sane, make a commit and merge to master as described in "Merging a PR", in accordance with the "General notes on making changes".

Merging a PR

Before Merging a PR, read the "General notes on making changes" section.

When you get to the point that the PR is Ready to Merge, do the following:

  1. Create a new branch off master called feature/xep-1234 (if the PR touches multiple XEPs, I call it feature/xep-0678,xep-0789).

  2. Merge all Ready to Merge PRs which affect the XEP(s) into that branch.

  3. Resolve conflicts.

  4. If the PRs introduced multiple revision blocks, squash it down to a single revision block. Set "XEP Editor (initials)" as author of the revision block and add the initials of the original PR authors to the changelog entries. (If that doesn’t make sense to you, you’ll find plenty examples in the XEPs.)

  5. Ensure that everything builds by performing a full docker build (see above).

    (Once the docker build reaches the point where the XEPs are built, you can switch branches and work on another PR.)

  6. If the build passes, check that the generated files look sane by running the docker container.

  7. Merge the PR into master. If you are working on independent changes to multiple XEPs, you can merge them all in one go.

  8. If you merged multiple things into master, re-do the docker build check.

  9. Push.

  10. Go back to "General notes on making changes".