• Do not register here on develop.twiki.org, login with your twiki.org account.
• Use View topic Item7848 for generic doc work for TWiki-6.1.1. Use View topic Item7851 for doc work on extensions that are not part of a release. More... Close
• Anything you create or change in standard webs (Main, TWiki, Sandbox etc) will be automatically reverted on every SVN update.
Does this site look broken?. Use the LitterTray web for test cases.

Item7876: Add lib/parent.pm

Item Form Data

AppliesTo: Component: Priority: CurrentState: WaitingFor: TargetRelease ReleasedIn
Extension CgiContrib Enhancement No Action Required   n/a  

Edit Form Data

Summary:
Reported By:
Codebase:
Applies To:
Component:
Priority:
Current State:
Waiting For:
Target Release:
Released In:
 

Detail

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

ItemTemplate
Summary Add lib/parent.pm
ReportedBy TWiki:Main.PeterThoeny
Codebase ~twiki4, 6.1.0
SVN Range TWiki-6.1.0-trunk, Thu, 29 Aug 2019, build 30672
AppliesTo Extension
Component CgiContrib
Priority Enhancement
CurrentState No Action Required
WaitingFor

Checkins

TargetRelease n/a
ReleasedIn

Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View |  Raw edit | More topic actions
Topic revision: r4 - 2020-01-21 - PeterThoeny
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback