The following is a summary of changes and improvements to :mod:`eulxml`. New features in each version should be listed, with any necessary information about installation or upgrade notes.
- 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, :meth:`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 :mod:`nose`
- New functionality in :mod:`eulxml.xmlmap.cerp` for parsing email dates and generating CERP xml from a Python email message object.
- :class:`eulxml.forms.xmlobject.XmlObjectForm` formsets now support
can_order
. - :class:`eulxml.xmlmap.fields.DateTimeField` is now included in
available :mod:`eulxml.xmlmap` fields. This replaces the previously
officially-unreleased, under-documented and -tested and misnamed
DateField
. Date-time format handling and whitespace normalization contributed by jheath-.
- Fixed an error in eulxml.xpath parse that resulted in parse errors when other lexers are defined.
- :class:`eulxml.xmlmap.XmlObject` now supports lazy-loading for XSD
Schemas. To take advantage of this feature,
:class:`~eulxml.xmlmap.XmlObject` subclasses should define an
XSD_SCHEMA
location but should not set anxmlschema
. - When :ref:`field <xmlmap-field>` mapped on a :class:`eulxml.xmlmap.XmlObject` is deleted, any XPath predicates that could have been automatically constructed when setting the value will be deleted from the :class:`~eulxml.xmlmap.XmlObject` where possible, if they are otherwise empty.
- Add basic support for MODS in :mod:`eulxml.xmlmap.mods`.
- Add basic support for PREMIS in :mod:`eulxml.xmlmap.premis`.
- Minor logging and error handling improvements.
- Downgrade the lack of an HTTP_PROXY set in the environment from a RuntimeError to a Warning with schema validation disabled.
- Fixed an error in the dependency structure that prevented the package from being used after installation through PyPI.
- Fixed an error in the dependency structure that prevented the package from being installed through PyPI.
- Split out xml-related components (:mod:`~eulxml.xpath`, :mod:`~eulxml.xmlmap`, and :mod:`~eulxml.forms`) from :mod:`eulcore` into :mod:`eulxml` for easier re-use.