| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds to blead the accepted PR
https://github.com/Perl-Toolchain-Gang/Test-Harness/pull/98
but the updated module has not been released.
This commit allows a many-core processor to run the Perl test suite more
efficiently.
Prior to this commit, the timers for counting elapsed time and CPU usage
were begun when a job's first output appears. This yields inaccurate
results. These results are saved in t/test_state for future runs so
that they can start the longest-running tests first, which leads to
using the available cores more efficiently. (If you start a long running
test after everything else is nearly done, you have to wait for it to
finish before the suite as a whole is; if you start the long ones first,
and the shortest last, you don't have to wait very long for any
stragglers to complete.) Inaccurate results here lead to this
situation, which we were often seeing in the podcheck.t test.
The worst case is if there is heavy computation at the beginning of the
test being run. podcheck, for example, examines all the pods in the
directory structure to find which links to other pods do or do not have
corresponding anchors. Output doesn't happen until the analysis is
complete. On my system, this takes over 30 seconds, but prior to this
commit, what was noted was just the time required to do the output,
about 200 milliseconds. The result was that podcheck was viewed as
being one of the shortest tests run, so was started late in the process,
and generally held up the completion of it.
This commit by itself doesn't improve the test completion very much,
because, test tests are run a whole directory at a time, and the
directory podcheck is in, for example, is run last. The next commit
addresses that.
|
|
|
|
|
|
|
| |
[DELTA]
3.42 19-03-2018
- Enable rulesfile.t to run in core
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.41 27-02-2018
- Released 3.40_01 without code modifications
3.40_01 23-07-2017
- Return handle for pipes and sockets #58 (Erik Huelsmann)
- TAP v13 plan allows trailing whitespace (Steffen Schwigon)
- prove: add a --statefile=<path> option to customize the .prove file
(Ævar Arnfjörð Bjarmason)
- Avoid non-deterministic source handling, make a SourceHandler tie an
error. (Michael Schwern, Leon Timmermans)
- Fix and simplify MSWin32 colorization (Roy Ivy III)
- Fix file source handler to accept single extensions option (Tomoki Aonuma)
- Spelling fixes (Brian Wightman)
|
|
|
|
|
|
|
| |
[DELTA]
3.39 06-04-2017
- Make tests pass when PERL_USE_UNSAFE_INC=0
|
| |
|
|
|
|
|
|
| |
I tried to follow the numbering convention of the module,
bumping every module if the versions are synchronized, bumping
just the primary module if not.
|
| |
|
|
|
|
|
|
|
|
| |
[DELTA]
3.35 2015-01-14
- Fix prove --version to actually print the version (Leon Timmermans, #101216)
- Add --version to usage message (Leon Timmermans, #101215)
|
|
|
|
|
|
|
| |
[DELTA]
3.34 2014-11-02
- Enable printing CPU times spent per test (Jarkko Hietaniemi)
|
|
|
|
|
|
|
| |
[DELTA]
3.33
- Various documentation fixes (Leon Timmermans, Justin Cook)
|
|
|
|
|
|
|
| |
[DELTA]
3.32 2014-06-11
- Remove harness_class from argument hash in T::H::E (Leon Timmermans)
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.31 2014-06-07
- Implement external rulesfile for TAP::Harness (David Golden)
- Add harness_class argument to TAP::Harness::Env (Leon Timmermans)
- Make prove respect environmental variables #28 (Leon Timmermans)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.30 2013-11-12
- Fix missing parent prereq in META.{yml,json} and NotBuild.PL
(Dagfinn Ilmari Mannsåker, #89650)
- Respect PERL5LIB in tainting source handler test (Dagfinn Ilmari Mannsåker,
Leon Timmermans)
- Use base instead of parent:
This dist is used for testing all other modules, so it should avoid
having any non-core prerequisites. Having parent as a prereq leads to a
circular dependency of parent -> Test::More -> Test::Harness. (Graham Knop)
- Various POD fixes (Nathan Gary Glenn)
- Don't localize all of %ENV in harness.t (Craig Berry)
- Give TAP::Harness::Beyond a unique NAME (Leon Timmermans)
|
|
|
|
| |
This includes the blead CUSTOMIZATION of t/source.t.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.28 2013-05-02
- Bugfix: Fix taint failures on Windows (Jan Dubois)
3.27 2013-04-30
- Dramatically reduce memory usage (Nick Clark, RT #84939)
- Store test_num (in Grammar.pm) as a number instead of a string.
Reduces memory usage (Nick Clark, RT #84939)
- PERL5LIB is always propogated to a test's @INC, even with taint more
(Schwern, RT #84377)
The local modifications to t/source.t are retained. [rt.cpan.org #64353]
|
|
|
|
|
|
| |
[DELTA]
Finishes off what was started with 83044e8d6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
env.opts.t by its very existence causes the test suite to die on
VMS with:
$ perl TEST ../cpan/Test-Harness/t/compat/env.opts.t
Can't read ../cpan/test-harness/t/compat/env.opts.t.
%RMS-F-SYN, file specification syntax error
Enabling the extended filename character set will fix this but that's
not (yet) the default setting. So here we simply rename the file to
something legal.
Reported upstream as [rt.cpan.org #78127].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.25 2012-06-05
- Rereleased to fix CPAN permission problem. No functional change.
3.24 2012-06-03
- RT #74393: corrected typo in M::B integration docs.
- RT #63473: fix typo.
- RT #49732: Attempt to load File::Glob::Windows to get correct
glob semantics on Win32.
- RT #47890: Don't use Win32::GetShortPathName.
- RT #64404: Ignore textness ('-T') of script when reading shebang.
- Handle the case where we don't know the wait status of the
test more gracefully.
- Make the test summary 'ok' line overrideable so that it can be
changed to a plugin to make the output of prove idempotent.
- Apply upstream patch:
http://perl5.git.perl.org/perl.git/commit \
/6359c64336d99060952232e7e300bd3c31afead8
In testargs.t in Test::Harness, don't run a world-writable file.
The test writes a file, then changes the mode, then executes it. The file needs
to be +x to be executable (on many platforms). The file will need to be +w to
be deletable on some platforms. But setting the file world writable just before
running it feels like a bad idea, given that the file's name is as predictable
as process IDs, as there's a race condition to break into the account running
perl's tests.
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.23 2011-02-20
- Merge in changes from core. Thanks BinGOs.
- Made SourceHandler understand that an executable binary file
is probably an executable.
- Added workaround for Getopt::Long 2.25 handling of
multivalue options. Fixes test failure on stock perl 5.6.2.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.22 2010-08-14
- Allow TAP::Parser to recognize a nested BAIL_OUT directive.
- Add brief HOWTO for creating and running pgTAP tests to
TAP::Parser::SourceHandler::pgTAP.
- Fix trailing plan + embedded YAML + TAP 13 case. Thanks to
Steffen Schwigon. #54518.
- Numerous spelling fixes. Thanks to Ville Skytt<C3><A4>.
- Add new option --tapversion for prove to set the default
assumed TAP version. Thanks to Steffen Schwigon.
- Fixed tests to run successfully under Devel::Cover. Thanks to
Phillipe Bruhat.
- Fixed injection of test args to work with general executables
as well as Perl scripts (#59186).
- Allow multiple --ext=.foo arguments to prove, to allow running
different types of tests in the same prove run.
- App::Prove::extension() is now App::Prove::extensions(), and
returns an arrayref of extensions, rather than a single scalar.
The same change has been made to App::Prove::State::extension().
- Preserve old semantics for test scripts with a shebang line
by favouring Perl as the intepreter for any file with a
shebang (#59457).
- Add --trap (summary on Ctrl-C) option to prove (#59427).
- Removed TAP::Parser::SourceHandler::pgTAP. Find it in its own
distribution on CPAN.
- Source options to prove can now be specified so as to be passed to
the source as a hash reference, eg:
prove --source XYZ --xyz-option pset=foo=bar
Ths "pset" option will be passed as a hash reference with the key
"foo" and the value "bar".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mark UPSTREAM as 'cpan' in Maintainers.pl
[DELTA]
3.21 2010-01-30
- Add test to ensure we're not depending on a module we no
longer ship.
- Fix up skip counts for Windows case - tests were failing
on Windows.
3.20 2010-01-22
- Remove references / dependency on TAP::Parser::Source::Perl
3.19 2010-01-20
- Avoid depending on Module::Build. The resulting circular
dependency made it impossible to install Test::Harness and/or
Module::Build in some cases.
3.18 2010-01-19
- Handle the case where the filename of the perl executable
contains space. Thanks to kmx.
- Various documentation fixes.
3.17_04 2010-01-04
- Fix failures due to unknown location of Perl in t/source_handler.t.
- Use EUMM style shebang magic to produce an executable 'psql'
for t/source_handler.t.
3.17_03 2009-11-19
- Fix failures due to over-strict assertions in t/source.t.
3.17_02 2009-11-17
- Merge in Steve's missing changes. Oops.
3.17_01 2009-11-17
- Re-engineered source handling API to allow users to configure how
TAP is sourced by the parser. Introduced a new 'sources' param to
TAP::Harness, and new options to prove, eg:
prove --source XYZ --xyz-option foo=bar
The new TAP::Parser::SourceHandler API makes it much easier to
write plugins. This breaks backwards compatibility for plugins &
extenstions that rely on the following APIs:
TAP::Parser::Source
TAP::Parser::SourceFactory
TAP::Parser::IteratorFactory
TAP::Parser, specifically:
new: 'source' & 'tap' params
source_class
perl_source_class
iterator_factory_class
make_source
make_perl_source
make_iterator
Please see the TAP::Parser docs for more details.
[Steve Purkis & David Wheeler]
- Removed dependency on File::Spec [Schwern]
- Made it possible to pass different args to each test [Lee Johnson]
- Added HARNESS_SUBCLASS option to Test::Harness
- Added TAP::Parser::SourceHandler::File which lets you to stream TAP
from a text file (eg: *.tap).
- Added TAP::Parser::SourceHandler::pgTAP. All the source handlers are
new, but this is the only one to add major new functioality: the
ability to run pgTAP tests (http://pgtap.projects.postgresql.org/).
|
|
|