Apache-Test
view release on metacpan or search on metacpan
=head1 NAME
Changes - Apache::Test change logfile
=head1 CHANGES
=over 3
=item 1.43 Nov 7 2021
Our implementation of "which" should not search
for a program in the elements of PATH when program
already contains a path. [rjung]
Fix hash generation when the openssl command
was overwritten with the environment variable
"APACHE_TEST_OPENSSL_CMD". [rjung]
Add new config option limitrequestline needed
when the local directory paths are long. [rjung]
=item 1.42 Aug 28 2019
Fix loading apache_test_config.pm for recent perls in which '.' is
no longer in @INC by default. [Steve Hay]
=item 1.41 Jul 11 2019
Set DefaultStateDir for > 2.5.1 and add -t_state to override. [jorton]
Inherit config via IncludeOptional as well as Include. [jorton]
Increase size of MinSpare, MaxSpare and MaxClients to improve httpd test
framework runs with worker and preform MPMs. [rjung]
Changed the openssl version detection to work with other *SSL libraries.
[icing]
Switch test framework from using Net::SSL for
raw TLS sockets to IO::Socket::SSL. [rjung]
Fix mod_ssl tests under OpenSSL 1.1.1 / TLSv1.3. [jorton]
Add cwd to generated lib path in TEST script since Perl >=5.26 don't
do that any more. [jorton]
Override loglevel to trace8 if running in 2.4. [covener]
Allow an empty PREFIX. [sf]
Add need_min_apache_fix(). [covener]
=item 1.40 Sep 6 2016
Specify licence (Apache 2.0) in META.yml. [Steve Hay, CPAN RT#111359]
Fix broken POD. [Steve Hay]
Switch argument order in "openssl gendsa". [rjung]
Add (limited) checks for *_SAN_*_n and *_DN_Email variables. [kbrand]
Update key sizes and message digest to what is common in 2015. [kbrand]
=item 1.39 Apr 21 2015
Test scripts can now test if perl has a fork() implementation available by
using the Apache::Test::need_fork() function. [Steve Hay]
CPAN RT#87620: Add -D APACHE2_4 to identify httpd-2.4. [Michael Schout]
=item 1.38 Aug 6 2012
Fix log_watch.t on Windows, which can't (naturally) delete open files.
[Steve Hay]
Fix t_filepath_cmp, t_catfile and t_catfile_apache in Apache::TestUtil on
Windows: their use of Win32::GetLongPathName() was broken for non-existent
files. [Steve Hay]
Remove use of Nullsv as per modperl commit 1362399. [Steve Hay]
have Apache::TestConfigPerl::configure_inc set up @INC to include
../blib/lib and ../blib/arch if they exist. The bundled Apache::Reload
may fail to load Apache2::Const & co otherwise when testing.
[Torsten Foertsch]
=item 1.37 January 29, 2012
Apache::TestRequest: improve compatibility for SSL requests with LWP 6 and
IO::Socket::SSL, in particular [Kaspar Brand]
As of httpd revision 1053230 (version 2.3.11) the NameVirtualHost directive
became superfluous and a warning is issued when it is met. So, Apache::Test
now wraps NameVirtualHost directives in <IfVersion> blocks.
[Kaspar Brand]
Add comments about the source files of auto configurated tests to
the generated httpd.conf and improve indentation a bit. [Torsten Foertsch]
add various straps to aid the new Apache-TestItSelf sub-project, which
is used to test A-T config options [Stas]
avoid entering endless loops when interactive config is used, by
restarting the test suite with an explicit selected arguments for
-httpd (and optionally -apxs) [Stas]
META.yml is now locally maintained. we need to tell PAUSE indexer not
to try to index HTTP::Request::Common and warnings packages, which
happen to be used by A-T [Stas]
=item 1.17 - December 11, 2004
Apache::TestHandler: need to load Apache::RequestIO for mp2 for puts()
to work [Stas]
new Apache::TestConfig wrapper untaint_path() [Randy Kobes]
fix the config thaw() functionality (when top_dir wasn't in @INC the
saved config won't be loaded and tests will blow) [Stas]
new wrapper Apache::TestRequest::module2url to simplify handling of
vhosts in the client. ["Christopher H. Laco" <apache-test
chrislaco.com>]
resolve -T taint issues: [Stas]
- untaint $cmd in Apache::TestConfig::open_cmd
- fix the tainting of @INC (by untaintinig top_dir variable)
require Cwd 2.06 or higher (to solve File::Spec::rel2abs problems
under -T). Enforce the modules version requirements for those who
aren't running under CPAN/CPANPLUS shell) [Stas]
Apache::TestTrace: don't export by default the 'todo' utility's symbol
since it collides with Test::More [Stas]
Tweak the handling of mp2 source build case in
Apache::TestConfig::httpd_config(), apparently mp2 source build
doesn't always know where httpd/apxs are, so we need to give a better
error message in this particular case. [Stas]
Add cookie jar tests ["Christopher H. Laco" <apache-test
chrislaco.com>]
Don't run interactive prompts when STDIN is closed [Stas]
Add LockFile directive in the autogenerated httpd.conf, which points
to t/logs, to handle the case where LockFile is hardcoded at compile
time to some other directory on the system. [Stas]
=item 1.16 - November 9, 2004
launder the require()d custom config filename to make -T happy
[Torsten Förtsch <torsten.foertsch gmx.net>]
added Apache::TestRunPHP and Apache::TestConfigPHP classes,
which provide a framework for server-side testing via PHP scripts
[Geoffrey Young]
fix problem with multiple all.t files where only the final
file was being run through the test harness. [Geoffrey Young]
Documented that redirection does not work with "POST" requests in
Apache::TestRequest unless LWP is installed. [David Wheeler]
Separated the setting of the undocumented $RedirectOK package
variable by users of Apache::TestRequest from when it is set
internally by passing the "requests_redirectable" parameter to
the user_agent() method. This allows users to override the
behavior set by the user_agent() method without replacing it.
[David Wheeler]
=item 1.15 - October 22, 2004
add need_php4() and have_php4() which will return true when mod_php4
is available. also, tidy up need_php() and have_php() for PHP4 on
Apache 2.0. [Joe Orton]
add new test_config make target, equivalent to t/TEST -conf,
and make it a prerequisite for the cmodules make target. now
you can 'make cmodules' to build the things in c-modules/
without running t/TEST -conf first. [Geoffrey Young]
add -withtestmore import action, which allows Test::More >= 0.49
to replace Test.pm as the engine for server-side tests
[Geoffrey Young]
add automatic core dump backtrace generation in t/REPORT if
Devel::GDB is installed [Gozer]
add 'testcover' make target for running tests with Devel::Cover
[Geoffrey Young]
=item 1.14 - October 12, 2004
improve the same_interpreter framework to handle response failures
while trying to init and later find out the same interpreter. [Stas]
make sure that 'make distclean' cleans all the autogenerated files
[Stas]
make sure that if -maxclients option is passed on the command line,
minclients will never be bigger than that value [Stas]
add -one-process runtime argument, which will start the server
in single-server mode (httpd -X in Apache 1.X or
httpd -D ONE_PROCESS in 2.X) [Geoffrey Young]
In open_cmd, sanitize PATH instead of clearing it [Gozer]
Allow / \ and \\ path delimiters in SKIP file [Markus Wichitill
<mawic@gmx.de>]
Added an apxs query cache for improved test performance [Gozer]
run_tests make target no longer invokes t/TEST -clean, making it
possible to save a few development cycles when a full cleanup is
not required between runs. [Geoffrey Young]
Apache::TestSmoke imrovements: [Stas]
o the command line option -iterations=N should always be respected
(previously it was internally overriden for order!='random').
o since IPC::Run3 broke the Ctrl-C handler, we started to loose any
intermediate results, should the run be aborted. So for now, try to
always store those results in the temp file:
smoke-report...$iter.temp
fix 'require blib' in scripts to also call 'blib->import', required to
have an effect under perl 5.6.x. [Stas]
don't allow running an explicit 'perl Makefile.PL', when Apache-Test
is checked out into the modperl-2.0 tree, since it then decides that
it's a part of the modperl-2.0 build and will try to use modperl
httpd/apxs arguments which could be unset or wrong [Stas]
Fix skip test suite functionality in the interactive configuration
phase [Stas]
s/die/CORE::die/ after exec() to avoid warnings (and therefore
failures) when someone overrides CORE::die when using Apache-Test
[William McKee, Stas]
Overrode Module::Build's "testcover" action in Apache::TestMB to
prevent the Apache::Test sticky preference files from being included
in the coverage report. [David]
=item 1.13 - Aug 20, 2004
move the custom config code into Apache::TestConfig, split the config
object creation in 2 parts - first not requiring the knowledge of
httpd location, the second requiring one, refactor the custom config
interactive prompting into the second phase, if failed to find
httpd. Reshuffle the code to run first bits not requiring the
was borrowed from Test::More. [Stas]
Fixed a Windows-only segment which would result in a
'use of uninitialised value' error if a hash being traversed
had an entry with a key but an undefined value. [Ken]
Support continuous configuration line when parsing the inherited
configuration file [Stas]
Since some of the inherited from the global httpd.conf modules require
mod_perl to be loaded first, arrange for that to happen. [Stas]
Don't try to set ulimit unlimited for coredumps on Solaris, unless run
as root [Rob Kinyon <Rob.Kinyon@progressive-medical.com>]
Added '-httpd_conf_extra <filename>' configuration option to
allow a file of server config directives to be inherited
in addition to the server's own httpd.conf file (or the one
specified by -httpd_conf). [Ken and Stas]
Generated Listen directive now listen on 0.0.0.0 to force using
IPv4 addresses on IPv6 systems until LWP supports IPv6. [Gozer]
improved docs [David Wheeler <david@kineticode.com>]
Add a virtual method Apache::TestRun::pre_configure, and fix the
documentation to say that subclasses must not forget to run the
superclass' method. [Stas]
Apache::TestRunPerl now performs an early check whether it can load
the right mod_perl environment. [William McKee <william@knowmad.com>,
Stas]
$ENV{APACHE_TEST_NO_STICKY_PREFERENCES}, if true, will both suppress
generation of persistent preferences and ignore any that already exist.
[Geoffrey Young]
make the project's test suite relocatable, handling the case where
after Apache-Test configuration was created and not cleaned up before
the directory was moved. This is especially important for those cases
where users try to run 'make test' as root from /root, A-T tells them
that they can't do that (because of the perms) and suggests to try
again, afer moving the whole project under /tmp or similar. [Stas]
When running as 'root' make the client side drop the root permissions
and run with the same permissions as the server side
(e.g. nobody). This is needed in case the client side creates any
files after the initial check (during server side startup and beyond),
so that the server side could read/write them. [Stas]
t_server_log_error_is_expected t_server_log_warn_is_expected
t_client_log_error_is_expected t_client_log_warn_is_expected
now support an optional argument, suggesting how many entries
to expect [Stas]
=item 1.09 - March 8, 2004
remove the dependency on APR::UUID (i.e. mod_perl 2.0) in the
same_interpreter framework (use plain time/rand/$$ concatenation)
[Stas]
Updated to the new Apache License Version 2.0 [Gozer]
handle cases on Win32 when supplied paths have spaces in their
names [Stas]
c-modules build errors are no longer ignored [Stas]
change -DAPACHE1 (and like defines) to -D APACHE1 to fix Win32
compatibility issues [Steve Hay]
fix the custom config use for Apache-Test's own upgrades [Stas]
=item 1.08 - February 24, 2004
Instead of hard-coding listen directive to 127.0.0.1, use the server
name. [Gozer]
added -defines configuration option, providing a way to pass additional
-D names to the server for use in <IfDefine> blocks. [Geoffrey Young]
Make it possible to run TEST (or another driving script) from any path
(e.g. t/TEST, ./TEST, /full/path/to/t/TEST) [Stas]
If at least one *conf*.in files is modified since the last
configuration, make sure to regenerate them all, so the right ports
will be assigned. [Stas]
Make sure that Apache-Test modules are installed into INSTALLSITEARCH
during a standalone build. Because EU::MM does so when A-T is bundled
with mp2, and we want to avoid having A-T installed in two different
places under @INC. [Stas]
HTTP/0.9 responses no longer croak, provided $ENV{APACHE_TEST_HTTP_09_OK}
is true. [Geoffrey Young]
Hard-code listen directive to 127.0.0.1, solving problems for people
with IPv4 & IPv6 address until a better solution is found. [Gozer]
prefix Apache::TestTrace (non-colour mode) messages with the loglevel,
similar to what Apache does. [Stas]
Instrument A-T with an optional successful (shell-wise) abort of the
test suite, by asking the user whether they want to continue w/o
completing the test suite. Use it in places where we know that the
test suite will certaionly fail (e.g. running from /root as 'root', or
not providing httpd/apxs locations). [Stas]
In order to make Apache-Test compatible with the rest of Perl testing
frameworks, we no longer chdir into t/, but run from the root of the
project (where t/ resides). A test needing to know where it's running
from (e.g. to read/write files/dirs on the filesystem), should do that
relative to the serverroot, documentroot and other server
configuration variables, available via
Apache::Test::vars('serverroot'), Apache::Test::vars('documentroot'),
etc. [Stas]
Apache::Test::vars() can now query for config arguments [Stas]
generate t/conf if it does not already exist, which
it may not if the tests are entirely autoconfigured.
[Geoffrey Young]
Special to Apache-Test environment variables:
APXS APACHE APACHE_GROUP APACHE_USER APACHE_PORT
are now moved to:
APACHE_TEST_APXS APACHE_TEST_HTTPD APACHE_TEST_GROUP
APACHE_TEST_USER APACHE_TEST_PORT
respectively, for consistency with other APACHE_TEST_ env vars and in
order not to interfere with other projects that may use the same env
vars. [Stas]
if $self->{reconfigure} is true, make sure to perform a complete
reconfiguration, to solve the bug where conf.in files weren't reparsed
and vhost hostport info was getting lost on subsequent runs when
APACHE env var was set (one of the cases when $self->{reconfigure} is
true). [Stas]
handle "Include conf/*conf" cases when inheriting httpd.conf in a
cleaner way, don't complain that "*conf" doesn't exist, since it's a
glob pattern. Instead check try to resolve the base directory. [Stas]
import the Apache::TestMM clean target in Makefile.PL so 'make clean'
will call t/TEST -clean [Stas]
fix have_apache_version(), have_min_apache_version(), and
have_min_module_version() to use proper numeric version strings
in comparisons. thanks to Rafael Garcia-Suarez for the spot.
[Geoffrey Young]
fix Apache::TestConfig::which to check that the found file is a plain
file [Stas]
implementing custom interactive and non-interactive (with the -save
option) reusable configuration for -httpd, -apxs, -user, -group, and
-port [Randy Kobes, Stas]
=item 1.07 - Decemeber 22, 2003
allow conditional C module compilation on a more granular level.
#define HTTPD_TEST_REQUIRE_APACHE 2.0.49 is now recognized.
[Geoffrey Young]
Another attempt at providing a test function that verifies whether
Apache when switching from 'root' to 'nobody' or another user will be
able to access and create files under the t/ directory. This time
using perl's vars $(, $< since POSIX equivalents seem to be broken on
some systems. Also using a better test that actually tries to
( run in 0.609 second using v1.01-cache-2.11-cpan-e1769b4cff6 )