Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 166063
Summary: | Review Request: perl-HTML-Mason | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Steven Pritchard <steve> | ||||||||
Component: | Package Review | Assignee: | Jose Pedro Oliveira <jose.p.oliveira.oss> | ||||||||
Status: | CLOSED NEXTRELEASE | QA Contact: | David Lawrence <dkl> | ||||||||
Severity: | medium | Docs Contact: | |||||||||
Priority: | medium | ||||||||||
Version: | rawhide | CC: | chris, fedora-package-review, jose.p.oliveira.oss | ||||||||
Target Milestone: | --- | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | All | ||||||||||
OS: | Linux | ||||||||||
URL: | http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason-1.3101-1.src.rpm | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2005-09-16 20:19:41 UTC | Type: | --- | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Bug Depends On: | 166059, 166065 | ||||||||||
Bug Blocks: | 163779, 168227 | ||||||||||
Attachments: |
|
Description
Steven Pritchard
2005-08-16 14:40:58 UTC
HTML::Mason 1.31 was released today and is available on CPAN. It contains a handful of bug fixes. Might be worth upgrading prior to a review. Will do. NEEDSWORK: * nitpicks: - %check || :, please use "%check". - sed'ing LD_RUN_PATH, please remove - setting perl_vendorlib is superfluous with FC >= FC3. * Arguable/Discussable: - /var/www/mason and /var/www/comp I am not sure if these are clever choices. /var/www/mason seems reasonable to me, but /var/www/comp seems a bit too unspecific to me. However I don't have strong opinion on this. * Major issue: Your /etc/http.d/conf.d/perl-HTML-Mason.conf doesn't work on FC4. It prevents apache/httpd from startup: # service http start Starting httpd: [FAILED] [Sun Aug 21 07:34:47 2005] [error] Can't load Perl module Apache2 for server ..., exiting.. I am not as much an apache expert to be able to tell what is wrong with it. AFAIS, it definitely is related to these lines in perl-HTML-Mason.conf, which would indicate a mod_perl/mod_perl2 incompatiblity issue: PerlModule Apache2 PerlModule Apache::compat (In reply to comment #3) [snip] > - /var/www/mason and /var/www/comp > I am not sure if these are clever choices. /var/www/mason seems reasonable to > me, but /var/www/comp seems a bit too unspecific to me. However I don't have > strong opinion on this. My (unrequested) opinion would be to do what conf.d/perl.conf does and leave every option commented as examples of what could be done. For example, I use /var/cache/mason (like mod_proxy) for MasonDataDir and /var/www/mason as MasonCompRoot. Also, since libapreq2 is available in extras, an example of using the apache args method would be nice in addition to the cgi args method. [snip] > I am not as much an apache expert to be able to tell what is wrong with it. > AFAIS, it definitely is related to these lines in perl-HTML-Mason.conf, which > would indicate a mod_perl/mod_perl2 incompatiblity issue: > PerlModule Apache2 > PerlModule Apache::compat Neither of these lines are used with current versions of mod_perl and HTML::Mason. A physical Apache2 module was removed in mod_perl 2.0.0rc5, and Apache::compat isn't needed in HTML::Mason >= 1.30. (In reply to comment #4) > (In reply to comment #3) > [snip] > My (unrequested) opinion would be to do what conf.d/perl.conf does and leave > every option commented as examples of what could be done. For example, I use > /var/cache/mason (like mod_proxy) for MasonDataDir and /var/www/mason as > MasonCompRoot. Agreed, /var/cache/mason seems to be a better choice to me. Sorry, I rushed this one out. I'll be more careful in the future. I still haven't tested this well, but httpd will at least start with this: http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason-1.31-2.src.rpm http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason/perl-HTML-Mason.spec The sample config file definitely still could use some work, so suggestions on that are welcome. (I see I missed a couple of things in comment #4.) Let's try this again... http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason-1.31-3.src.rpm http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason/perl-HTML-Mason.spec Created attachment 118085 [details]
Sample Mason configuration for the conf.d directory.
Here's my stab at a Mason configuration file for Apache 2.0.x. It's based on
what I've been using in a production environment for some time.
It should be enough to get Mason up and running with basic functionality, and
I've included a pointer to the full list of configuration options.
Created attachment 118164 [details]
Update to 1.3101 and requirments cleanup
Steven,
Could you update HTML::Mason to version 1.3101 and clean the requirements and
build requirements list (patch attached)?
The following requirments are all core perl modules (perl > 5.8.0) [1]
BuildRequires: perl(CGI) >= 2.46
BuildRequires: perl(File::Spec) >= 0.8
BuildRequires: perl(Scalar::Util) >= 1.01
BuildRequires: perl(Test)
BuildRequires: perl(Test::Builder)
Requires: perl(CGI) >= 2.46
Requires: perl(File::Spec) >= 0.8
Requires: perl(Scalar::Util) >= 1.01
References:
[1] Source: script corelist from perl-Module-CoreList
How does this look? http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason-1.3101-1.src.rpm http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason/perl-HTML-Mason.spec %changelog * Mon Aug 29 2005 Steven Pritchard <steve> 1.3101-1 - Update to 1.3101 - Spec cleanup (jpo) - Include sample config file from Chris Grau Created attachment 118655 [details]
Specfile patch: adds documentation, ...
Changelog:
* adds the html documentation pages
* adds the samples
(the eg/ appliaction brings a new requirement which is filtered)
* changes the mason dir from /var/www/mason/html to /var/www/mason
* changes the "perl Makefile.PL" statement
Do we have consensus on how to continue? What I can tell: Steve's rpm perl-HTML-Mason-1.3101-1.src.rpm works fine with rt3 under FC4 ;) Did anybody test this under FC3? I'd approve it for FC4 and FC5, if we have consensus on the mason dirs (FWIW: Debian seems to use /var/cache/mason). +# Requires: filter perl(MasonX::Request::PlusApacheSession) +cat <<__EOF__ > %{name}-perlreq +#!/bin/sh +/usr/lib/rpm/perl.req \$* | grep -v 'perl(MasonX::Request::PlusApacheSession)' +__EOF__ +%define __perl_requires %{_builddir}/HTML-Mason-%{version}/%{name}-perlreq +chmod +x %{__perl_requires} Is this really necessary? I don't see this dependency. -echo '!' | %{__perl} Makefile.PL INSTALLDIRS=vendor +%{__perl} Makefile.PL INSTALLDIRS=vendor Interesting... That must have changed since the last build I did by hand. Fixed. -mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/www/mason/html +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/www/mason Shouldn't DocumentRoot (/var/www/mason/html) be under MasonCompRoot (/var/www/mason)? I see that's not what the config file I'm including does now. My old one did... I'll change it, but I'm still curious. :-) +%doc htdocs/ eg/ samples/ -%{_localstatedir}/www/mason/ +%dir %{_localstatedir}/www/mason Done. http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason-1.3101-2.src.rpm http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason/perl-HTML-Mason.spec (In reply to comment #14) > +# Requires: filter perl(MasonX::Request::PlusApacheSession) > +cat <<__EOF__ > %{name}-perlreq > +#!/bin/sh > +/usr/lib/rpm/perl.req \$* | grep -v 'perl(MasonX::Request::PlusApacheSession)' > +__EOF__ > +%define __perl_requires %{_builddir}/HTML-Mason-%{version}/%{name}-perlreq > +chmod +x %{__perl_requires} > > Is this really necessary? I don't see this dependency. I seem to recall that perl(MasonX::Request::PlusApacheSession) gets pulled in by one of the examples. I had to do something like this with an older custom package of HTML::Mason. > -mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/www/mason/html > +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/www/mason > > Shouldn't DocumentRoot (/var/www/mason/html) be under MasonCompRoot > (/var/www/mason)? I see that's not what the config file I'm including does now. When I set up a Mason site, I usually use /var/www/html as the document root and /var/www/mason as the private component root. YMMV, of course. Yeah, the examples introduce new provides and requires. I'm fixing that now. (I noticed right after I hit "Save Changes". Oops.) http://ftp.kspei.com/pub/steve/rpms/perl-HTML-Mason-1.3101-3.src.rpm filters out the bogus requires and provides. Steven, Can you replace the perl(mod_perl2) BR and R by mod_perl only? This way perl-HTML-Mason will work for FC-3 and FC-4. Otherwise it will only work with FC-4 (perl(mod_perl2) is only provided by mod_perl >= 2.0.0 RC5). /jpo Hum! Please ignore my last comment. I don't know if it is possible to support mod_perl 1.99 (judging ny the comments in ApacheHandler.pm). I'm going to attempt to support FC-3, but I'd rather not worry about it until after we get this into CVS. Initially I'll only request builds for FC-4 and devel. (In reply to comment #20) > I'm going to attempt to support FC-3, but I'd rather not worry about it until > after we get this into CVS. Initially I'll only request builds for FC-4 and devel. I'd have to look at the code to be sure, but I think Mason went the same route as other modules that depend on mod_perl. Mason won't work with anything before mod_perl 2.0.0rc5 and thus it won't work on FC-3. If we really want Mason on FC-3, I think someone should package up 1.28. Either that version or one of the 1.29 dev releases supported mod_perl 1.99. I have nothing further to add. Publish++ (FC-4 and devel) I am still having doubts on /var/www/mason and therefore don't want to approve the package (Did anybody consider the FHS?). As JPO seems to be convinced, I am assigning this package request to him. (In reply to comment #23) > I am still having doubts on /var/www/mason and therefore don't want to approve > the package (Did anybody consider the FHS?). I think if we were to follow the FHS, the entire www tree would be moved to /srv. However, I'm sure that's a flame war that's been faught elsewhere. The /var/www/mason directory is not without precedent. Consider, for example, /var/www/{cgi-bin,error,icons,manual} owned by httpd and httpd-manual. Also /var/www/usage owned by webalizer. Granted, all of these are usually aliased to public URLs, but I think the real point is to prevent them from interfering with the document root. I don't know how others go about this, but my use of /var/www/mason is as a private component root so that components/pages in the document root can call them, but they are not accessible through a public URL. (In reply to comment #24) > (In reply to comment #23) > > I am still having doubts on /var/www/mason and therefore don't want to approve > > the package (Did anybody consider the FHS?). > > I think if we were to follow the FHS, the entire www tree would be moved to > /srv. However, I'm sure that's a flame war that's been faught elsewhere. Yes, but you are aware, that the move to /srv already is taking place, even on RH based distributions? > The /var/www/mason directory is not without precedent. Consider, for example, > /var/www/{cgi-bin,error,icons,manual} owned by httpd and httpd-manual. Also > /var/www/usage owned by webalizer. > I don't know how others go about this, but my use of /var/www/mason is as a > private component root so that components/pages in the document root can call > them, but they are not accessible through a public URL. Let me ask differently: Can /var/www/mason be read-only? (In reply to comment #25) > (In reply to comment #24) > > (In reply to comment #23) > > > I am still having doubts on /var/www/mason and therefore don't want to approve > > > the package (Did anybody consider the FHS?). > > > > I think if we were to follow the FHS, the entire www tree would be moved to > > /srv. However, I'm sure that's a flame war that's been faught elsewhere. > Yes, but you are aware, that the move to /srv already is taking place, even on > RH based distributions? No, I was not aware. Glad to hear it. I wonder how long it will take me to get used to typing /srv instead of /var. > > The /var/www/mason directory is not without precedent. Consider, for example, > > /var/www/{cgi-bin,error,icons,manual} owned by httpd and httpd-manual. Also > > /var/www/usage owned by webalizer. > > > I don't know how others go about this, but my use of /var/www/mason is as a > > private component root so that components/pages in the document root can call > > them, but they are not accessible through a public URL. > Let me ask differently: Can /var/www/mason be read-only? If, after developing some code and installing it on a production system, the admin chooses to make /var/www/mason read-only, everything will still work. Mason writes its cache files to MasonCacheDir, which we are pushing as /var/cache/mason in this package. I hope I understood correctly what you were asking here. Just happened to notice that the summary of this package could be improved somewhat, for example: Summary: Powerful Perl-based web site development and delivery engine I've updated the summary. (In reply to comment #26) > > Let me ask differently: Can /var/www/mason be read-only? > > If, after developing some code and installing it on a production system, the > admin chooses to make /var/www/mason read-only, everything will still work. > Mason writes its cache files to MasonCacheDir, which we are pushing as > /var/cache/mason in this package. > > I hope I understood correctly what you were asking here. Yes, this is what I meant, because IMO, it would not be a good idea to have dynamically changing files under /var/www. Housekeeping - Package has already been released |