Change & Version Information¶
The following is a summary of changes and improvements to
eulxml
. New features in each version should be listed, with
any necessary information about installation or upgrade notes.
1.0.1¶
- Correct six dependency required version
- Fix six dependency in eulxml.xpath so installation can complete and generate parsetab and lextab when six installation is not yet processed. [#20 <https://github.com/emory-libraries/eulxml/issues/20>]
1.0¶
- Now Python 3 compatible, thanks to Morgan Aubert (@ellmetha).
- bugfix: BooleanField will now return None instead of generating an error when xml is not present and False is not configured as None. Contributed by Roman Voropaev (@roman-voropaev).
- Include xml namespace in base TEI class in eulxml.xmlmap.teimap for xml:id attributes referenced throughout.
0.22.1¶
- bugfix: workaround for resolver error failing to load schemas in some cases
0.22¶
- New method (
eulxml.xmlmap.load_xslt()
) to load and precompile XSLT that will be used more than once. - Re-worked
eulxml.xmlmap.XmlObject.xsl_transform()
to avoid malloc errors and segmentation faults and to allow using precompiled XSLT documents. - Support for float field types in eulxml.xmlmap. Contributed by jilott.
0.21.2¶
- Bug fix: correctly support parameters in
eulxml.xmlmap.XmlObject.xsl_transform()
- Automatically encode string parameter values passed to
xsl_transform()
as lxml string parameters (lxml.etree.XSLT.strparam
)
0.21.1¶
- Bug fix:
eulxml.xmlmap.XmlObject.xsl_transform()
now recognizes text output as a valid, non-empty XSL result
0.21¶
- Add default unicode output of date value for MODS date fields
(
Date
and all date variants) - Bug fix:
XmlObjectForm
now uses the field order as defined on the form when updating the XML instance (fix for XML where schema requires fields in a specific order)
0.20.3¶
- Revert unused namespace cleanup change to serialization it generates less optimal output in certain cases.
- Minor updates to
eadmap
:- Added mapping for xlink:show attribute to
DigitalArchivalObject
- Added mapping for note field
Index
- Changed
Note
paragraph content from string list to node list, to support formatting. - Added mapping for
processinfo
toArchivalDescription
andComponent
- Added mapping for xlink:show attribute to
0.20.2¶
- Unused namespaces will now be cleaned up before serialization in
eulxml.xmlmap.XmlObject.serialize()
andeulxml.xmlmap.XmlObject.serializeDocument()
eulxml.xmlmap.eadmap
have been updated with root element names where possible, to better support usingeadmap
to update or modify EAD documents.
0.20.1¶
- Adjust
eulxml.xmlmap
fields for better results when inspected by sphinx autodoc or other similar tools.
0.20.0¶
- Update
eulxml.xmlmap.mods
with support for id attribute on top-level MODS element. Contributed by bcail. - Update
eulxml.xmlmap.eadmap
with support for digital archival object tags. - Add
eulxml.xmlmap.fields.DateField
to support date fields separately fromeulxml.xmlmap.fields.DateTimeField
; also includes minimal support for date fields ineulxml.forms.xmlobject.XmlObjectForm
.
0.19.1¶
- Pinned MODS version to 3.4 to guard against new versions of the schema breaking validation
0.19.0¶
- Corrected a minor bug where schema validation errors were not cleared between multiple validations.
- To avoid permission denied warning for auto-generated parser files, parsetab files are now created in python tempdir if the running user doesn’t have write permission in the package installation directory. [Issue 1]
- When an XSLT transformation results in an empty document,
eulxml.xmlap.XmlObject.xsl_transform()
now returns None. [Issue 6] - Development requirements can now be installed as an optional requirement
of the eulxml package (
pip install "eulxml[dev]"
). - Unit tests have been updated to use
nose
- New functionality in
eulxml.xmlmap.cerp
for parsing email dates and generating CERP xml from a Python email message object.
0.18.0 - Formset Ordering and DateTime¶
eulxml.forms.xmlobject.XmlObjectForm
formsets now supportcan_order
.eulxml.xmlmap.fields.DateTimeField
is now included in availableeulxml.xmlmap
fields. This replaces the previously officially-unreleased, under-documented and -tested and misnamedDateField
. Date-time format handling and whitespace normalization contributed by jheath-.
0.17.1 - Bugfix Release¶
- Fixed an error in eulxml.xpath parse that resulted in parse errors when other lexers are defined.
0.17.0 - Minor Enhancements¶
eulxml.xmlmap.XmlObject
now supports lazy-loading for XSD Schemas. To take advantage of this feature,XmlObject
subclasses should define anXSD_SCHEMA
location but should not set anxmlschema
.- When field mapped on a
eulxml.xmlmap.XmlObject
is deleted, any XPath predicates that could have been automatically constructed when setting the value will be deleted from theXmlObject
where possible, if they are otherwise empty.
0.16.0 - MODS and PREMIS¶
- Add basic support for MODS in
eulxml.xmlmap.mods
. - Add basic support for PREMIS in
eulxml.xmlmap.premis
. - Minor logging and error handling improvements.
0.15.3 - Minor Enhancement¶
- Downgrade the lack of an HTTP_PROXY set in the environment from a RuntimeError to a Warning with schema validation disabled.
0.15.2 - Bugfix Release¶
- Fixed an error in the dependency structure that prevented the package from being used after installation through PyPI.
0.15.1 - Bugfix Release¶
- Fixed an error in the dependency structure that prevented the package from being installed through PyPI.