ChangeLog

v2.0.1 (2015-8-25)

Bugfix:
  • bug fix with issubcomponent
  • System.load will not actually consider subcomponent
New:
  • expose load_component in the System class
  • use key function to chouse component ins System.load

v2.0.0 (2015-8-25)

  • Large API incompatible update
  • supports Python 2.6+
  • now uses pyitect.imports for import time plugin loading
  • version postfixes are replaced with component subtypes
  • Uses SemVer processing via python-semanticversion project
  • module overlap is prevented with unique model names in sys.modules
  • no import modes, uses imp module for everything >= 3.3 and importlib for 3.4+
  • ability to store global system instance in pyitect module
  • support YAML for plugin configuration files
  • Custom Exception classes with exception chain support
  • fully fledge docs

v1.1.0 (2015-7-17)

  • readme cleanup
  • gen_version generates a version 2 tuple
  • change on_enable to a callable path in the imported plugin module

v1.0.1 (2015-6-10)

  • change out Version mechanism for a local parse method based off of LooseVersion
  • update tests to proper unit tests

v1.0.0 (2015-6-9)

  • change from parse_version from setuptools to LooseVersion in distutils

v0.9.2 (2014-9-28)

  • Ensure plugin configuration json file is closed @svisser

v0.9.1 (2014-9-28)

  • files loaded with exec give proper file path
  • proper trace back given when component fail to load (even when it’s a recursion error)
  • add component_mapped event

v0.9.0 (2014-9-27)

  • add get_plugin_module method

v0.8.0 (2014-9-27)

  • Added ability to run code when a plugin is enabled via “on_enable” property

v0.7.2 (2014-9-23)

  • Fix name error in unbind and fire event commands

v0.7.0 (2014-9-21)

  • plugins found with System.search are no longer auto enabeled
  • use System.enable_plugins(<mapping>|<iterable>|<Plugin>) to enable plugins from System.plugins
  • added Plugin class to main namespace

v0.6.2 (2014-9-13)

  • relative imports now work so long as the target file for loading is named __init__.py to trigger python to treat the plugin folder as a package

v0.6.1 (2014-9-13)

  • re-factored System.load out to make use of two smaller functions, easyer to maintain
  • added plugin loading modes, import for py3.4+ and exec for support of previous python version

v0.5.1 (2014-8-30)

  • added ability to provide more than one version of a component in the same plugin with potfix mapping
  • event system added, system fire events
  • made requirement overwrite system defaults, removed bypass peram
  • ittrPluginsByComponent lists potfix mappings too.
  • tests updates to test all features
  • README update
  • This changelog added

v0.1.15 (2014-8-26)

  • added ittrPluginsByComponent
  • added bypass peram to System.load to bypass system default

v0.1.10 (2014-8-25)

  • First public release