Priority: Normal
Current State: Closed
Released In: 1.1.0
Target Release: minor
Applies To: Engine
Component:
Branches:
This counts on 1.0.10 for:
Apache::Htpasswd |
(may be required for ApacheHtpasswd password manager) |
B::Deparse |
(for base Foswiki) |
Carp |
(for base Foswiki) |
Digest::MD5 |
(for base Foswiki) |
Digest::SHA |
Encode |
(may be required for international characters; Required, for WysiwygPlugin) |
Encode::compat |
(may be required for international characters) |
Exporter |
(for base Foswiki) |
File::Basename |
(for base Foswiki) |
File::Glob |
(for base Foswiki) |
File::Path |
(for base Foswiki) |
File::Temp |
(for base Foswiki) |
FindBin |
(required if you want to use the Extensions Installer in configure) |
Getopt::Long |
(may be required for international characters) |
HTML::Entities |
(for WysiwygPlugin) |
HTML::Parser |
(for WysiwygPlugin) |
I18N::Langinfo |
(may be required for international characters) |
Lingua::EN::Sentence |
(may be required for generating new language files) |
LWP |
(needed for the Configure Extensions installer, and for external URL based INCLUDEs) |
MIME::Base64 |
(for base Foswiki) |
POSIX |
(for base Foswiki) |
Socket |
(for base Foswiki) |
Symbol |
(may be required for international characters) |
Win32::Console |
(may be required for Windows) |
Uh, when I started I thought I find 2 or 3 now I have 24. I will update the related tables in
trunk InstallationGuide#Required_CPAN_modules and in
trunk InstallationGuide#Optional_CPAN_modulesbut wonder if we could have an automatic mechanism to align the stuff listed by configure automatically with what is listed in the
InstallationGuide.
--
IngoKappler - 20 Sep 2010
Closed this task after adding the modules. In case someone has missing preferred version numbers they still could/should be added.
--
IngoKappler - 21 Sep 2010
Most of the modules you added are perl core. I thought we said it's stupid to add core perl modules to this list, unless we have some versions known to be bad (like for CGI).
Replied by email to svn@
--
OlivierRaginel - 21 Sep 2010
So according to the mails the suggestion is rather reducing the list than increasing it, of which I do not have an issue with. My goal was mainly to get in sync with what is listed in configure. So ultimately the
InstallationGuide should only list modules which are:
- Not core from perl 5.8.8 while we do not care about lower perl versions.
- Require some extra comment.
- Required to get Foswiki running, especially the configure page.
Once configure is reached, people can look up the comments for the listed modules there and make up their mind accordingly. So I wonder if we should skip the table for optional modules alltogether and guide people to the list in configure where all necessary comments should be present.
After reducing tables I decided to rather merge them as not much is left.
So, based on the above I am proposing:
############################
CPAN modules
Most of the
CPAN libraries used by Foswiki are part of a standard Perl installation >= 5.8.8. Please see
Foswiki:Support.HowToInstallCpanModules for detailed information on how to install any CPAN libraries not yet present in your installation.
A more complete module status is listed in Foswiki
configure. It is easier to deal with CPAN modules from this perspective.
The following Perl CPAN modules are shipped with Foswiki, require a comment or may optionally be needed.
Module |
Preferred version |
Required/Optional |
Description |
Algorithm::Diff |
|
Required |
Included with Foswiki |
CGI |
Versions 2.89, 3.37, 3.43, and 3.47 must be avoided. Most version from 3.15 and onwards should work. |
Required |
|
Config |
>=0 |
Required |
Installation does not work with CPANPLUS |
Error |
|
Required |
Included with Foswiki |
Text::Diff |
|
Required |
Included with Foswiki |
URI |
|
Optional |
Required by the configure script |
Win32::Console |
|
Optional |
May be required for Windows |
You can check version numbers from the command line (replace "ModuleName" with the name of the module):
perl -le 'use ModuleName; print "ModuleName"->VERSION'
############################
--
IngoKappler - 21 Sep 2010
Another trial based on IRC discussion. Here is what configure checks:
if ( $] < 5.008 ) { $n .= $this->WARN(<<HERE); Perl version is older than 5.8.0. Recommended version 5.8.4 or later):
So whatever is decided on perl version check establishes what dep's need to be added/removed
############################
CPAN modules
Most of the
CPAN libraries used by Foswiki are part of a standard Perl installation >=5.8.0, recommended >=5.8.4. Please see
Foswiki:Support.HowToInstallCpanModules for detailed information on how to install any CPAN libraries not yet present in your installation.
A more complete module status is listed in Foswiki
configure. It is easier to deal with CPAN modules from this perspective.
The following Perl CPAN modules are shipped with Foswiki, require a comment or may optionally be needed.
Module |
Preferred version |
Required/Optional |
Description |
Algorithm::Diff |
|
Required |
Included with Foswiki |
CGI |
Versions 2.89, 3.37, 3.43, and 3.47 must be avoided. Most version from 3.15 and onwards should work. |
Required |
|
Error |
|
Required |
Included with Foswiki |
Text::Diff |
|
Required |
Included with Foswiki |
Apache::Htpasswd |
|
Optional |
May be required for ApacheHtpasswd password manager |
Archive::Tar |
|
Optional |
May be required by the Extensions Installer in configure if command line tar or unzip is not available |
Archive::Zip |
|
Optional |
Alternative to Archive::Tar, used by the Extensions Installer if Archive::Tar also unavailable |
CGI::Cookie |
>=1.24 |
Optional |
Used for session support |
Digest::SHA |
|
Optional |
May be required for password encryption |
Digest::SHA1 |
|
Optional |
|
Encode::compat |
|
Optional |
May be required for international characters |
HTML::Entities |
|
Optional |
Required for Foswiki:Extensions.WysiwygPlugin |
HTML::Parser |
|
Optional |
Required for Foswiki:Extensions.WysiwygPlugin |
Lingua::EN::Sentence |
|
Optional |
May be required for generating new language files |
Locale::Maketext::Lexicon |
>=0 |
Optional |
Used for I18N support |
LWP |
|
Optional |
Required for the Configure Extensions Installer, and for external URL based INCLUDEs |
Net::SMTP |
>=2.29 |
Optional |
Used for sending mail |
URI |
|
Optional |
Required by the configure script |
Win32::Console |
|
Optional |
May be required for Windows |
Most of these modules will probably already be present in your installation. You can check version numbers with the
configure
script, or if you're still trying to get to that point, check from the command line (replace "ModuleName" with the name of the module):
perl -le 'use ModuleName; print "ModuleName"->VERSION'
############################
imho, we should
recommend perl >= 5.8.8, but
support perl >= 5.8.4
--
WillNorris - 21 Sep 2010
RHEL 4 uses 5.8.4 and it's end-of-life. Do you know anything which still uses that? I'd rather support 5.8.8 stating that it might work, though untested, on 5.8.4, because, as Paul pointed out, none of us test it.
--
OlivierRaginel - 21 Sep 2010
Hi Guys,
I wrote a small Perl script to get a better overview and this is the output:
$ ./foswiki-1.0.10_corelist.pl
Lists the Perl version when a module was introduced first time.
Processing modules listed in Foswiki 1.0.10 configure:
Apache::Htpasswd:
Archive::Tar: 5.009003
B::Deparse: 5.005
CGI: 5.004
CGI::Cookie: 5.00405
CGI::Session:
Carp: 5
Config: 5.00307
Cwd: 5
Data::Dumper: 5.005
Digest::MD5: 5.007003
Digest::SHA: 5.009003
Encode: 5.007003
Encode::compat:
Error:
Exporter: 5
File::Basename: 5
File::Glob: 5.006
File::Path: 5.001
File::Spec: 5.00405
File::Temp: 5.006001
FileHandle: 5
FindBin: 5.00307
Getopt::Long: 5
HTML::Entities:
HTML::Parser:
I18N::Langinfo: 5.007003
Lingua::EN::Sentence:
Locale::Maketext::Lexicon:
LWP:
MIME::Base64: 5.007003
Net::SMTP: 5.007003
POSIX: 5
Socket: 5
Symbol: 5.002
Unicode::MapUTF8:
Win32::Console:
Processing modules only listed in the Foswiki 1.0.10 InstallationGuide:
Algorithm::Diff:
CGI::Carp: 5.004
Digest::base: 5.008003
Digest::SHA1:
File::Copy: 5.002
IO::File: 5.00307
Jcode:
Text::Diff:
Time::Local: 5
Unicode::Map:
Unicode::Map8:
Unicode::String:
URI:
Processing modules listed somewhere else but not necessarily part of an extension:
Archive::Zip:
Fot the new table in the InstallationGuide this should be done:
- Remove anything currently listed in the InstallationGuide with a version <=5.008
- This also includes modules listed only in the configure section of the above script output.
- Additionally remove all the Unicode stuff because we know it was only required up to 5.6.
- Also remove Jcode because it is only "Used for I18N support with perl 5.6"
- If missing add modules listed in configure but not part of the Perl core, e.g. CGI::Session; but except of Unicode::MapUTF8.
It results in:
############################
CPAN modules
Most of the
CPAN libraries used by Foswiki are part of a standard Perl installation >=5.8.8 (recommended). A version >=5.8.4 and <5.8.8 may also work although untested. Please see
Foswiki:Support.HowToInstallCpanModules for detailed information on how to install any CPAN libraries not yet present in your installation.
A more complete module status is listed in Foswiki
configure (Foswiki 1.0.x:
CGI Setup, 1.1.x:
Web Server Environment > Perl modules). It should be easier to deal with CPAN modules from this perspective.
The following CPAN modules are shipped with Foswiki, require a comment or may optionally be needed. In case the standard Foswiki will be enhanced with
Foswiki:Extensions, please look at the related extension page for dependencies which may require additional modules.
Module |
Preferred version |
Required/Optional |
Description |
Algorithm::Diff |
|
Required |
Included with Foswiki |
Apache::Htpasswd |
|
Optional |
May be required for ApacheHtpasswd password manager |
Archive::Tar |
|
Optional |
May be required by the Extensions Installer in configure if command line tar or unzip is not available, since Perl 5.9.3 part of core. |
Archive::Zip |
|
Optional |
Alternative to Archive::Tar, used by the Extensions Installer if Archive::Tar also unavailable |
CGI |
Versions 2.89, 3.37, 3.43, and 3.47 must be avoided. Most versions from 3.15 and onwards should work. |
Required |
Included with Perl core since Perl 5.4 |
CGI::Session |
|
Optional |
Required for Sessions support, available from the CPAN archive |
Error |
|
Required |
Included with Foswiki |
Digest::SHA |
|
Optional |
May be required for password encryption, since Perl 5.9.3 part of core |
Digest::SHA1 |
|
Optional |
|
Encode::compat |
|
Optional |
May be required for international characters |
HTML::Entities |
|
Optional |
Required for Foswiki:Extensions.WysiwygPlugin |
HTML::Parser |
|
Optional |
Required for Foswiki:Extensions.WysiwygPlugin |
Lingua::EN::Sentence |
|
Optional |
May be required for generating new language files |
Locale::Maketext::Lexicon |
>=0 |
Optional |
Used for I18N support |
LWP |
|
Optional |
Required for the Configure Extensions Installer, and for external URL based INCLUDEs |
Text::Diff |
|
Required |
Included with Foswiki |
URI |
|
Optional |
Required by the configure script |
Win32::Console |
|
Optional |
May be required for Windows |
Most of these modules will probably already be present in your installation. You can check version numbers with the
configure script, or if you're still trying to get to that point, check from the command line (replace "ModuleName" with the name of the module):
perl -le 'use ModuleName; print "ModuleName"->VERSION'
############################
If there are no further objections, I will put this section instead of the 2 current ones.
There are now still a few modules listed only in the InstallationGuide (e.g. Algorithm::Diff, CGI::Carp, Archive::Zip, maybe more) but not yet in the configure overview. It could be yet another task to clearly specify what should be listed in configure because as of now configure seems to list everything, so these are missing. Alternatively configure could also be reduced to only list...?
--
IngoKappler - 22 Sep 2010
Just one minor suggestion: Sort the modules first by Required/Optional, then by name.
Or use something more visual to show which ones are optional. Should ask some UI guy...
--
OlivierRaginel - 22 Sep 2010
Ok, I am now sorting in addition to marking "Required" entries in blue. As of now, there is hardly a need to install required modules because they are either included or part of Perl since 5.4 (CGI).
############################
CPAN modules
Most of the
CPAN libraries used by Foswiki are part of a standard Perl installation >=5.8.8 (recommended). A version >=5.8.4 and <5.8.8 may also work although untested. Please see
Foswiki:Support.HowToInstallCpanModules for detailed information on how to install any CPAN libraries not yet present in your installation.
A more complete module status is listed in Foswiki
configure (Foswiki 1.0.x:
CGI Setup, 1.1.x:
Web Server Environment > Perl modules). It should be easier to deal with CPAN modules from this perspective.
The following CPAN modules are shipped with Foswiki, require a comment or may optionally be needed. In case the standard Foswiki will be enhanced with
Foswiki:Extensions, please look at the related extension page for dependencies which may require additional modules.
Module |
Preferred version |
Required/Optional |
Description |
Apache::Htpasswd |
|
Optional |
May be required for ApacheHtpasswd password manager |
Archive::Tar |
|
Optional |
May be required by the Extensions Installer in configure if command line tar or unzip is not available, since Perl 5.9.3 part of core. |
Archive::Zip |
|
Optional |
Alternative to Archive::Tar, used by the Extensions Installer if Archive::Tar also unavailable |
CGI::Session |
|
Optional |
Required for Sessions support, available from the CPAN archive |
Digest::SHA |
|
Optional |
May be required for password encryption, since Perl 5.9.3 part of core |
Digest::SHA1 |
|
Optional |
|
Encode::compat |
|
Optional |
May be required for international characters |
HTML::Entities |
|
Optional |
Required for Foswiki:Extensions.WysiwygPlugin |
HTML::Parser |
|
Optional |
Required for Foswiki:Extensions.WysiwygPlugin |
Lingua::EN::Sentence |
|
Optional |
May be required for generating new language files |
Locale::Maketext::Lexicon |
>=0 |
Optional |
Used for I18N support |
LWP |
|
Optional |
Required for the Configure Extensions Installer, and for external URL based INCLUDEs |
URI |
|
Optional |
Required by the configure script |
Win32::Console |
|
Optional |
May be required for Windows |
Algorithm::Diff |
|
Required |
Included with Foswiki |
CGI |
Versions 2.89, 3.37, 3.43, and 3.47 must be avoided. Most versions from 3.15 and onwards should work. |
Required |
Included with Perl core since Perl 5.4 |
Error |
|
Required |
Included with Foswiki |
Text::Diff |
|
Required |
Included with Foswiki |
Most of these modules will probably already be present in your installation. You can check version numbers with the
configure script, or if you're still trying to get to that point, check from the command line (replace "ModuleName" with the name of the module):
perl -le 'use ModuleName; print "ModuleName"->VERSION'
############################
Looks perfect to me! Great work Ingo!
--
OlivierRaginel - 23 Sep 2010