pytest-xdist-hacks / CHANGELOG


- fix incompatibilities with pytest-2.2.0 (allow multiple
  pytest_runtest_logreport reports for a test item)


- terser collection reporting

- fix issue34 - distributed testing with -p plugin now works correctly

- fix race condition in looponfail mode where a concurrent file removal
  could cause a crash


- adapt to and require pytest-2.0 changes, rsyncdirs and rsyncignore can now
  only be specified in [pytest] sections of ini files, see "py.test -h"
  for details.
- major internal refactoring to match the pytest-2.0 event refactoring
  - perform test collection always at slave side instead of at the master
  - make python2/python3 bridging work, remove usage of pickling
- improve initial reporting by using line-rewriting
- remove all trailing whitespace from source


- perform distributed testing related reporting in the plugin
  rather than having dist-related code in the generic py.test

- depend on execnet-1.0.7 which adds "env1:NAME=value" keys to
  gateway specification strings.

- show detailed gateway setup and platform information only when
  "-v" or "--verbose" is specified.


- fix --looponfailing - it would not actually run against the fully changed
  source tree when initial conftest files load application state.

- adapt for py-1.3.1's new --maxfailure option


- fix issue79: sessionfinish/teardown hooks are now called systematically
  on the slave side
- introduce a new data input/output mechanism to allow the master side
  to send and receive data from a slave.
- fix race condition in underlying pickling/unpickling handling
- use and require new register hooks facility of py.test>=1.3.0
- require improved execnet>=1.0.6 because of various race conditions
  that can arise in xdist testing modes.
- fix some python3 related pickling related race conditions
- fix PyPI description


- fix an indefinite hang which would wait for events although no events
  are pending - this happened if items arrive very quickly while
  the "reschedule-event" tried unconditionally avoiding a busy-loop
  and not schedule new work.


- moved code out of py-1.1.1 into its own plugin
- use a new, faster and more sensible model to do load-balancing
  of tests - now no magic "MAXITEMSPERHOST" is needed and load-testing
  works effectively even with very few tests.
- cleaned up termination handling
- make -x cause hard killing of test nodes to decrease wait time
  until the traceback shows up on first failure