Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial Update #666

Closed
wants to merge 11 commits into from
Closed

Initial Update #666

wants to merge 11 commits into from

Conversation

pyup-bot
Copy link

This is my first visit to this fine repo so I have bundled all updates in a single pull request to make things easier for you to merge.

Close this pull request and delete the branch if you want me to start with single pull requests right away

Here's the executive summary:

Updates

Here's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need.

astunparse 1.5.0 » 1.5.0 PyPI | Changelog | Repo
colorama 0.3.9 » 0.3.9 PyPI | Changelog | Repo
colorlog 3.1.0 » 3.1.0 PyPI | Changelog | Repo
cssselect 1.0.1 » 1.0.1 PyPI | Changelog | Repo | Docs
ipaddress 1.0.18 » 1.0.18 PyPI | Repo
nose 1.3.7 » 1.3.7 PyPI | Changelog | Docs
progressbar33 2.4 » 2.4 PyPI | Repo
pyvirtualdisplay 0.2.1 » 0.2.1 PyPI | Repo
pyyaml 3.12 » 3.12 PyPI | Changelog | Homepage
selenium 3.5.0 » 3.5.0 PyPI | Changelog | Repo
urwid 1.3.1 » 1.3.1 PyPI | Changelog | Homepage

Changelogs

astunparse -> 1.5.0

1.5.0

  • Python 3.6 compatibility
  • bugfix: correct argparser option type

1.4.0

  • Support for the async keyword
  • Support for unparsing "Interactive" and "Expression" nodes

1.3.0

  • Python 3.5 compatibility

1.2.0

  • Python 2.6 through 3.4 compatibility
  • A new function dump is added to return a pretty-printed version
    of the AST. It's also available when running python -m astunparse
    as the --dump argument.

1.1.0

  • unparse will return the source code for an AST. It is pretty
    feature-complete, and round-trips the stdlib, and is compatible with
    Python 2.7 and Python 3.4.

Running python -m astunparse will print the round-tripped source
for any python files given as argument.

colorama -> 0.3.9

0.3.9

  • Revert fix for issue 103 which causes problems for dependent applications

0.3.8

  • Fix issue 121: "invalid escape sequence" deprecation fixes on Python 3.6+
  • Fix issue 110: fix "set console title" when working with unicode strings
  • Fix issue 103: enable color when using "input" function on Python 3.5+
  • Fix issue 95: enable color when stderr is a tty but stdout is not

0.3.7

  • Fix issue 84: check if stream has 'closed' attribute before testing it
  • Fix issue 74: objects might become None at exit

0.3.6

  • Fix issue 81: fix ValueError when a closed stream was used

0.3.5

  • Bumping version to re-upload a wheel distribution

0.3.4

  • Fix issue 47 and 80 - stream redirection now strips ANSI codes on Linux
  • Fix issue 53 - strip readline markers
  • Fix issue 32 - assign orig_stdout and orig_stderr when initialising
  • Fix issue 57 - Fore.RESET did not reset style of LIGHT_EX colors.
    Fixed by Andy Neff
  • Fix issue 51 - add context manager syntax. Thanks to Matt Olsen.
  • Fix issue 48 - colorama didn't work on Windows when environment
    variable 'TERM' was set.
  • Fix issue 54 - fix pylint errors in client code.
  • Changes to readme and other improvements by Marc Abramowitz and Zearin

0.3.3

  • Fix Google Code issue 13 - support changing the console title with OSC
    escape sequence
  • Fix Google Code issue 16 - Add support for Windows xterm emulators
  • Fix Google Code issue 30 - implement \033[nK (clear line)
  • Fix Google Code issue 49 - no need to adjust for scroll when new position
    is already relative (CSI n A\B\C\D)
  • Fix Google Code issue 55 - erase_data fails on Python 3.x
  • Fix Google Code issue 46 - win32.COORD definition missing
  • Implement \033[0J and \033[1J (clear screen options)
  • Fix default ANSI parameters
  • Fix position after \033[2J (clear screen)
  • Add command shortcuts: colorama.Cursor, colorama.ansi.set_title,
    colorama.ansi.clear_line, colorama.ansi.clear_screen
  • Fix issue 22 - Importing fails for python3 on Windows
  • Thanks to John Szakmeister for adding support for light colors
  • Thanks to Charles Merriam for adding documentation to demos

0.3.2

  • Thanks to Marc Schlaich (schlamar) for a setup.py fix for Python2.5
  • Thanks to Jurko for fix on 64-bit Windows CPython2.5 w/o ctypes
    (Google Code issue 56)
  • Thanks to Remi Rampin for:
    • better github integration, incl rendered README and Travis config.
    • fixed forward slashes in README
  • Thanks to Florian Bruhin for fix when stdout or stderr are None
  • Thanks to Simeon Visser for:
    • closing a file handle using 'with'
    • updating classifiers to include Python 3.3 and 3.4
  • Thanks to Thomas Weininger for fix ValueError on Windows
    (Google Code issue 50)

0.3.1

  • Fixed crash on exit with closed stdout, with thanks to Marc Abramowitz.
  • Now uses setuptools if available, and falls back to distutils if not.
  • setup.py no longer imports anything from colorama source.

0.3.0

  • Move repository to Git, https://github.com/tartley/colorama. (My Mercurial
    repo seemed to be corrupted, I couldn't commit nor view patches of old
    commits, even on fresh checkouts.)
  • Fix always-crash on non-Windows platforms, reported by Matt McCormick.
  • Fix Google Code issue 47, incompatible with pyreadline.

0.2.7

  • Fix problem under 64-bit windows due to ctypes HANDLE size.
    Submitted by the rather magnificent Ben Hoyt.
    This fixes Google Code issue 43

0.2.6

  • Add copyright & licensing info to every file, as requested by a large
    downstream project which has problems making sure that all 3rd party
    contributions have appropriate license.

0.2.5

  • Severeral documentation & demo fixes.

0.2.4

  • Fix to work on Windows 7.
  • Python 3 compatibility in docs and demos.
  • Add handling for 'cursor up' and 'get position' ANSI codes.

0.2.3

  • Split changelog out into separate file.

0.2.2

  • Fix bug which caused init() to raise, introduced in 0.2.1.
  • Remove asserts which cause problems in various circumstances. At least
    some users saw asserts fail on 'success' returned from win32 functions,
    even though the win32 functions appear to have worked correctly.

0.2.1

  • Completely broken: I added a bug which caused init() to raise.
  • Added some documentation for cursor positioning and clear screen to README.
  • Add 'reinit' and 'deinit' functions, as suggested by Charles FOL and
    Romanov DA.

0.2

  • Merge in changes from Daniel Griffith: Add ANSI cursor positioning &
    partial support for clear screen. Patch submitted by Oscar Lester, don't
    send RESET_ALL to non-tty.
  • Demos split into separate files and moved into their own directory.
  • Tweak sys.path in demos so they run against local source, not installed
    version of Colorama.

0.1.18

  • Fix README (no such attr as Fore.DEFAULT, etc), kindly reported by nodakai.

0.1.17

  • Prevent printing of garbage ANSI codes upon installing with pip

0.1.16

  • Re-upload to fix previous error. Make clean now removes old MANIFEST.

0.1.15

  • Completely broken. Distribution was empty due to leftover invalid MANIFEST
    file from building on a different platform.
  • Fix python3 incompatibility kindly reported by G |uumlaut| nter Kolousek

0.1.14

  • Fix hard-coded reset to white-on-black colors. Fore.RESET, Back.RESET
    and Style.RESET_ALL now revert to the colors as they were when init()
    was called. Some lessons hopefully learned about testing prior to release.

0.1.13

  • Completely broken: barfed when installed using pip.

0.1.12

  • Completely broken: contained no source code. double oops.

0.1.11

  • Completely broken: fatal import errors on Ubuntu. oops.

0.1.10

  • Stop emulating 'bright' text with bright backgrounds.
  • Display 'normal' text using win32 normal foreground instead of bright.
  • Drop support for 'dim' text.

0.1.9

  • Fix incompatibility with Python 2.5 and earlier.
  • Remove setup.py dependency on setuptools, now uses stdlib distutils.

0.1.8

  • Fix ghastly errors all over the place on Ubuntu.
  • Add init kwargs 'convert' and 'strip', which supercede the old 'wrap'.

0.1.7

  • Python 3 compatible.
  • Fix: Now strips ansi on windows without necessarily converting it to
    win32 calls (eg. if output is not a tty.)
  • Fix: Flaky interaction of interleaved ansi sent to stdout and stderr.
  • Improved demo.sh (hg checkout only.)

0.1.6

  • Fix ansi sequences with no params now default to parmlist of [0].
  • Fix flaky behaviour of autoreset and reset_all atexit.
  • Fix stacking of repeated atexit calls - now just called once.
  • Fix ghastly import problems while running tests.
  • 'demo.py' (hg checkout only) now demonstrates autoreset and reset atexit.
  • Provide colorama.VERSION, used by setup.py.
  • Tests defanged so they no longer actually change terminal color when run.

0.1.5

  • Now works on Ubuntu.

0.1.4

  • Implemented RESET_ALL on application exit

0.1.3

  • Implemented init(wrap=False)

0.1.2

  • Implemented init(autoreset=True)

0.1.1

  • Minor tidy

0.1

  • Works on Windows for foreground color, background color, bright or dim

.. |uumlaut| unicode:: U+00FC .. u with umlaut
:trim:

colorlog -> 3.1.0

3.1.0

This removed the use of parse_colors directly in format strings, as it relied on an implementation specific detail of Python 2 and was broken on Python 3 (i.e. setting __missing__ on an object's __dict__). It also adds some usage examples.

2.7.0

Adds a level based formatter - thanks mdraw! (borntyping/python-colorlog#32)

2.4.0

  • Allow use of the fg_ prefix for colors
  • Use esc(0) for the reset escape code
  • Fix bold background colors

2.3.1

  • Added support for Windows using colorama, thanks to nicoddemus 48e417be64c5a2f37c809c28f13b72121473012d
  • Added support for Wheels 02903d433475c59be4e87082cf3fc43a53b4b2d6

2.1.0

Adds module level functions that log to the root logger, and sets up a basic coloured logger when those modules are called and no handlers exist (in the same way the logging module does).

2.0.0

Stable release: python-colorlog is no longer marked as 'beta' software.

cssselect -> 1.0.1

1.0.1


Released on 2017-01-10.

  • Add support for Python 3.6.
  • Documentation hosted on Read the Docs <https://cssselect.readthedocs.io/>_

1.0.0


Released on 2016-10-21.

  • Add code coverage reports.
  • Fix :nth-*(an+b) pseudo-classes selectors.
    (except *:nth-child() which looks untranslatable to XPath 1.0.)

0.9.2


Released on 2016-06-15.

  • Distribute as universal wheel.
  • Add support for Python 3.3, 3.4 and 3.5.
  • Drop support for Python 2.5 as testing is getting difficult.
  • Improve tests on pseudo-elements.

0.9.1


Released on 2013-10-17.

  • Backward incompatible change from 0.9:
    :meth:~GenericTranslator.selector_to_xpath defaults to
    ignoring pseudo-elements,
    as it did in 0.8 and previous versions.
    (:meth:~GenericTranslator.css_to_xpath doesn’t change.)
  • Drop official support for Python 2.4 and 3.1,
    as testing was becoming difficult.
    Nothing will break overnight,
    but future releases may on may not work on these versions.
    Older releases will remain available on PyPI.

0.9


Released on 2013-10-11.

Add parser support for :attr:functional pseudo-elements <Selector.pseudo_element>.

Update:
This version accidentally introduced a backward incompatible change:
:meth:~GenericTranslator.selector_to_xpath defaults to
rejecting pseudo-elements instead of ignoring them.

0.8


Released on 2013-03-15.

Improvements:

  • 22 <https://github.com/SimonSapin/cssselect/issues/22>_
    Let extended translators override what XPathExpr class is used
  • 19 <https://github.com/SimonSapin/cssselect/issues/19>_
    Use the built-in lang() XPath function
    for implementing the :lang() pseudo-class
    with XML documents.
    This is probably faster than ancestor-or-self::.

Bug fixes:

  • 14 <https://github.com/SimonSapin/cssselect/issues/14>_
    Fix non-ASCII pseudo-classes. (Invalid selector instead of crash.)
  • 20 <https://github.com/SimonSapin/cssselect/issues/20>_
    As per the spec, elements containing only whitespace are not considered empty
    for the :empty pseudo-class.

0.7.1


Released on 2012-06-14. Code name remember-to-test-with-tox.

0.7 broke the parser in Python 2.4 and 2.5; the tests in 2.x.
Now all is well again.

Also, pseudo-elements are now correctly made lower-case. (They are supposed
to be case-insensitive.)

0.7


Released on 2012-06-14.

Bug fix release: see 2, 7 and 10 on GitHub.

  • The tokenizer and parser have been rewritten to be much closer to the
    specified grammar. In particular, non-ASCII characters and backslash-escapes
    are now handled correctly.
  • Special characters are protected in the output so that generated XPath
    exrpessions should always be valid
  • The ~=, ^= and *= attribute operators now correctly never match
    when used with an empty string.

0.6.1


Released on 2012-04-25.

Make sure that internal token objects do not "leak" into the public API and
:attr:Selector.pseudo_element is an unicode string.

0.6


Released on 2012-04-24.

  • In setup.py use setuptools/distribute if available, but fall back
    on distutils.
  • Implement the :lang() pseudo-class, although it is only based on
    xml:lang or lang attributes. If the document language is known from
    some other meta-data (like a Content-Language HTTP header or <meta>
    element), a workaround is to set a lang attribute on the root element.

0.5


Released on 2012-04-20.

  • Fix case sensitivity issues.
  • Implement :class:HTMLTranslator based on the HTML5 specification_
    rather than guessing; add the xhtml parameter.
  • Several bug fixes and better test coverage.

.. _HTML5 specification: http://www.w3.org/TR/html5/links.htmlselectors

0.4


Released on 2012-04-18.

  • Add proper support for pseudo-elements
  • Add specificity calculation
  • Expose the :func:parse function and the parsed :class:Selector objects
    in the API.
  • Add the :meth:~GenericTranslator.selector_to_xpath method.

0.3


Released on 2012-04-17.

  • Fix many parsing bugs.
  • Rename the :class:Translator class to :class:GenericTranslator
  • There, implement :target, :hover, :focus, :active
    :checked, :enabled, :disabled, :link and :visited
    as never matching.
  • Make a new HTML-specific HTMLTranslator subclass. There, implement
    :checked, :enabled, :disabled, :link and :visited
    as appropriate for HTML, with all links "not visited".
  • Remove the :func:css_to_xpath function. The translator classes
    are the new API.
  • Add support for :contains() back, but case-sensitive. lxml will
    override it to be case-insensitive for backward-compatibility.

Discussion is open if anyone is interested in implementing eg. :target
or :visited differently, but they can always do it in a Translator
subclass.

0.2


Released on 2012-04-16.

  • Remove the CSSSelector class. (The css_to_xpath() function is now
    the main API.)
  • Remove support for the :contains() pseudo-class.

These changes allow cssselect to be used without lxml. (Hey, this was
the whole point of this project.) The tests still require lxml, though.
The removed parts are expected to stay in lxml for backward-compatibility.

:contains() only existed in an early draft <http://www.w3.org/TR/2001/CR-css3-selectors-20011113/content-selectors>_
of the Selectors specification, and was removed before Level 3 stabilized.
Internally, it used a custom XPath extension function which can be
difficult to express outside of lxml.

  • Separate the XPath translation from the parsed objects into a new
    Translator class.

Subclasses of Translator can be made to change the way that some selector
(eg. a pseudo-class) is implemented.

0.1


Released on 2012-04-13.

Extract lxml.cssselect from the rest of lxml and make it a stand-alone project.

Commit ea53ceaf7e44ba4fbb5c818ae31370932f47774e was taken on 2012-04-11
from the 'master' branch of lxml’s git repository. This is somewhere
between versions 2.3.4 and 2.4.

The commit history has been rewritten to:

  • Remove lxml files unrelated to cssselect
  • Import the early history from the 'html' branch in the old SVN repository
  • Fix author names in commits from SVN

This project has its own import name, tests and documentation. But the
code itself is unchanged and still depends on lxml.

Earlier history

Search for cssselect in lxml’s changelog <https://github.com/lxml/lxml/blob/master/CHANGES.txt>_

nose -> 1.3.7

1.3.7

  • Fix loading packages from capitalised package on Windows
    Patch by Thomas Kluyver

1.3.6

  • Re-release of 1.3.5 with wheels fixed.

1.3.5

package notation, using the coverage plugin with multiprocessing, and several
others. See the CHANGELOG for more details.

Also note that nose 1.x is in maintenance mode. We will not be
looking to add any features, and you should seriously consider
looking at nose2 as the way forward.

If you're interested in the future of nose, please take a look at the
nose2 project on github (https://github.com/nose-devs/nose2) or pypi
(http://pypi.python.org/pypi/nose2/0.5.0).

[nosetests]
with-doctest=1
doctest-extension=.rst
doctest-fixtures=_fixtures
py3where=build/tests

[bdist_rpm]
doc_files = man/man1/nosetests.1 README.txt
;; Uncomment if your platform automatically gzips man pages
;; See README.BDIST_RPM
;; install_script = install-rpm.sh

1.3.4

  • Recognize doctest options defined in other plugins
    Patch by Daniel Lepage
  • Another fix for Python 3.4: Call super in LazySuite to access
    _removed_tests variable
    Patch by Robert Kuska
  • Fix for try_run when using bound methods
    Patch by Christian Lyder Jacobsen

1.3.3

  • Fixed a minor issue with the reported version number.

1.3.2

  • Fixed an issue where build_ext was not working under setup.py nosetest
    Patch by Michael Crusoe
  • Fixed 786: generator method fails with callable instance
    Patch by Antoine Dechaume
  • Fixed a traceback when using string exceptions
  • Fixed 792: "Not a directory" error when using python setup.py nosetests
  • Fixed 779: xunit report file is written in --where directory
  • Fixed 782: Test failures with Python >= 3.3
    Patch by Dmitry Shachnev
  • Fixed 780: Fix a regression with Python 3
  • Fixed 783: try_run is broken with Python 3.4

1.3.1

  • The log capture plugin now correctly applies filters that were added
    using addFilter.
    Patch by Malthe Borch.
  • Corrected a reference to the multiprocessing plugin in the documentation.
    Patch by Nick Loadholtes.
  • Fixed 447: doctests fail when getpackage() returns None
    Patch by Matthew Brett.
  • Fixed 749: xunit exceeds recursion limit
    Patch by André Caron.
  • Fixed a number of unicode-related issues.
    Patch by John Szakmeister.
  • Added the ability to ignore config files via an environment variable
    Patch by Lukasz Balcerzak
  • Fixed 720: nose with detailed errors raises encoding error
    Patch by John Szakmeister. Thanks to Guillaume Ayoub for the test case.
  • Fixed 692: UnicodeDecodeError in xunit when capturing stdout and stderr
    Patch by John Szakmeister.
  • Fixed 693: Python 2.4 incompatibilities
    Patch by John Szakmeister.
  • Don't save zero-byte xunit test reports
    Patch by Dan Savilonis.
  • Fix Importer.importFromPath to be able to import modules whose names start
    with init
    Patch by Paul Bonser.
  • Add a fake isatty() method to Tee
    Patch by Jimmy Wennlund.
  • Fix 700: Tee is missing the writelines() method
    Patch by John Szakmeister.
  • Fix 649: UnicodeDecodeError when an exception contains encoded strings
    Patch by John Szakmeister.
  • Fix 687: verbosity is not a flag
    Patch by John Szakmeister.
  • Fixed a suppressed deprecation warning
    Patch by Arnon Yaari.
  • Fixed some broken links in the documentation
    Patch by Arnon Yaari.
  • Add missing format parameter in error message
    Patch by Etienne Millon.
  • Switched docs to point at the GitHub site for the issue tracker
    Patch by Daniel Beck.
  • Fix 447: doctests fail when getpackage() returns None
    Patch by Matthew Brett.
  • Fix 366: make --pdb report on errors and failures. Use --pdb-error to get
    the old behavior.
    Patch by Arnon Yaari.
  • Fix 501: Imported test generators are misrecognized as simple test
    functions
    Patch by John Szakmeister.
  • Added a test for issue 501
    Patch by Michael Killough.
  • Use SkipTest from unittest2, if available, for better integration with
    testtools
    Patch by Ian Wienand.
  • Fix 759: Test failures with Python 3.4
    Patch by Barry Warsaw.
  • Add a note about executable files in the usage, and how to workaround it
    Patch by Michael Dunn.
  • Fix 743: fix an incorrect regex in writing_tests.rst
    Patch by Anne Moroney.
  • Fix 690: Don't traceback when coverage reports fail.
    Patch by John Szakmeister.
  • Display the report summary and stack traces even if Ctrl-C was pressed
    during the test run.
    Patch by Kevin Qiu.
  • Fix 771: attr plugin is broken when parent and child share same method
    name with different attributes
    Patch by John Szakmeister. Test case provided by Thomas Grainger.
  • Fix 728: attrib plugin rejects any staticmethod
    Patch by John Szakmesiter. Test case provided by Thomas Kluyver.
  • Fix the plugin testing example.
    Patch by Charlie Dominio.
  • Instruct coverage instance to cover requested packages only.

1.3.0

  • Fix 556: fix selecting specific tests in the setuptools command.
    Patch by Andrey Golovizin.
  • Fixed timed decorator to return the result of the wrapped function.
    Patch by Praful Mathur.
  • Fixed 513: exception in test generator leads to a TypeError.
    Patch by Dmitry Shachnev.
  • Fixed 535: nose.importer causes bizarre import errors if sys.path includes
    symlinks.
    Patch by Antoine Pitrou.
  • Added support for Python 3.3.
    Patch by John Szakmeister and Bradley Froehle.
  • Added the ability to skip generating .pyc files with --no-byte-complie.
    Patch by John Szakmeister.
  • Suppress tracebacks caused by configuration errors (401).
    Patch by Andrea Corbellini.
  • Fixed doctest failures under Python 3 (519).
    Patch by John Szakmeister.
  • Fixed test_address's checking for builtins to work with Python 2 and 3.
    Patch by Joe Mathes and John Szakmeister.
  • Fixed a bug where nose.tools was not being installed on systems without
    setuptools. (554)
    Patch by Bradley Froehle.
  • Fixed a bug in xunit that was causing it to die ungracefully under
    Python 3. (134)
    Patch by John Szakmeister.
  • Fixed 561: logcapture shouldn't buffer records, breaks %r point-in-time
    formatting.
    Patch by Santeri Paavolainen.
  • Taught xunit to capture stdout and stderr in the xunit report.
    Patch by John Szakmeister.
  • Repopulate nose.tools.all so that the autodocs generate correctly.
    Patch by Taavi Burns.
  • Fixed a bug where nose was failing to parse the NOSE_COVER_PACKAGE
    environment variable correctly. (109)
    Patch by Churkin Oleg.
  • Taught nose to lookup it's usage text according to PEP-302.
    Patch by Bradely Froehle.
  • Fixed an ugly traceback when a test class was imported from another module,
    but was missing a method. (595)
    Patch by Michael Williamson.
  • Fix formatFailure expection if missing tb in exc_info. (603)
    Patch by Sascha Peilicke.
  • Taught the test suite to skip coverage tests if the coverage module is not
    available. (597)
    Patch by Dmitry Shachnev.
  • Fix 135: ResultProxy._prepareErr mangles error output in some cases.
    Patch by Arnon Yaari.
  • Updated plugin documentation to fix numerous typos and incorrect names.
    Patch by Arnon Yaari.
  • Added the ability to run nose as a module.
    Patch by Stefano Rivera.
  • Fix installing Nose under Windows with Python 3.3.
    Patch by John Szakmeister.
  • Added documentation for --processes=0 and the default value of
    --process-timeout.
    Patch by Takafumi Arakaki.
  • Fixed broken references to non-existent documentation.
    Patch by Dmitry Shachnev.
  • Fix --cover-min-percentage with --cover-branches. (626)
    Patch by B. W. Baugh.
  • Fix --cover-min-percentage with single packages.
    Patch by John Szakmeister.
  • Fixed reference to PEP 8 to use Sphinx construct for better linking.
    Patch by Mahhtijs van der Vleuten.
  • Fixed a reference to --cover-packages to use the correct option name.
    Patch by Wesley Baugh.
  • Updated Nose to avoid using the deprecated compiler module when possible.
    Patch by Kim Scheilbel.
  • Updated docstrings of formatFailure() and formatError().
    Patch by Daniel Abel.
  • Several man page fixes for better formatting.
    Patches by Dmitry Shachnev.
  • Fixed a bug causing Nose to crash in directories that end in '.py'. (612)
    Patch by Arnon Yaari.
  • Fixed a traceback when a test raises SystemExit and has captured
    output. (526)
    Patch by Arnon Yaari.
  • Fixed ImportError running nosetests on namespace package in a subdirectory
    on Windows. (19)
    Patch by Arnon Yaari.

1.2.1

  • Correct nose.version (549). Thanks to Chris Withers for the bug report.

1.2.0

  • Fixed issue where plugins included with addplugins keyword could
    be overridden by built-in plugins (or third-party plugins registered
    with setuptools) of the same name (466).
    Patch by Brendan McCollam
  • Adds :option:--cover-xml and :option:--cover-xml-file (311).
    Patch by Timothée Peignier.
  • Adds support for :option:--cover-branches (related to 370).
    Patch by Timothée Peignier.
  • Fixed Unicode issue on Python 3.1 with coverage (442)
  • fixed class level fixture handling in multiprocessing plugin
  • Clue in the unittest module so it no longer prints traceback frames for
    our clones of their simple assertion helpers (453). Patch by Erik Rose.
  • Stop using the assert statement in ok_ and eq_ so they work under
    python -O (504). Patch by Erik Rose.
  • Add loglevel option to logcapture plugin (493). Patch by Arach Tchoupani.
  • Add doctest options flag (7 from google code tracker). Patch by Michael
    Forbes.
  • Add support for using 2to3 with the nosetests setuptools command. Patch by
    Andrey Golovizin.
  • Add --cover-min-percentage flag to force test runs without sufficient
    coverage to fail (540). Patch by Domen Kožar.
  • Add travis-ci configuraion (545). Patch by Domen Kožar.
  • Call reactor.stop from twisted thread (301). Patch by Adi Roiban.

1.1.2

  • Fixed regression where the .coverage file was not saved (439).
    Patch by Timothée Peignier.

1.1.1

  • Fixed missing nose.sphinx module in source distribution (436).

1.1.0

  • Revised multiprocessing implementation so that it works for test generators
    (399). Thanks to Rosen Diankov for the patch.
  • More fixes to multiprocessing implemented by Buck Golemon and Gary Donovan
    (also part of 399).
  • Lots of improvements to the attrib plugin by Bobby Impollonia (412, 411,
    324 and 381)
  • Code coverage plugin now uses native HTML generation when coverage 3 is
    installed (264). Thanks to Timothée Peignier for the patch.
  • Xunit plugin now shows test run time in fractions of a second (317)
  • attr (from nose.plugins.attrib) can now be used as a class decorator (292)
  • Fixes Xunit plugin to handle non-UTF8 characters (395)
  • Fixes Xunit plugin for reporting generator tests (369)
  • Fixed problems with SkipTest in Python 3.2 (389)
  • Fixed bug in doctest plugin under python 3. Thanks to Thomas Kluyver
    for the patch. (391)
  • Fixes mishandling of custom exceptions during failures (405)
  • Fixed subtle bug in :option:--first-package-wins that made it
    unpredictable (293)
  • Fixes case where teardown_class() was called more than once (408). Thanks
    to Heng Liu for the patch.
  • Fixes coverage module names -- 'cal' used to also match calendar which was a
    bug (433)
  • Fixes capture plugin when exception message contains non-ascii chars (402)
  • Fixed bug in tests for twisted tools. Thanks to Thomas Kluyver
    for the patch.
  • Makes :option:--plugins more succinct when there are no options (235)

1.0.0

  • Made nose compatible with python 3. Huge thanks to Alex "foogod"
    Stewart!

0.11.4

  • Made nose compatible with Python 2.7.

0.11.3

  • Fixed default plugin manager's use of plugin overriding. Thanks to
    rob.daylife for the bug report and patch. (323).

0.11.2

  • Changed plugin loading so that external plugins loaded via extension
    points can override builtin plugins with the same name.
  • Updated multiprocess plugin and nose's packaging to allow multiprocess
    plugin to work on Windows (265).
  • Fixed bug in xunit plugin's interaction with suites and errors in
    module-level setup. Thanks to Mark McCague for the bug report (279).
  • Fixed bug in nose.loader.TestLoader that allowed Test classes that raise
    exceptions in init to crash the test run (269).
  • Fixed bugs in nose's test suite that caused spurious failures on Windows.
  • Fixed bug in twisted tools: delayed calls were not shut down on
    reactor stop. Thanks to abbeyj for the patch (278).
  • Fixed bug where root log handlers were not cleared. For example, this was
    emitting unwanted messages when testing Google App Engine websites.
  • Fixed bug in test names output by xunit plugin. Thanks to Philip
    Jenvey for the bug report and patch (280).
  • Fixed bug in profile plugin that caused stats to fail to print under Python
    2.5 and later. Thanks to djs at n-cube dot org for the bug report (285).
  • Improved logcapture filtering, with default setting to filter out log
    messages from nose itself. Thanks to gfxmonk for the patch (277).
  • The xunit plugin now tags skipped tests with a <skipped> testcase tag, and
    prevents the XML from containing invalid control characters.
  • Updated nose to be compatible with python 2.7 (305).
  • Updated loading of usage document to allow nose to run from within
    an egg archive (288).
  • Fixed IronPython checks to make nose compatible with more versions
    of IronPython. Thanks to Kevin Mitchell for the patch (316).

0.11.1

  • Fixed bug in xunit plugin xml escaping. Thanks to Nat Williams for the bug
    report (266).
  • Fixed bug in xunit plugin that could cause test run to crash after certain
    types of errors or actions by other plugins.
  • Fixed bug in testid plugin that could cause test run to crash after certain
    types of errors or actions by other plugins.
  • Fixed bug in collect only plugin that caused it to fail when collecting from
    test generators.
  • Fixed some broken html in docs.

0.11

  • All new documentation! nose's documentation is now generated by
    Sphinx. And thanks to Pam Zerbinos, it is much better organized and easier
    to use and read.
  • Two new core commandline options can help with testing namespace
    packages. :option:--first-package-wins is useful when you want to test one
    part of a namespace package that uses another part; in previous versions of
    nose, the other part of the namespace package would be evicted from
    sys.modules when the 2nd loaded. :option:--traverse-namespace is useful if
    you want nose to discover tests across entries in a package's
    path. (This was formerly the default behavior).
  • To make it easier to use custom plugins without needing setuptools,
    :func:nose.core.main and :func:nose.core.run now support an
    :doc:addplugins &lt;doc_tests/test_addplugins/test_addplugins&gt; keyword
    argument that takes a list of additional plugins to make available. Note
    that adding a plugin to this list does not activate or enable the
    plugin, only makes it available to be enabled via command-line or
    config file settings.
  • Thanks to Kevin Mitchell, nose is now more compatible with
    IronPython. IronPython is still not fully supported, but it should work. If
    you'd like to improve nose's support for IronPython further, please join the
    nose developer's list and volunteer to become the IronPython maintainer for
    nose!
  • Added multiprocess plugin that allows tests to be run in parallel
    across multiple processes.
  • Added logcapture plugin that captures logging messages and prints them with
    failing tests. Thanks to Max Ischenko for the implementation.
  • Added optional HTML coverage reports to coverage plugin. Thanks to Augie
    Fackler for the patch.
  • Added plugin that enables collection of tests in all modules. Thanks to
    Peter Fein for the patch (137).
  • Added --failed option to testid plugin. When this option is in effect, if
    any tests failed in the previous test run (so long as testid was active for
    that test run) only the failed tests will run.
  • Made it possible to 'yield test' in addition to 'yield test,' from test
    generators. Thanks to Chad Whitacre for the patch (230).
  • Fixed bug that caused traceback inspector to fail when source code file
    could not be found. Thanks to Philip Jenvey for the bug report and patch
    (236).
  • Fixed some issues limiting compatibility with IronPython. Thanks to Kevin
    Mitchell for the patch.
  • Added support for module and test case fixtures in doctest files (60).
  • Added --traverse-namespace commandline option that restores old default
    behavior of following all package path entries when loading tests from
    packages. Thanks to Philip Jenvey for the patch (167).
  • Added --first-package-wins commandline option to better support testing
    parts of namespace packages. Thanks to Jason Coombs for the bug report
    (197).
  • Added versioned nosetests scripts (123).
  • Fixed bug that would cause context teardown to fail to run in some
    cases. Thanks to John Shaw for the bug report and patch (234).
  • Enabled doctest plugin to use variable other than "_" as the default result
    variable. Thanks to Matt Good for the patch (163).
  • Fixed bug that would cause unicode output to crash output capture. Thanks to
    schickb for the bug report (227).
  • Added setUp and tearDown as valid names for module-level fixtures. Thanks to
    AgilityNerd for the patch (211).
  • Fixed bug in list of valid names for package-level fixtures. Thanks to
    Philip Jenvey for the patch (237).
  • Updated man page generation using hacked up manpage writer from
    docutils sandbox. Thanks grubertusers.sourceforge.net for the
    original module.

0.10.4

  • nose is now compatible with python 2.6.

0.10.3

  • Fixed bug in nosetests setup command that caused an exception to be raised
    if run with options. Thanks to Philip Jenvey for the bug report (191).
  • Raised score of coverage plugin to 200, so that it will execute before
    default-score plugins, and so be able to catch more import-time code. Thanks
    to Ned Batchelder for the bug report and patch (190).

0.10.2

  • nose now runs under jython (jython svn trunk only at this time). Thanks to
    Philip Jenvey, Pam Zerbinos and the other pycon sprinters (160).
  • Fixed bugs in loader, default plugin manager, and other modules that
    caused plugin exceptions to be swallowed (152, 155). Thanks to John J
    Lee for the bug report and patch.
  • Added selftest.py script, used to test a non-installed distribution of
    nose (49). Thanks to Antoine Pitrou and John J Lee for the bug report and
    patches.
  • Fixed bug in nose.importer that caused errors with namespace
    packages. Thanks to Philip Jenvey for the bug report and patch (164).
  • Fixed bug in nose.tools.with_setup that prevented use of multiple
    with_setup decorators. Thanks to tlesher for the bug report (151).
  • Fixed bugs in handling of context fixtures for tests imported into a
    package. Thanks to Gary Bernhardt for the bug report (145).
  • Fixed bugs in handling of config files and config file options for plugins
    excluded by a RestrictedPluginManager. Thanks to John J Lee and Philip
    Jenvey for the bug reports and patches (158, 166).
  • Updated ErrorClass exception reporting to be shorter and more clear. Thanks
    to John J Lee for the patch (142).
  • Allowed plugins to load tests from modules starting with '_'. Thanks to John
    J Lee for the patch (82).
  • Updated documentation about building as rpm (127).
  • Updated config to make including executable files the default on
    IronPython as well as on Windows. Thanks to sanxiyn for the bug
    report and patch (183).
  • Fixed a python 2.3 incompatibility in errorclass_failure.rst
    (173). Thanks to Philip Jenvey for the bug report and patch.
  • Classes with metaclasses can now be collected as tests (153).
  • Made sure the document tree in the selector plugin test is accurate
    and tested (144). Thanks to John J Lee for the bug report and
    patch.
  • Fixed stack level used when dropping into pdb in a doctest
    (154). Thanks to John J Lee for the bug report and patch.
  • Fixed bug in ErrorClassPlugin that made some missing keyword
    argument errors obscure (159). Thanks to Philip Jenvey for the bug
    report and patch.

0.10.1

  • Fixed bug in capture plugin that caused it to record captured output
    on the test in the wrong attribute (113).
  • Fixed bug in result proxy that caused tests to fail if they accessed
    certain result attibutes directly (114). Thanks to Neilen Marais
    for the bug report.
  • Fixed bug in capture plugin that caused other error formatters
    changes to be lost if no output was captured (124). Thanks to
    someone at ilorentz.org for the bug report.
  • Fixed several bugs in the nosetests setup command that made some
    options unusable and the command itself unusable when no options
    were set (125, 126, 128). Thanks to Alain Poirier for the bug
    reports.
  • Fixed bug in handling of string errors (130). Thanks to schl... at
    uni-oldenburg.de for the bug report.
  • Fixed bug in coverage plugin option handling that prevented
    --cover-package=mod1,mod2 from working (117). Thanks to Allen
    Bierbaum for the patch.
  • Fixed bug in profiler plugin that prevented output from being
    produced when output capture was enabled on python 2.5
    (129). Thanks to James Casbon for the patch.
  • Fixed bug in adapting 0.9 plugins to 0.10 (119 part one). Thanks to
    John J Lee for the bug report and tests.
  • Fixed bug in handling of argv in config and plugin test utilities
    (119 part two). Thanks to John J Lee for the bug report and patch.
  • Fixed bug where Failure cases due to invalid test name
    specifications were passed to plugins makeTest (120). Thanks to
    John J Lee for the bug report and patch.
  • Fixed bugs in doc css that mangled display in small windows. Thanks
    to Ben Hoyt for the bug report and Michal Kwiatkowski for the fix.
  • Made it possible to pass a list or comma-separated string as
    defaultTest to main(). Thanks to Allen Bierbaum for the suggestion
    and patch.
  • Fixed a bug in nose.selector and nose.util.getpackage that caused
    directories with names that are not legal python identifiers to be
    collected as packages (143). Thanks to John J Lee for the bug
    report.

0.10.0

  • Fixed bug that broke plugins with names containing underscores or
    hyphens. Thanks to John J Lee for the bug report and patch (Issue
    81).
  • Fixed typo in nose.all. Thanks to John J Lee for the bug report.
  • Fixed handling of test descriptions that are multiline
    docstrings. Thanks to James Casbon for the patch (Issue 50).
  • Improved documentation of doctest plugin to make it clear that
    entities may have doctests, or themselves be tests, but not
    both. Thanks to John J Lee for the bug report and patch (Issue 84).
  • Made file available in non-python-module doctests.
  • Fixed bug that made it impossible for plugins to exclude package
    directories from test discovery (Issue 89). Thanks to John J Lee
    for the bug report and patch.
  • Fixed bug that swallowed TypeError and AttributeError exceptions
    raised in some plugin calls (Issue 95). Thanks to John J Lee for
    the bug report.
  • Fixed inconsistencies in many interfaces and docs. Thanks to John J
    Lee for many bug reports.
  • Fixed bugs in rpm generation (Issue 96). Thanks to Mike Verdone for
    the bug report and http://bugs.python.org/issue644744 for the fix.
  • Fixed inconsisent use of os.environ in plugin testing
    utilities. Thanks to John J Lee for the bug report and patch (Issue
    97).
  • Fixed bug in test_address that prevented use of nose.case.Test in
    doctests (Issue 100). Thanks to John J Lee for the bug report.
  • Fixed bug in error class plugin that caused string exceptions to be
    masked (Issue 101). Thanks to depaula for the bug report.
  • Fixed bugs in tests and the profiler plugin when running under
    Windows (Issue 103). Thanks to Sidnei Da Silva for the bug report.
  • Fixed bugs in plugin calls that caused exception swallowing (Issue
    107). Thanks to John L Lee for the bug report and patch.
  • Added more plugin example doctests. Thanks to Kumar McMillan and
    John L Lee for patches and lots of help.
  • Changed default location of id file for TestId plugin from ~/.noseids to
    .noseids in the configured working directory.

0.10.0b1

  • Added support for a description attribute on tests in function and
    method test cases. Most useful for generators: set the description
    attribute on the yielded function.
  • Fixed incorrect signature of addSuccess() method in
    IPluginInterface. Thanks to nosexunit for the bug report. (Issue
    68).
  • Fixed isclass() function in nose.util so that it will not raise an
    exception when examining instances that have no accessible bases
    attribute. (Issue 65).
  • Fixed passing of tests to result; the test itself and not the
    wrapper was being passed, resulting in test description plugin hooks
    not being called. (Issue 71).
  • Fixed bugs in FailureDetail and Capture plugins, and plugin manager
    and proxy uses of chainable plugin calls. Thanks to Ian Bicking for
    the bug report (Issue 72).
  • Improved documentation.

0.10.0a2

  • Changed entry point name to nose.plugins.0.10 -- dashes and other
    non-word characters besides . are not allowed in entry point names.
    (Issue 67)
  • Fixed loading of plugins from that entry point.
  • Fixed backwards-compatibility issue in nose.util (is_generator was
    renamed isgenerator). (Issue 64)
  • Fixed bug in --logging-config option. Thanks to anton_kr... at yahoo
    com for the bug report. (Issue 62)
  • Fixed bug in handling of --where argument: first --where was not
    passed to loader as workingDir. Thanks to nosexunit for the bug
    report. (Issue 63).

0.10.0a1

  • Rewrote test loader to be more drop-in compatible with
    unittest.TestLoader and to support a more user-friendly command
    line.
  • Rewrote test runner and result classes to reduce duplication of effort.
  • Revised configuration system to be less convoluted.
  • Added nose.case.TestCase as universal wrapper for all
    testcases. Plugins always see instances of this class.
  • Added a management layer to the plugin system, allowing for easy use
    of different plugin loading schemes. The default manager loads
    builtin plugins, 0.10 plugins under the setuptools entrypoint
    nose.plugins.0-10 and provides limited support for legacy plugins
    loaded under the entrypoint nose.plugins.
  • Added plugin hooks in all phases of discovery, running and description.
  • Converted several formely core features to plugins: output capture,
    assert introspection, pdb, and skipped and deprecated test support.
  • Added id plugin that allows for easier specification of tests on the
    command line.
  • Added ErrorClassPlugin base class to allow for easier authoring of
    plugins that handle errors, like the builtin skipped and deprecated
    test plugins.
  • Added support for loading doctests from non-module files for all
    supported python versions.
  • Added score property to plugins to allow plugins to execute in a
    defined order (higher score execute first).
  • Expanded nose's own test suite to include a variety of functional tests.
  • Fixed many bugs.

0.9.3

  • Added support for user configuration files. Thanks to Antoine Pitrou for the
    patch.
  • Fixed bug that caused profiler plugin to leak 0-byte temp files. Thanks to
    Antoine Pitrou for the patch.
  • Made usage of temp files in profiler plugin more sensible. Thanks to Michael
    Sclenker for the bug report.
  • Fixed bug that stopped loading of twisted TestCase tests. Thanks to Kumar
    McMillan for the bug report.
  • Corrected man page location. Thanks to luke macken for the bug report and
    patch.
  • Added with_setup to nose.tools.all. Thanks to Allen Bierbaum for the bug
    report.
  • Altered plugin loading so that builtin plugins can be loaded without
    setuptools. Thanks to Allen Bierbaum for the suggestion.
  • Fixed a bug in the doctests plugin that caused an error when multiple
    exclude arguments were specified. Thanks to mbeachy for the bug report and
    patch.

0.9.2

  • Added nosetests setuptools command. Now you can run python setup.py
    nosetests and have access to all nose features and plugins. Thanks to James
    Casbon for the patch.
  • Added make_decorator function to nose.tools. Used to construct decorator
    functions that are well-behaved and preserve as much of the original
    function's metadata as possible. Thanks to Antoine Pitrou for the patch.
  • Added nose.twistedtools, contributed by Antoine Pitrou. This module adds
    deferred decorator that makes it simple to write deferred tests, with or
    without timeouts.
  • Added monkeypatch to doctests that keeps doctest from stepping on coverage
    when the two plugins are used together. Thanks to David Avraamides for the
    bug report.
  • Added isolation plugin. Use this plugin to automatically restore sys.modules
    after each test module or package. Thanks to Michal Kwiatkowski for the
    feature request.
  • Fixed bug where -vvvv turned off verbose logging instead of making it even
    more verbose. Thanks to Ian Bicking for the bug report.
  • Fixed bug where assert inspection would fail when the trailing """ of a
    docstring was one of the inspected lines. Thanks to cito at online dot de
    for the bug report.
  • Updated attrib plugin to allow selection of test methods by attributes of
    the test case class. Thanks to Jason Hildebrand for the patch.
  • Improved compatibility with python 2.2. Thanks to Chad Whitacre for the
    patch.
  • Fixed bug in handling of options from setup.cfg. Thanks to Kumar McMillan for
    the patch.
  • Fixed bug in generator methods, where a generator method using an inline
    funciton would result in an AttributeError. Thanks to Antoine Pitrou for the
    bug report.
  • Updated coverage plugin to ignore lines tagged with pragma: no cover,
    matching the behavior of coverage.py on the command line. Thanks to Bill
    Zingler for the bug report.
  • Added a man page for nosetests. Thanks to Gustavo Noronha Silva for the
    request and providing an example.

0.9.1

  • New function nose.runmodule() finds and runs tests only in a
    single module, which defaults to main (like unittest.main() or
    doctest.runmodule()). Thanks Greg Wilson for the suggestion.
  • Multiple -w (--where) arguments can now be used in one command line,
    to find and run tests in multiple locations. Thanks Titus Brown for
    the suggestion.
  • Multiple --include and --exclude arguments are now accepted in one command
    line. Thanks Michal Kwiatkowski for the feature request.
  • Coverage will now include modules not imported by any test when
    using the new --cover-inclusive switch. Thanks James Casbon for the
    patch.
  • module:TestClass test selections now properly select all tests in the test
    class.
  • startTest and stopTest are now called in plugins at the beginning and end of
    test suites, including test modules, as well as individual tests. Thanks
    Michal Kwiatkowski for the suggestion.
  • Fix bug in test selection when run as python setup.py test: 'test' was
    passing through and being used as the test name selection. Thanks Kumar
    McMillan for the bug report.
  • Fix bug in handling of -x/--stop option where the test run would stop on
    skipped or deprecated tests. Thanks Kumar McMillan for the bug report.
  • Fix bug in loading tests from projects with layouts that place modules in
    /lib or /src dirs and tests in a parallel /tests dir.
  • Fix bug in python version detection. Thanks Kevin Dangoor for the bug report
    and fix.
  • Fix log message in selector that could raise IndexError. Thanks Kumar
    McMillan for the bug report and patch.
  • Fix bug in handling doctest extension arguments specified in environment and
    on command line. Thanks Ian Bicking for the bug report.
  • Fix bug in running fixtures (setup/teardown) that are not functions, and
    report a better error message when a fixture is not callable. Thanks Ian
    Bicking for the bug report.

0.9.0

  • More unit tests and better test coverage. Numerous bugfixes deriving from
    same.
  • Make --exe option do what it says, and turn it on by default on
    Windows. Add --noexe option so windows users can turn if off.Thanks
    richard at artsalliancemedia dot com for the bug reports.
  • Handle a working directory that happens to be in the middle of a package
    more gracefully. Thanks Max Ischenko for the bug report and test case.
  • Fix bugs in test name comparison when a test module is specified whose name
    overlaps that of a non-test module. Thanks Max Ischenko for the bug report
    and test case.
  • Fix warning spam when a non-existent test file is requested on the command
    line. Thanks Max Ischenko for the bug report.

0.9.0b2

  • Allow --debug to set any logger to DEBUG. Thanks to casbon at gmail dot com
    for the patch.
  • Fix doctest help, which was missing notes about the environment variables
    that it accepts. Thanks to Kumar McMillan for the patch.
  • Restore sys.stdout after run() in nose.core. Thanks to Titus Brown for the
    bug report.
  • Correct handling of trailing comma in attrib plugin args. Thanks Titus Brown
    for the patch.

0.9.0b1

  • Fix bug in handling of OR conditions in attrib plugin. Thanks to Titus
    Brown for the bug report.
  • Fix bug in nose.importer that would cause an attribute error when a local
    module shadowed a builtin, or other object in sys.modules, without a
    file attribute. Thanks to casbon at gmail dot com for the bug report.
  • Fix bug in nose.tools decorators that would cause decorated tests to appear
    with incorrect names in result output.

0.9.0a2

  • In TestLoader, use inspect's isfunction() and ismethod() to filter functions
    and methods, instead of callable(). Thanks to Kumar McMillan for reporting
    the bug.
  • Fix doctest plugin: return an empty iterable when no tests are found in a
    directory instead of None. Thanks to Kumar McMillan for the bug report and
    patch.
  • Ignore executable python modules, unless run with --exe file. This is a
    partial defense against nose causing trouble by loading python modules that
    are not import-safe. The full defense: don't write modules that aren't
    import safe!
  • Catch and warn about errors on plugin load instead of dying.
  • Renamed builtin profile module from nose.plugins.profile to
    nose.plugins.prof to avoid shadowing stdlib profile.py module.

0.9.0a1

  • Add support for plugins, with hooks for selecting, loading and reporting on
    tests. Doctest and coverage are now plugins.
  • Add builtin plugins for profiling with hotshot, selecting tests by
    attribute (contributed by Mika Eloranta), and warning of missed tests
    specified on command line.
  • Change command line test selection syntax to match unittest. Thanks to Titus
    Brown for the suggestion.
  • Option to drop into pdb on error or failure.
  • Option to stop running on first error or failure. Thanks to Kevin Dangoor
    for the suggestion.
  • Support for doctests in files other than python modules (python 2.4 only)
  • Reimplement base test selection as single self-contained class.
  • Reimplement test loading as unittest-compatible TestLoader class.
  • Remove all monkeypatching.
  • Reimplement output capture and assert introspection support in
    unittest-compatible Result class.
  • Better support for multiline constructions in assert introspection.
  • More context output with assert introspections.
  • Refactor setuptools test command support to use proxied result, which
    enables output capture and assert introspection support without
    monkeypatching. Thanks to Philip J. Eby for the suggestion and skeleton
    implementation.
  • Add support for generators in test classes. Thanks to Jay Parlar for the
    suggestion and patch.
  • Add nose.tools package with some helpful test-composition functions and
    decorators, including raises, contributed by Scot Doyle.
  • Reimplement nose.main (TestProgram) to have unittest-compatible signature.
  • All-new import path handling. You can even turn it off! (If you don't,
    nose will ensure that all directories from which it imports anything are on
    sys.path before the import.)
  • Logging package used for verbose logging.
  • Support for skipped and deprecated tests.
  • Configuration is no longer global.

0.8.7

  • Add support for py.test-style test generators. Thanks to Jay Parlar for
    the suggestion.
  • Fix bug in doctest discovery. Thanks to Richard Cooper for the bug report.
  • Fix bug in output capture being appended to later exceptions. Thanks to
    Titus Brown for the patch that uncovered the bug.
  • Fix bug(?) in Exception patch that caused masked hasattr/getattr loops
    to either become actual infinite loops, or at least take so long to finally
    error out that they might as well be infinite.
  • Add -m option to restrict test running to only tests in a particular package
    or module. Like the -f option, -m does not restrict test loading, only
    test execution.
  • When loading and running a test module, ensure that the module's path is in
    sys.path for the duration of the run, not just while importing the module.
  • Add id() method to all callable test classes, for greater unittest
    compatibility.

0.8.6

  • Fix bug with coverage output when sys.modules contains entries without
    file attributes
  • Added -p (--cover-packages) switch that may be used to restrict coverage
    report to modules in the indicated package(s)

0.8.5

  • Output capture and verbose assertion errors now work when run like
    'python setup.py test', as advertised.
  • Code coverage improvements: now coverage will be output for all modules
    imported by any means that were not in sys.modules at the start of the test
    run. By default, test modules will be excluded from the coverage report, but
    you can include them with the -t (--cover-tests) option.

0.8.4

  • Fix bugs in handling of setup/teardown fixtures that could cause TypeError
    exceptions in fixtures to be silently ignored, or multiple fixtures of the
    same type to run. Thanks to Titus Brown for the bug report.

0.8.3

  • Add -V (--version) switch to nosetests
  • Fix bug where sys.path would not be set up correctly when running some
    tests, producing spurious import errors (Thanks to Titus Brown and Mike
    Thomson for the bug reports)
  • For test classses not derived from unittest.TestCase, output (module.Class)
    "doc string" as test description, when method doc string is available
    (Thanks to David Keeney for the suggestion, even if this isn't quite what he
    meant)

0.8.2

  • Revise import to bypass sys.path and manipulate sys.modules more
    intelligently, ensuring that the test module we think we are loading is the
    module we actually load, and that modules loaded by other imports are not
    reloaded without cause
  • Allow test directories inside of packages. Formerly directories matching
    testMatch but lacking an init.py would cause an ImportError when located
    inside of packages
  • Fix bugs in different handling of -f switch in combination with -w and -o

0.8.1

  • Fix bug in main() that resulted in incorrect exit status for nosetests
    script when tests fail
  • Add missing test files to MANIFEST.in
  • Miscellaneous pylint cleanups

0.8

  • Add doctest support
  • Add optional code coverage support, using Ned Batchelder's coverage.py;
    activate with --coverage switch or NOSE_COVERAGE environment variable
  • More informative error message on import error
  • Fix bug where module setup could be called twice and teardown skipped
    for certain setup method names.
  • main() returns success value, does not exit. run_exit() added to support
    old behavior; nosetests script now calls nose.run_exit()

0.7.5

  • Fix bus error on exit
  • Discover tests inside of non-TestCase classes that match testMatch
  • Reorganize selftest: now selftest tests the output of a full nose run
  • Add test_with_setup.py contributed by Kumar McMillan

0.7.2

  • Refactor and correct bugs in discovery and test loading
  • Reorganize and expand documentation
  • Add -f (run this test file only) switch

0.7.1

  • Bugfix release: test files in root of working directory were not being
    stripped of file extension before import.

0.7

  • Change license to LGPL
  • Major rework of output capture and assert introspection
  • Improve test discovery: now finds tests in packages
  • Replace -n switch ('no cwd') with -w switch ('look here')

0.6

  • New nosetests script
  • Allow specification of names on command line that are loadable but not
    directly loadable as modules (eg nosetests -o path/to/tests.py)
  • Add optional py.test-like assert introspection. Thanks to Kevin Dangoor
    for the suggestion.
  • Improvements to selftest

0.5.1

  • Increased compatibility with python 2.3 (and maybe earlier)
  • Increased compatibility with tests written for py.test: now calls
    module.setup_module(module) if module.setup_module() fails

Changes:

  • Use options() instead of add_options()
  • addSkip() and addDeprecated() will not be called
  • varied error classes, no more hard-coded error handlers
  • check for error classes in addError instead
  • addError() and addFailure() will not get capt or tb_info arguments
  • these values are accessible in the test, if present.
  • wantFile()
  • optional package argument is never passed

New methods available:

  • afterTest
  • beforeTest
  • describeTest
  • formatError
  • formatFailure
  • handleError
  • handleFailure
  • prepareTestLoader
  • prepareTestResult
  • prepareTestRunner
  • testName

pyyaml -> 3.12

3.10


  • Do not try to build LibYAML bindings on platforms other than CPython
    (Thank to olt(at)bogosoft(dot)com).
  • Clear cyclic references in the parser and the emitter
    (Thank to kristjan(at)ccpgames(dot)com).
  • Dropped support for Python 2.3 and 2.4.

3.09


  • Fixed an obscure scanner error not reported when there is
    no line break at the end of the stream (Thank to Ingy).
  • Fixed use of uninitialized memory when emitting anchors with
    LibYAML bindings (Thank to cegner(at)yahoo-inc(dot)com).
  • Fixed emitting incorrect BOM characters for UTF-16 (Thank to
    Valentin Nechayev)
  • Fixed the emitter for folded scalars not respecting the preferred
    line width (Thank to Ingy).
  • Fixed a subtle ordering issue with emitting '%TAG' directives
    (Thank to Andrey Somov).
  • Fixed performance regression with LibYAML bindings.

3.08


  • Python 3 support (Thank to Erick Tryzelaar).
  • Use Cython instead of Pyrex to build LibYAML bindings.
  • Refactored support for unicode and byte input/output streams.

3.07


  • The emitter learned to use an optional indentation indicator
    for block scalar; thus scalars with leading whitespaces
    could now be represented in a literal or folded style.
  • The test suite is now included in the source distribution.
    To run the tests, type 'python setup.py test'.
  • Refactored the test suite: dropped unittest in favor of
    a custom test appliance.
  • Fixed the path resolver in CDumper.
  • Forced an explicit document end indicator when there is
    a possibility of parsing ambiguity.
  • More setup.py improvements: the package should be usable
    when any combination of setuptools, Pyrex and LibYAML
    is installed.
  • Windows binary packages are built against LibYAML-0.1.2.
  • Minor typos and corrections (Thank to Ingy dot Net
    and Andrey Somov).

3.06


  • setup.py checks whether LibYAML is installed and if so, builds
    and installs LibYAML bindings. To force or disable installation
    of LibYAML bindings, use '--with-libyaml' or '--without-libyaml'
    respectively.
  • T

@codecov
Copy link

codecov bot commented Sep 21, 2017

Codecov Report

Merging #666 into master will decrease coverage by <.01%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #666      +/-   ##
==========================================
- Coverage   91.22%   91.22%   -0.01%     
==========================================
  Files          95       95              
  Lines       23409    23409              
==========================================
- Hits        21356    21354       -2     
- Misses       2053     2055       +2
Impacted Files Coverage Δ
bzt/utils.py 83.76% <0%> (-0.28%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 2db76ee...f12080a. Read the comment docs.

@undera
Copy link
Contributor

undera commented Sep 22, 2017

Who are you? A spambot?

@undera undera closed this Sep 22, 2017
@undera
Copy link
Contributor

undera commented Sep 22, 2017

PR #666 has summoned something from below...

@dimp-gh dimp-gh deleted the pyup-initial-update branch September 27, 2017 11:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants