The branch, frodo has been updated
via 685a4456688606198fdede95ec5f8206194b9a52 (commit)
from 62244496b8e6e60ab00c559b32363aadafc378dc (commit)
- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/scripts;a=commit;h=685a4456688606198fdede95ec5f8206194b9a52
commit 685a4456688606198fdede95ec5f8206194b9a52
Author: Martijn Kaijser <[email protected]>
Date: Wed May 21 08:17:36 2014 +0200
[script.module.xmltodict] 0.9.0
diff --git a/script.module.xmltodict/README.md
b/script.module.xmltodict/README.md
index 539e8fc..20a7cd5 100644
--- a/script.module.xmltodict/README.md
+++ b/script.module.xmltodict/README.md
@@ -127,17 +127,17 @@ You can also convert in the other direction, using the
`unparse()` method:
```python
>>> mydict = {
-... 'page': {
-... 'title': 'King Crimson',
-... 'ns': 0,
-... 'revision': {
-... 'id': 547909091,
-... }
+... 'response': {
+... 'status': 'good',
+... 'last_updated': '2014-02-16T23:10:12Z',
... }
... }
->>> print unparse(mydict)
+>>> print unparse(mydict, pretty=True)
<?xml version="1.0" encoding="utf-8"?>
-<page><ns>0</ns><revision><id>547909091</id></revision><title>King
Crimson</title></page>
+<response>
+ <status>good</status>
+ <last_updated>2014-02-16T23:10:12Z</last_updated>
+</response>
```
## Ok, how do I get it?
diff --git a/script.module.xmltodict/addon.xml
b/script.module.xmltodict/addon.xml
index 0058a33..acef151 100644
--- a/script.module.xmltodict/addon.xml
+++ b/script.module.xmltodict/addon.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<addon id="script.module.xmltodict" name="xmltodict" version="0.8.6"
provider-name="martinblech">
+<addon id="script.module.xmltodict" name="xmltodict" version="0.9.0"
provider-name="martinblech">
<requires>
<import addon="xbmc.python" version="2.1.0"/>
</requires>
@@ -7,7 +7,7 @@
<extension point="xbmc.addon.metadata">
<language></language>
<summary lang="en">Python helper module</summary>
- <description lang="en">xmltodict is a Python module that makes working
with XML feel like you are working with JSON, as in this "spec".[CR]Original:
https://github.com/martinblech/xmltodict[CR]Author:
[email protected]</description>
+ <description lang="en">xmltodict is a Python module that makes working
with XML feel like you are working with JSON, as in this
"spec".[CR]</description>
<license>MIT</license>
<platform>all</platform>
<website>https://github.com/martinblech/xmltodict</website>
diff --git a/script.module.xmltodict/changelog.txt
b/script.module.xmltodict/changelog.txt
index ba36fff..577d54a 100644
--- a/script.module.xmltodict/changelog.txt
+++ b/script.module.xmltodict/changelog.txt
@@ -1,10 +1,176 @@
+CHANGELOG
+=========
+
+v0.9.0
+------
+
+* Added CHANGELOG.md
+* Avoid ternary operator in call to ParserCreate().
+* Adding Python 3.4 to Tox test environment.
+* Added full_document flag to unparse (default=True).
+
+v0.8.7
+------
+
+* Merge pull request #56 from HansWeltar/master
+* Improve performance for large files
+* Updated README unparse example with pretty=True.
+
v0.8.6
-- update to 0.8.6
+------
+
+* Fixed extra newlines in pretty print mode.
+* Fixed all flake8 warnings.
+
+v0.8.5
+------
+
+* Added Tox config.
+* Let expat figure out the doc encoding.
+
+v0.8.4
+------
+
+* Fixed Jython TravisCI build.
+* Moved nose and coverage to tests_require.
+* Dropping python 2.5 from travis.yml.
+
+v0.8.3
+------
+
+* Use system setuptools if available.
+
+v0.8.2
+------
+
+* Switch to latest setuptools.
+
+v0.8.1
+------
+
+* Include distribute_setup.py in MANIFEST.in
+* Updated package classifiers (python versions, PyPy, Jython).
+
+v0.8.0
+------
+
+* Merge pull request #40 from martinblech/jython-support
+* Adding Jython support.
+* Fix streaming example callback (must return True)
+
+v0.7.0
+------
+
+* Merge pull request #35 from martinblech/namespace-support
+* Adding support for XML namespaces.
+* Merge pull request #33 from bgilb/master
+* fixes whitespace style
+* changes module import syntax and assertRaises
+* adds unittest assertRaises
+
+v0.6.0
+------
+
+* Merge pull request #31 from martinblech/document-unparse
+* Adding documentation for unparse()
+* Merge pull request #30 from martinblech/prettyprint
+* Adding support for pretty print in unparse()
+
+v0.5.1
+------
+
+* Merge pull request #29 from dusual/master
+* ordereddict import for less 2.6 if available
+
+v0.5.0
+------
+
+* Allow using alternate versions of `expat`.
+* Added shameless link to GitTip.
+* Merge pull request #20 from kevbo/master
+* Adds unparse example to README
+
+v0.4.6
+------
+
+* fix try/catch block for pypi (throws AttributeError instead of TypeError)
+* prevent encoding an already encoded string
+* removed unecessary try/catch for xml_input.encode(). check if file or
string, EAFP style. (thanks @turicas)
+
+v0.4.5
+------
+
+* test with python 3.3 too
+* avoid u'unicode' syntax (fails in python 3.2)
+* handle unicode input strings properly
+* add strip_whitespace option (default=True)
+* Merge pull request #16 from slestak/master
+* fix unittest
+* working with upstream to improve #15
+* remove pythonpath tweaks, change loc of #15 patch
+* upstream #15
+
+v0.4.4
+------
+
+* test attribute order roundtrip only if OrderedDict is available (python >=
2.7)
+* Merge branch 'master' of github.com:martinblech/xmltodict
+* preserve xml attribute order (fixes #13)
+
+v0.4.3
+------
+
+* fix #12: postprocess cdata items too
+* added info about official fedora package
+
+v0.4.2
+------
+
+* Merge pull request #11 from ralphbean/master
+* Include REAMDE, LICENSE, and tests in the distributed tarball.
+
+v0.4.1
+------
+
+* take all characters (no need to strip and filter)
+* fixed CLI (marshal only takes dict, not OrderedDict)
+* ignore MANIFEST
+
+v0.4
+----
+
+* #8 preprocessing callback in unparse()
+
+v0.3
+----
+
+* implemented postprocessor callback (#6)
+* update readme with install instructions
+
+v0.2
+----
-v0.7.0 (24.09.2013)
-- Sync with upstream
-- Commit: 594f431bc96bae27cda67deb49aea300111488bd
+* link to travis-ci build status
+* more complete info in setup.py (for uploading to PyPi)
+* coverage annotations for tricky py3k workarounds
+* py3k compatibility
+* removed unused __future__ print_function
+* using io.StringIO on py3k
+* removed unnecessary exception catching
+* initial travis-ci configuration
+* made _emit function private
+* unparse functionality
+* added tests
+* updated (c) notice to acknowledge individual contributors
+* added license information
+* fixed README
+* removed temp build directory and added a .gitignore to avoid that happening
again
+* Merge pull request #1 from scottscott/master
+* Added setup script to make xmltodict a Python module.
+* fixed bad handling of cdata in semistructured xml, changed _CDATA_ to #text
as default
+* added attr_prefix, cdata_key and force_cdata parameters
+* links in README
+* links in README
+* improved README
+* initial commit
-v0.2.0
-- Original: https://github.com/martinblech/xmltodict
-- Upstream: be842ee121072beb75b643881d8bed5f683cf2c5
\ No newline at end of file
diff --git a/script.module.xmltodict/lib/xmltodict.py
b/script.module.xmltodict/lib/xmltodict.py
index 41766a1..4fdbb16 100644
--- a/script.module.xmltodict/lib/xmltodict.py
+++ b/script.module.xmltodict/lib/xmltodict.py
@@ -29,7 +29,7 @@ except NameError: # pragma no cover
_unicode = str
__author__ = 'Martin Blech'
-__version__ = '0.8.6'
+__version__ = '0.9.0'
__license__ = 'MIT'
@@ -227,9 +227,11 @@ def parse(xml_input, encoding=None, expat=expat,
process_namespaces=False,
if not encoding:
encoding = 'utf-8'
xml_input = xml_input.encode(encoding)
+ if not process_namespaces:
+ namespace_separator = None
parser = expat.ParserCreate(
encoding,
- namespace_separator if process_namespaces else None
+ namespace_separator
)
try:
parser.ordered_attributes = True
@@ -239,6 +241,7 @@ def parse(xml_input, encoding=None, expat=expat,
process_namespaces=False,
parser.StartElementHandler = handler.startElement
parser.EndElementHandler = handler.endElement
parser.CharacterDataHandler = handler.characters
+ parser.buffer_text = True
try:
parser.ParseFile(xml_input)
except (TypeError, AttributeError):
@@ -299,7 +302,8 @@ def _emit(key, value, content_handler,
content_handler.ignorableWhitespace(newl)
-def unparse(input_dict, output=None, encoding='utf-8', **kwargs):
+def unparse(input_dict, output=None, encoding='utf-8', full_document=True,
+ **kwargs):
"""Emit an XML document for the given `input_dict` (reverse of `parse`).
The resulting XML document is returned as a string, but if `output` (a
@@ -320,9 +324,11 @@ def unparse(input_dict, output=None, encoding='utf-8',
**kwargs):
output = StringIO()
must_return = True
content_handler = XMLGenerator(output, encoding)
- content_handler.startDocument()
+ if full_document:
+ content_handler.startDocument()
_emit(key, value, content_handler, **kwargs)
- content_handler.endDocument()
+ if full_document:
+ content_handler.endDocument()
if must_return:
value = output.getvalue()
try: # pragma no cover
-----------------------------------------------------------------------
Summary of changes:
script.module.xmltodict/README.md | 16 ++--
script.module.xmltodict/addon.xml | 4 +-
script.module.xmltodict/changelog.txt | 180 ++++++++++++++++++++++++++++-
script.module.xmltodict/lib/setup.py | 37 ------
script.module.xmltodict/lib/xmltodict.py | 16 ++-
5 files changed, 194 insertions(+), 59 deletions(-)
delete mode 100644 script.module.xmltodict/lib/setup.py
hooks/post-receive
--
Scripts
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons