1.4.6 (May 15, 2017)
Updated mechanism for method-specific option setting. Still work in progress, but code now much cleaner.
1.4.5 (January 31, 2017)
Retfined testing matrix, esp for coverage.
1.4.4 (January 23, 2017)
Updates testing. Newly qualified under 2.7.13 and 3.6, as well as most recent builds of pypy and pypy3. Drops Python 3.2 support; should still work, but no longer in testing matrix.
1.4.2 (September 15, 2015)
Updated testing with PyPy 2.6.1 (based on 2.7.10).
1.4.1 (September 14, 2015)
Updated testing matrix with 3.5.0 final.
1.4.0 (August 31, 2015)
Major reorganization of implementation. The two-level
OptionsChainstrategy replaced with single-level
Optionsbased directly on
ChainMap(or more precisely, on an attribute-accessible subclass of it). It’s now turtles all the way down.
Systematic enough change that by traditional versioning standards this would be a 2.0 release. But following Semantic Versioning, while the class structure changes, the effective API seen by using modules does not change, so 1.4.0 is enough.
Correctness of this systematic roto-tilling confirmed by test suite. Testing now extended to 100% line coverage (and 99% branch coverage). Some edge case issues were discovered and corrected. Thank you to coverage testing for ferreting those out.
No longer depends on stuf. Coupled with a new supporting chainmap polyfill, decisively returns compatibility for Python 2.6 in a way that doesn’t depend on the release schedule or priorities of external modules.
1.3.2 (August 26, 2015)
Reorganized documentation structure.
1.3.0 (August 25, 2015)
Added test branch metrics to coverage evaluation. Line coverage now 93%; branch coverage 92%.
Integrated reading/writing of options data to JSON files now operational and tested.
1.2.5 (August 17, 2015)
Inaugurated automated test coverage analysis. Extended a few tests and cleaned up some code as a result. Published with coverage at 88%.
1.2.2 (August 11, 2015)
1.2.1 (August 4, 2015)
Added wheel distribution format. Updated test matrix.
Moved from BSD to Apache Software License.
Moved status to production/stable from beta.
1.2.0 (July 22, 2015)
Doc and config tweaks.
Python 2.6 support wavering, primarily because of failure of
stuf0.9.16 to build there. 0.9.14 works fine. But either
stufsupport will have to improve (I’ve submitted a pull request that fixes the problem), or we’ll have to swap
stufout, or we’‘ll have to decomit py26.
1.1.7 (December 16, 2014)
Added snazzy badges to PyPI readme
1.1.5 (December 16, 2014)
Changed dependencies to utilize new
nulltypepackage (unbundling it). Ensured tested on all lastest Python versions.
1.1.1 (October 29, 2013)
OptionsClassbase class. If client classes inherit from this, they automatically get ` set()`` and
1.0.7 (October 25, 2103)
Mainly doc tweaks.
1.0.4 (October 24, 2013)
When bad option names are defined (“bad” here meaning “conflicts with names already chosen for pre-existing methods”), a
BadOptionNameexception will be raised.
Tweaked docs, adding comparison chart.
1.0.3 (September 23, 2013)
Switched to local version of
chainstufuntil bug with generator values in
stuf.chainstufcan be tracked down and corrected. This was blocking a downstream feature-release of
1.0.2 (September 19, 2013)
updatemethods, and added tests, primarily in effort to work around bug that appears in
chainstufwhen a mapping value is a generator.
1.0.1 (September 14, 2013)
Moved main documentation to Sphinx format in ./docs, and hosted the long-form documentation on readthedocs.org. README.rst now an abridged version/teaser for the module.
1.0.0 (September 10, 2013)
Cleaned up source for better PEP8 conformance
Bumped version number to 1.0 as part of move to semantic versioning, or at least enough of it so as to not screw up Python installation procedures (which don’t seem to understand 0.401 is a lesser version that 0.5, because 401 > 5).