- Slow Systems
- Availability and references
- COPYRIGHT and LICENCE
Perl Core Smoke Test Suite
# at 22:25 sh smoke.sh [/usr/CPAN/perl-current [smoke.cfg]] # or for the brave and trustworthy # perl Makefile.PL
The perl core smoke test suite is a set of simple scripts that try to run the perl core tests on as many configurations as possible and combine that into a easy to parse report.
The perl source tree is refreshed using rsync to the latest level of the perl development branche before the smoke tests start. Note that rsync in the smoke uses --delete, which <b>removes</b> any existing files on that directory that are not part of the perl source tree.
Create an empty directory where the perl source tree is to be placed when smoking (e.g. /usr/3gl/CPAN/perl-current).
Create or use a location to put the three scripts needed for the smoke (e.g. /usr/3gl/CPAN/smoke), and put the files from the distribution there. Probably you already did so, because you are reading this file.
Edit smoke.sh and change the PC= definition to reflect the location you just chose in the first step of the initialisation. Theoretically you are now ready to go, just follow the SYNOPSIS to give it a first shot for tonight.
Optionally delete lines from config.sh (or a local copy with a different name) for which you are certail your system doesn't support it (like threading or 64bit configurations)
If you happen to try the smoke on a Win32/MSVC5/dmake configuration (which should be supported), create an empty folder 'win32' in the smoke source dir (where the mktest.pl resides).
If something useful happens, do it every night using cron instead of at.
It can happen that your system is not able to persue all the tests, either because it is too slow or because some of the configurations are not supported by the system. At first, don't worry, they are detected by the report creation script and shown as such.
After the first run gave you some idea of how long the smoke will run on your system, you can create your own copy of smoke.cfg where you either add new combinations and/or test levels, or delete lines to speed up the run time of smoke.
At the moment there are no guidelines of how to change the configuration best to fit the needs of perl5-porters while still getting as much smoke out of the test as possible, simply because the needs of perl5-porters change over time :)
If the test captures too many cycles of your CPU to continue production work, just kill the "mktest.pl" process and the report will be generated over the results captured untill then.
Availability and references
http://home.hccnet.nl/h.m.brand/Test-Smoke-1.13.tgz $CPAN/authors/id/H/HM/HMBRAND/Test-Smoke-1.13.tgz SourceForge project "perl-qa" (depricated)
CORE smokers: email@example.com Perl general QA: firstname.lastname@example.org Smoke reports: email@example.com Development: firstname.lastname@example.org
Archives and web
http://qa.perl.org http://email@example.com/ and/or news://nntp.perl.org/perl.daily-build http://www.cpan.org
COPYRIGHT and LICENCE
Copyright (C) 2002 H.Merijn Brand
This suite is free software; you can redistribute it and/or modify it under the same terms as Perl itself, without consulting the author.
(Future) Co-Authors and or contributors should agree to this before submitting patches.
H.Merijn Brand <firstname.lastname@example.org> in dialogue and consultation with Michael Schwern <email@example.com>, the Perl QA pumpkin.
Contributors and/or co-authors:
Configurations and nuts and bolts Nicholas Clark <firstname.lastname@example.org> Portability issues Will Coleda - IMG <email@example.com> Safety Richard Soderberg <firstname.lastname@example.org> Win32/MSC5/dmake Mattia Barbon <email@example.com>, Abe Timmerman <firstname.lastname@example.org> Cygwin John Peacock <email@example.com> Sharing issues Blair Zajac <firstname.lastname@example.org>
and all the people having useful suggestions and nits, starting at YAPC::Europe-2.0.01, where Michael talked me into simplifying my own test-suite.
As always, have the appropriate amount of fun
Windows configurations are not as easy as Unix, but requires make fiddling. Windows2000 however supports long names and <i>might</i> just pick up the current way of going around without any hassle.
At the moment of writing, Cygwin (1.3.10-1) configures and builds bleading edge perl out of the box and passes all tests :)
- Initialisation and installation
Though I've tried to make Makefile.PL do what's neccasary, there's probably still some issues to be fixed for non-unix operating systems
Abe Timmermans has started to extend the smoke suite with options as to where and how to fetch the perl sources (rsync/ftp/http/nfs/...), stopping and continuing the tests and more fun like that