Change LogΒΆ
1.6.7 (February 20, 2017)
Updated testing matrix. Now certified under Python 3.6 and latest versions of PyPy and PyPy3.
1.6.6 (September 16, 2015)
Updated testing for Python 3.5.0 final and PyPy 2.6.1 (based on CPython 2.7.10).
1.6.5 (September 8, 2015)
Minor fix to Markdown module. Turns out HTML stops ath6, noth7. Oops!
1.6.4 (September 7, 2015)
Quoters can now take a variable number of arguments. A
sepkwarg determins how multiple pieces are combined. Defaults to empty string, so rank concatenation. Full rationalization reJoinerawaits another day.Minor testing cleanups.
1.6.3 (September 7, 2015)
Handful of minor cleanups.
All previously skipped tests are now re-enabled and passing.
Argument handling of
Quotercreation is now hardened. If a prefix or suffix is explicitly set but not the other, the unset one defaults to an empty string, not to the other one that is set.The
pairkeyword for compact setting of balanced quote prefix/suffix pairs is returned to service (in earlier incarndations, this was thecharskwarg).Extended documentation. Added API Reference.
1.6.0 (September 7, 2015)
Major redesign of the named styles facility. Refactored style management out of
Quoterand its subclasses and into separateStyleSetclass. Much cleaner and more reliable.The
style=kwarg toQuoterclasses, however, goes away. It was “a bridge too far,” complicating everything and not adding real value. Its function is now found inStyleSet._define().While this is largely an “infrastructure” rather than functional release, there were some minor functional improvements: Markdown quoting extended with
hrandh1throughh7header methods. XML quoting now hascdataandpcdatamethods. Both of these are part of an incremental march toward functional completeness in their respective quoting realms.Withdrew branch coverage testing metric. While a good idea in theory, current tools do not provide sufficient actionable intelligence to directly identify source of branch misses.
1.5.6 (August 22, 2015)
Extended Markdown feature with header functionh
1.5.5 (August 24, 2015)
Start of a Markdown capability. It is at a experimental, proof of concept, or demonstration stage rather than production-use stage at present–much as HTML and XML quoting functions were a few releases back. The initial goal is to stretch thequoteruse- case and prove/harden its extension mechanisms. Even at its inaugural stage, it is doing just that.
1.5.3 (August 23, 2015)
Reorg of XML and HTML code into own module. Parallel reorg of tests. All tests passing.
1.5.2 (August 23, 2015)
Starts automatic collection of test branch coverage. Begins with 99% coverage.
1.5.0 (August 20, 2015)
Enables cloning and specialization of all
Quotersubclasses, includingxmlandhtmlobjects docs previously warned were non-functional. Refactors majority ofJoinerfunctionality as a subclass ofQuoter, with all the rights and privileges thereunto appertaining.Extends tests.
1.4.4 (August 20, 2015)
Added “naked” invocations of primary quoter front-ends, such ashtml("joe", "b.one"). This allows quoters to take on primary information (such as the tag name) during each call. This was long planned for the API, but had been sidelined due to now- quashed complexity.
1.4.3 (August 20, 2015)
Addedbutsynonym forcloneto have simpler, clearer invocations.
1.4.2 (August 20, 2015)
Docs were getting long. TruncatedREADME.rstand converted majority to Sphinx docs to be hosted on readthedocs.
1.4.1 (August 20, 2015)
Documentation fix.
1.4.0 (August 20, 2015)
Major rewrite of complex argument handling for XMLQuoter (and HTMLQuoter subclass). Should be much more robust and extensible. Refactored some functions into
util.pyAdds direct attribute setting
[key=value]to the CSS selector specification language.Improved testing. Added new tests of sub-cases of parsing the arguments. Updated strategy to have quicker basic tests with
sudo tox, but easy full coverage analysis withsudo tox -c toxcov.ini. Advances test line coverage to 100%.
1.3.6 (August 17, 2015)
Updated testing strategy with integrated multi-version coverage testing. Achieved 98%.
1.3.5 (August 14, 2015)
Fixed RST problem in docs
1.3.4 (August 14, 2015)
Added Travis CI badge and note about 2.6 release to docs
1.3.3 (August 11, 2015)
Some code reorganization and updating of common string routines.
1.3.2 (August 11, 2015)
Initiated external CI with Travis. Dropped Python 2.6 from official support given issues getting it running on Travis (though it actually does work).
1.3.0 (August 11, 2015)
First release of integrated sequence joining.join,word_join,and_join,or_join,joinlines, anditemsare functional and tested, but still less mature than the rest of the codebase.
1.2.0 (August 11, 2015)
Institutes full named styles within each quoting class. Tests and docs tweaked. Embeddednulltypemodule withdrawn in favor of fullnulltypeimported byoptions.
1.1.4 (August 3, 2015)
Experimental switch to YAML format for change log. Some setup, testing, and config updates.
1.1.3 (August 3, 2015)
Cloning and changing ofQuoterinstances (though not yetHTMLQuoterorXMLQuoterinstances) is now operational.
1.1.0 (August 3, 2015)
Cleans up HTML quoting, esp. re void / self-closing elements. Adds new double-backtick functions. Changed to Apache License 2.0. Updates docs and testing matrix.
1.0.3 (November 1, 2013)
HTML, XML, and lambda quoters now use class-relative styles dictionaries, as opposed to piggybacking the standard Quoter styles dictionary.
Improved docs and tests.
Added
lambdaqfront-end parallel toquote,html, andxml.
1.0.2 (October 31, 2013)
Some internal cleanups to improve code reuse among classes. Bumped from Alpha to Beta status.
1.0.1 (October 31, 2013)
A new alternate API consisting of attribute names off of a default quoting object (e.g.
quote.singleas a specialization ofquote) has been instituted. This is mostly, but not perfectly, a superset of the previous use of aquote()function.The naming infrastructure has been beefed up, with multiple names (aliases) possible for all named objects.
A new
XMLQuoteris inserted as a superclass ofHTMLQuoter`. It has ``HTMLQuoter‘s ability to parse CSS style id and class name definitions (e.g.'#first.big.special'), as well as namespace support (newnsattribute).XML and HTML quoters for individual tags are automagically generated upon first use. E.g.
html.b('this')creates anHTMLQuoter(tag='b', name='b')quoter that is cached ashtml.bfor subsequent uses.Updated versioning strategy to comply with PEP 386
Various other structural and packaging cleanups. E.g. moved into proper Python package; given introspectable version number; removed old
vernoauto-update of version number; this proper change long instituted; etc.
0.308 (October 30, 2012)
Last version before PEP 386 versioning switch. Upgrade away from these old versions if for no other reason than improving the auto- install logic.