What’s new in release 2.0.0?

  • The Python 2.5 lifespan has ended and it is no longer actively supported in Aglyph. (Aglyph 2.0.0 will not run on Python 2.5 without patching)
  • Creating components using staticmethod, classmethod, and nested classes (any level) is now supported via aglyph.component.Component.factory_name.
  • Referencing class objects, nested class objects (any level), functions, or attributes as components is now supported via aglyph.component.Component.member_name.
  • The Aglyph cookbook has been expanded to include many new recipes, including examples of the aforementioned aglyph.component.Component.factory_name and aglyph.component.Component.member_name configuration options.
  • The <eval> element in declarative XML configuration is deprecated. Use a <component> and a <reference> (or @reference attribute) to configure anything that was previously declared as an <eval>.
  • The aglyph.has_importable_dotted_name() function is deprecated. The aglyph.format_dotted_name() function now verifies that the dotted name is actually importable.
  • The aglyph.identify_by_spec() function is deprecated. This really belonged in aglyph.binder.Binder to begin with, which is where it now resides as a non-public method.
  • Multiple calls to aglyph.binder._Binding.init() and aglyph.binder._Binding.attributes() now have a cumulative effect, rather than replacing any previously-specified arguments or attributes, respectively.
  • aglyph.compat and aglyph.context.XMLContext have been updated to avoid deprecated xml.etree.ElementTree methods.
  • Python implementation detection in aglyph.compat has been improved.
  • The aglyph.compat.ipyetree.XmlReaderTreeBuilder class is deprecated. IronPython applications no longer need to explicitly pass a parser to aglyph.context.XMLContext (Aglyph now uses a sensible default). (note: with this change, the Aglyph API is now 100% cross-compatible with all tested Python versions and variants)
  • The Getting started with Aglyph tutorial and accompanying sample code have been revamped to better demonstrate the various Aglyph configuration approaches, as well as to provide more substantive component examples.
  • Aglyph documentation now uses the Read the Docs Sphinx Theme.