CHANGES
=======

1.8.0
-----

* Update changelog
* Drop support for deprecated arguments of add\_cleanup (closes #945)
* Return copy of connected clients when iterating over them (close… (#962)
* Return copy of connected clients when iterating over them (closes #961)
* Silent unittest of deprecated API
* Drop support for old-style assertion (closes #452)
* Add get\_current\_scope()  (fixes #952)
* Support light background mode (closes #925)
* Small changelog fix
* Added log for handling fatal error (closes #950)
* Add test execution time to xunit report

1.7.10
------

* Changelog
* Improve skip reason for excluded tests
* Fix bors toml
* Add tests\_distributer to allow forcing and excluding tests for specific worker
* Refactor parallel to use worker\_wrapper
* Add repr method to \_IgnoredWarning
* Add bors
* Fix badges in README
* Add slash.ignored\_warnings context
* Proper fix for requirement leaks across sibling classes (closes #928)
* Removing unneeded Pylint ignore marker
* Changelog
* Revert "Fix requirement leaks across sibling classes (closes #928)"
* Changelog
* Add changelog to #936
* Changelog
* Fix requirement leaks across sibling classes (closes #928)
* Parallel should stop on fatal exception (closes #934)
* removing second fixture in fixture some unit tests

1.7.9
-----

* Changelog
* Revert "Fix background color on white terminals (closes #925)"
* Correctly propagating exceptions out of the test\_start or test\_end hooks
* Modifying the fixture test\_start unit test to fix active fixture order

1.7.8
-----

* Fix background color on white terminals (closes #925)
* Changelog
* Change return-code of failed sessions (fixes #926)
* Allowing Windows to fail

1.7.7
-----

* Changelog
* Add test for fixture parametrization labels
* Update .travis.yml
* Skipping xunit parallel suite on Windows
* Fixing unit test cleanup order issue
* Normalizing paths in test loading unit test fixture
* Skipping unit tests depending on symbolic link for Windows
* Using os.path.sep instead of hard coded / in unit tests
* Skipping parallel unit tests on Windows
* Adding Python 3.7 on Windows to test matrix
* slash list --relative not working on Windows path
* Fix possible KeyError when worker keepalive server is delayed (closes #919)
* Windows path upward limit is not always c:\
* Fix swallowing of broken pipe errors from console reporter
* Update pylint and version (closes #770)
* Escaping special characters \_\_file\_\_ path
* Correctly call fixture test\_start for each test
* Fix unused variable
* Allow unit test suite writer to work with Windows path
* Check worker timed out only among connected clients (closes #907)

1.7.6
-----

* Changelog
* Changelog
* Fix 'list-plugins' output for plugin name with spaces (closes #904)
* Allow parallel worker execution on Windows
* INFRADEV-11419: Unstarted tests not written to resume db in case of interruption
* Removing double colon causing doc rendering issues
* Add 3.7 to test matrix

1.7.5
-----

* Docs: Fix passing parameter to fixture
* Update changelog
* Fix pattern matching for leading 'not' patterns (closes #897)
* Wrap hooks.log\_file\_closed triggering with handling\_exceptions (closes #895)

1.7.4
-----

* Fix backslash-python dependency check

1.7.3
-----

* changelog
* Fix exception handling on fixture.test\_end (closes #887)
* Fix Repr of \_Cleanup for callbacks with no \_\_module\_\_
* Fix test\_test\_causes\_worker\_exit
* Improve \_Cleanup repr
* INFRADEV-11243: Support --unstarted-only and --failed-only flags for slash resume
* Start worker keepalive thread before collecting tests (closes #888)
* Changelog
* Correctly call fixture test\_end on test error and failure

1.7.2
-----

* Changelog
* Fix fixture invalidation logic on broader scopes (closes #882)
* Fix handling exceptions during Application.\_\_exit\_\_() (closes #879)
* Fix usage of backslash plugin with no session at Notification plugin (closes #878)

1.7.1
-----

* Changelog
* Support disabling convertion of log error to slash-error by extra's 'capture=False' (closes #876)
* Increase more timeouts in test\_parallel to avoid random failures

1.7.0
-----

* Changelog
* Increase timeouts in test\_parallel to avoid random failures
* Results with errors or failures should return is\_not\_run() == False (closes #868)
* Add test for session\_start and before\_session\_start interruptions
* Improve interruptions test
* Add error for error level logs (closes #825)
* Add unittest for ensuring requirements are called eagerly (closes #687)
* slash report session as success though it has child error (closes #863)
* Remove unused import
* Fix broken tests
* Fix test\_scope\_management\_with\_hook\_error\_test\_end
* Fix handling of exceptions during \_run\_single\_test() before test started (fixes #864)
* Add signals handling plugin (closes #12)
* Fix interruptions happening during session scope (closes #821)
* Assert that no internal errors happen during suite write runs (closes #860)
* Kill workers with SIGTERM instead of SIGINT (closes #822)
* Use dedicated server for keepalive from workers (closes #823)
* Move id allocation to after tests\_loaded (closes #835)
* Improve comment on variation ordering issue
* In parallel session, save result to resume db only from parent session (closes #852)
* Refactor parent/child protocol of identifying tests (closes #831)
* Docs and changelog for #836
* Support --failed-first and --unstarted-first for resume (closes #836)
* Add 'slash.app\_quit' hook (closes #843)
* Add documentation to ignore\_warnings (fix #848)
* Use AND operator between  parameters (fixes #846)
* ignore\_warnings: Support regex matching for filename (closes #844)
* Update deseert dependency (>=1.3.4)
* Whitespace and typo fixes
* Implement usefixtures decorator (closes #648)
* Remove usage of deprecated API and add enforcement to unittests (closes #829)
* Support get\_current\_cleanup\_phase and is\_in\_cleanup API (closes #824)
* Collect warnings that were emitted before session started (closes #738)
* Mergify initial configuration
* Fix notification formatting (closes #830)

1.6.5
-----

* Changelog
* Fix handling exceptions during \_log\_file\_handler\_context (closes #837)
* Changelog
* Support tags on fixture objects (closes #650)
* Move site.load() of slash-list before creating session (closes #737)

1.6.4
-----

* Consider repr blacklisted types during object distilling, handle \_\_dict\_\_ access exceptions
* Add missing changelog for 803
* Add exception class for internal Slash errors: SlashInternalError (closes #803)
* Swallow IO Errors from console reporter (closes #804)

1.6.3
-----

* changelog
* traceback utils: Allowing to ignore repr for specific classes (closes #815)

1.6.2
-----

* Drop tmuxp requirement (replaced by libtmux)
* Add 3.7-dev to Travis matrix
* Changelog

1.6.1
-----

* Fix pypi.org description
* Limit deployment to TRAVIS\_PYLINT=false

1.6.0
-----

* Condition pypi release only on 3.6
* Changelog
* Metadata.mark\_interactive() no longer touch file path or address (closes #761)
* Forward registers\_on keyword arguments to gossip.register (closes #771)
* Cosmetics
* Add log.show\_raw\_param\_values, causing raw parametrization values to be emitted in test start log lines (closes #769)
* Notifications plugin should not do anything if it is running within a parallel child (closes #776)
* Make coverage plugin support parallel runs (closes #777)
* Worker should disconnect and kill keepalive thread only after cleaups called
* Added ability to exclude parameter value combinations via slash.exclude (closes #528)
* Cosmetics
* Document slash.plugins.parallel
* Support children session errors (closes #783)
* Support marker for plugins that are compatible with parallel mode (closes #785)
* Add log message for CleanupManager.add\_cleanup
* Support project name configuration (closes #779)
* Fix handling exceptions which raised from None in interactive session (closes #772)
* Add new hooks: 'before\_session\_cleanup' & 'after\_session\_end' (closes #782)
* Improve repr methods
* Update README's supported versions
* Remove old style string formatting from the code
* Add log message for workers command line
* Pin pylint to 1.7.x due to 1.8.x instability

1.5.1
-----

* Changelog
* Fix traceback variable capture for cases where \`self=None\` (closes #767)
* Add missing changelog entry
* Ignore AUTHORS and ChangeLog autogenerated files

1.5.0
-----

* Changelog
* Add test case (closes #760)
* Fix xunit plugin to work properly in parallel sessions (closes #763)
* Improve error message when trying to pass invalid config overrides
* Make console reporting of erroneous/failed tests clearer (closes #709)
* Documentation fixes
* Fix hook documentation generation
* Documentation updates
* Add config.root.interactive.expose\_g\_globals, controlling whether slash.g is exposed in interactive namespaces
* Update plugins documentation
* Update plugins documentation
* Add 'slash.before\_interactive\_shell' hook (fix #697)
* Change brotli file extensions to .br
* Log attributes of \`self\` when using log.traceback\_variables=yes (closes #762)
* Added metadata.set\_file\_path (closes #664)
* Add slash.ignore\_warnings to filter unwanted warnings during sessions (closes #752)
* Documentation for #755
* Allow use of "timestamp" in log path formatting (closes #755)
* Ignore pytest cache
* Add SessionLogging.get\_active\_log\_paths() method
* Add flag to consider 'slash list' warnings as errors (fix #757)
* Session global result now returns is\_success=False if any test failed or has errors (closes #747)
* Improve log message of AST-originating warnings (fix #754)
* Revert "Revert "Revert "Restore doc/pip\_requirements.txt -- readthedocs.org needs it in order to build docs"""
* Revert "Revert "Restore doc/pip\_requirements.txt -- readthedocs.org needs it in order to build docs""
* Fix handling of exceptions propagated from interruption hooks (closes #745)
* Revert "Restore doc/pip\_requirements.txt -- readthedocs.org needs it in order to build docs"
* Restore doc/pip\_requirements.txt -- readthedocs.org needs it in order to build docs
* Run pylint in a prallel worker in travis
* Refactor \_log\_file\_handler\_context
* Support slash rerun
* Fix cr
* session.results.current is now a complete synonym for context.result (closes #740)

1.4.6
-----

* Changelog
* Fix handling of session-scoped errors without exception types (closes #700)
* Coverage plugin: swallow exception if no data is available on reporting (closes #701)

1.4.5
-----

* Drop Python 3.3 from Travis
* Move to use pytest-catchlog
* Drop pytest-xdist from testing requirements
* Revert "Pin pylib dependency to avoid conflict with pytest"
* Pin pylib dependency to avoid conflict with pytest

1.4.4
-----

* Fix coloring for non TTY stdout (fix #679)

1.4.3
-----

* Fix handling of custom interruption exceptions (fix #670)
* Changelog
* Adding colorama init and deinit
* Changelog fix
* Add from\_email to notifications plugin configuration (fix #665)

1.4.2
-----

* Changelog

1.4.1
-----

* Changelog
* Add option to include extra details in email notifications
* Restore default enabled state for misc. notification services
* Add current\_config property to plugins

1.4.0
-----

* Changelog
* Fix email template
* Add prepare\_notification hook (formerly slash-gossip.prepare\_notification)
* Improve email template
* Improve notifications plugin (fix #622)
* Minor handling\_exceptions improvements

1.3.2
-----

* Use IPython 5.x LTS for Python version before 3.3
* Use IPython 5.x LTS for Python version before 3.3
* Documentation fixes
* Add host\_fqdn & host\_name attributes to session (fix #651)
* Support internal plugins (fix #647)
* Fix worker error log name
* Fix worker errors file name
* Change default value for worker errors file
* Report to server the error from workers if they fail (fix #637)

1.3.1
-----

* Remove GH releases code

1.3.0
-----

* Changelog
* Documentation fixes
* Fix assertion introspection disabling feature (#596)
* Add configuration variable to allow disable assertion introspection (fix #596)
* Upload GitHub releases (fix #643)
* Add documentation for fixture requirements
* Consider requirements on fixture functions when computing test requirements (fix #520)
* Support multiple registrations on the same plugin's method with registers\_on (fix #642)
* Add docs for inhibit\_unhandled\_exception\_traceback
* Support inhibit\_unhandled\_exception\_traceback (fix #617)
* Remove useage of deprecated API
* Run pylint only on Python 3.6
* Empty commit for bumping minor version
* Require pbr 3.0
* Support forcing/forbidden console colors (fix #635)

1.2.5
-----

* Add error.exception\_str for future compatibility

1.2.4
-----

* Changelog
* Fallback to partial traceback if can't collect the full one
* fixup! Fix slash.exclude to work across fixture namespaces (fix #581)
* Add Fixture namespace level to namespace repr
* Fix fixture resolution test
* Fixture lookup: avoid accidentally registering fixtures as original names when \`name=\` is used (fix #585)
* Add \_\_repr\_\_ to resumed test records
* Update changelog for 1.2.4
* Fix slash.exclude to work across fixture namespaces (fix #581)
* Fix pylint warnings
* Make tests\_loaded include interactive tests when fired (fix #580)

1.2.2
-----

* Collect tests into a list rather than a generator (fix #564)

1.2.1
-----

* Remove version from setup.cfg

1.2.0
-----

* Changelog
* Fix behavior of stop-on-error (-x) when errors are reported on previous tests (fix #551)
* Switch to PBR (fix #529)
* Added changelog entry for #508
* Changelog
* Documentation
* Typo fix
* Cosmetics
* Fix provides/needs mechanism to handle "empty registrations" (fix #490)

1.1.9
-----

* Version bump
* Properly fail on invalid test names (fix #540)

1.1.8
-----

* Bump version
* Temporarily ignore ImportWarnings

1.1.7
-----

* Bump version
* Fix warnings capture for native warnings (fix #530)

1.1.6
-----

* Bump version
* Make thread\_ignore\_exception\_context an object context to avoid contextlib.contextmanager issues (fix #501)

1.1.5
-----

* Bump version
* Fix path iteration sorting
* Log all packages on build failures

1.1.4
-----

* Bump version
* Skip directories starting with dot when loading tests (fix #499)

1.1.3
-----

* Bump version
* Fix hook argument definitions

1.1.2
-----

* Bump version

1.1.1
-----

