I installed the latest TWiki on a shared hosting environment. The configure did not run, complaining about a missing
parent.pm
. After adding
parent.pm
to
twiki/lib
it worked.
I recommend shipping
parent.pm
version 0.225 with
CgiContrib (thus TWiki), alongside with
CGI.pm
--
TWiki:Main/PeterThoeny
- 2020-01-20
The shared hosting is
CentOS 5.8, has perl v5.8.8
--
TWiki:Main.PeterThoeny
- 2020-01-20
If
parent.pm
is missing, the configure dies at
twiki/lib/CGI/File/Temp.pm
, line 8.
--
TWiki:Main.PeterThoeny
- 2020-01-20
Wow, that platform (and Perl version) are older than Windows 7! The module
parent.pm
entered the Perl core at v5.10.1 which was released in 2007. Actually, according to
TWiki:TWiki.TWikiSystemRequirements
, the minimum supported Perl version
is 5.10.1: it was bumped up for TWiki 6.0.1. I admit that since then I've dropped my 5.8 test environment. I hope that "shared hosting" does not imply "facing the internet", since that CentOS version had End-of-Life in 2017.
Shipping
parent.pm
with
CgiContrib seems slightly logical: As far as I can say, one module which I stole from v4.13 of the CGI distribution is the only occurrence of
use parent;
in the codebase. It still looks silly to include a module which can be safely expected to be there in all supported versions. Also, I really hesitate to test and release a new version of
CgiContrib for Perl v5.8.8. That version is not provided by
perlbrew
, and even if it were I consider it pretty hard to fetch all the old modules from that era: Current CPAN versions might have dropped
base.pm
in favor of
parent.pm
(for example
Encode
is using it since 2013). So here are some alternatives:
- In
lib/CGI/File/Temp.pm
, replace two occurrences of use parent
by use base
. This would still mean building a new version of CgiContrib and a (probably undetectable) performance penalty. It could also be done as a "compatibility patch" to run TWiki 6.0.1 on that platform where it isn't officially supported.
- Remove CgiContrib. The version of
CGI.pm
which was shipped with Perl 5.8.8 (it belonged to the core back then) should work just fine with TWiki 6.0.1. The Contrib could either be un-bundled from TWiki or just deleted on that shared host.
- Offer the file for download from twiki.org for use in this special environment.
--
TWiki:Main.HaraldJoerg
- 2020-01-20
Thanks Harald for the sensible comments. Since we now require Perl 5.10.1 we can safely ignore this bug item - setting this to "No Action Required".
--
TWiki:Main.PeterThoeny
- 2020-01-21