Re: repost: RFC: CPAN::Grab
On Wed, Apr 03, 2002 at 05:14:33PM -0600, Jacob Kenner wrote: On 22 Mar at 15:22 Ilya Zakharevich [EMAIL PROTECTED] wrote: c) That whilst Perl supports CPAN, it's not mandatory (nor should it be). We should, however, support those who won't/can't use it. What for??? Do you also want to support people who won't/can't use modules with 'e' in the module name? None of my servers have outbound network access. Should I not use Perl modules other than those included? I could really use a module packaging tool that does not rely upon CPAN. It should rely on *something*. Get CPAN through this something. Ilya
Re: repost: RFC: CPAN::Grab
On 22 Mar at 15:22 Ilya Zakharevich [EMAIL PROTECTED] wrote: c) That whilst Perl supports CPAN, it's not mandatory (nor should it be). We should, however, support those who won't/can't use it. What for??? Do you also want to support people who won't/can't use modules with 'e' in the module name? None of my servers have outbound network access. Should I not use Perl modules other than those included? I could really use a module packaging tool that does not rely upon CPAN. ~jacob -- H*,6a61636f62406361757361746976652e6e6574
Re: repost: RFC: CPAN::Grab
On Thu, Mar 21, 2002 at 01:16:10AM -0500, Ilya Zakharevich wrote: 1) The PREREQ_PM facility informs the user of missing modules, but not where to find them. Not every module (in the Perl sense) comes in a module (in the CPAN sense) of the same name. Why should it? PREREQ_PM specifies Distribution depends on PM-files PAUSE indexer specifies PM-file is contained in a distribution CPAN.pm uses both pieces of info to do what it should. What I am missing? a) That not all modules exist on CPAN. (some are specific to a company, some on sourceforge or similar). b) That some package names may exist in multiple modules. c) That whilst Perl supports CPAN, it's not mandatory (nor should it be). We should, however, support those who won't/can't use it. 2) There is no handling of required executables. Is not a problem as far as the executable comes with a (dummy?) module. Not all modules are written in perl. I have a module that uses the par command, for example. Mx.
Re: repost: RFC: CPAN::Grab
On Fri, Mar 22, 2002 at 09:44:41AM +, Martyn J. Pearce wrote: On Thu, Mar 21, 2002 at 01:16:10AM -0500, Ilya Zakharevich wrote: 1) The PREREQ_PM facility informs the user of missing modules, but not where to find them. Not every module (in the Perl sense) comes in a module (in the CPAN sense) of the same name. ^ See below a) ... not all modules exist on CPAN. (some are specific to a company, some on sourceforge or similar). So you are retracting the same name part, right? b) That some package names may exist in multiple modules. This is so broken that I see little sense to discuss this situation... c) That whilst Perl supports CPAN, it's not mandatory (nor should it be). We should, however, support those who won't/can't use it. What for??? Do you also want to support people who won't/can't use modules with 'e' in the module name? 2) There is no handling of required executables. Is not a problem as far as the executable comes with a (dummy?) module. Not all modules are written in perl. I have a module that uses the par command, for example. So code Makefile.PL to warn user if par is not available (with install instructions if needed). See for example Math::Pari, which will auto-download GP/PARI if not found on the system. Why should MakeMaker do the work which is easier to do in the module? Ilya
Re: repost: RFC: CPAN::Grab
On Fri, Mar 08, 2002 at 09:41:29AM -0500, Jay Lawrence wrote: From: Sam Vilain [EMAIL PROTECTED] You can specify package dependancies with MakeMaker, including version numbers of required packages. Surely that is enough information to build up necessary depends: relationships? The *only* beef I have about PREREQ_PM is that it usees the prereq modules to see if they are there are installed. This unfortunately does not work in certain situations, I have two issues: 1) The PREREQ_PM facility informs the user of missing modules, but not where to find them. Not every module (in the Perl sense) comes in a module (in the CPAN sense) of the same name. 2) There is no handling of required executables. Mx.
Re: repost: RFC: CPAN::Grab
Quoting Kurt D. Starsinic [EMAIL PROTECTED] [Mar 07, 2002 10:28]: On Mar 07, Sam Vilain wrote: Which reminds me. Is anyone working on a CPAN debian package archive? I remember Schwern making a joke about it after Ingy's plea for PPM help at YAPC last year. Did anything ever eventuate? At the moment, many packages are being built by the debian project, but it's far from ideal as they tend to be a version or two behind, and only covering a very small proportion of CPAN. IMHO, it's better than what we would do, because Debian packages have extensive regression testing on version interdependencies. I think it would be a bad idea for us to make .dpkg's that don't have that kind of interdependency QC. I'd like to see make target that can make RPMs and debs if the appropriate files are present, i.e, a SPEC file for an RPM (dunno what for a deb). That way, the packaged version would exist, but when (if) it was integrated into debian would still be a matter of when it was deemed Tested Enough. -- Language is not neutral. It is not merely a vehicle which carries ideas. It is itself a shaper of ideas. -- Dale Spender
Re: repost: RFC: CPAN::Grab
On Mar 07, darren chamberlain wrote: Quoting Kurt D. Starsinic [EMAIL PROTECTED] [Mar 07, 2002 10:28]: On Mar 07, Sam Vilain wrote: Which reminds me. Is anyone working on a CPAN debian package archive? I remember Schwern making a joke about it after Ingy's plea for PPM help at YAPC last year. Did anything ever eventuate? At the moment, many packages are being built by the debian project, but it's far from ideal as they tend to be a version or two behind, and only covering a very small proportion of CPAN. IMHO, it's better than what we would do, because Debian packages have extensive regression testing on version interdependencies. I think it would be a bad idea for us to make .dpkg's that don't have that kind of interdependency QC. I'd like to see make target that can make RPMs and debs if the appropriate files are present, i.e, a SPEC file for an RPM (dunno what for a deb). That way, the packaged version would exist, but when (if) it was integrated into debian would still be a matter of when it was deemed Tested Enough. Just to be clear, one of the most use features of a .dpkg is the _versioned_ dependencies. You can't build them automatically. If you leave them out of make them up, then what you've got is no better than `make tardist'. Which is pretty good. - Kurt
Re: repost: RFC: CPAN::Grab
I've posted this about 6 months ago, but got no feedback. I guess I'll just go ahead and release the module. I don't remember the previous post, but I'll answer now I've attached a new module (very small) called CPAN::Grab. This is a really great idea. I could've used something like this not too long ago. - Should it be integrated with CPAN.pm shell? I'd probably see myself using this separately from the CPAN.pm shell. I think of CPAN.pm's functionality as installing modules on the local system, not downloading modules. CPAN::Grab isn't used to install the modules locally, so to me they don't seem compatible conceptually. - Should MakeMaker be aware of it? I think this could be very helpful, except you have to determine how deep to go. If my module Foo requires Bar and Bar requires Baz, then will it download Baz too? Similarly, what do you think about using CPAN::Grab to also download prerequisites of the modules you initially specify? This should be optional of course, but might be helpful as the point is targeting the bundle for systems that aren't using the CPAN.pm shell. Without CPAN.pm they loose the functionality of being able to download prerequisites automatically. - Is CPAN::Grab is the right name? How about CPAN::Bundler? Grab doesn't seem descriptive enough. CPAN.pm grabs modules already, but this module does more than that. --Ade.
Re: repost: RFC: CPAN::Grab
On Wed, Mar 06, 2002 at 11:08:13AM -0500, Adekunle Olonoh wrote: I've attached a new module (very small) called CPAN::Grab. This is a really great idea. I could've used something like this not too long ago. This could be very useful. - Should MakeMaker be aware of it? I think this could be very helpful, except you have to determine how deep to go. If my module Foo requires Bar and Bar requires Baz, then will it download Baz too? Similarly, what do you think about using CPAN::Grab to also download prerequisites of the modules you initially specify? This should be optional of course, but might be helpful as the point is targeting the bundle for systems that aren't using the CPAN.pm shell. Without CPAN.pm they loose the functionality of being able to download prerequisites automatically. I would like to see the perl MakeMaker install process be able to break the entire installation of the module with its dependencies into separate phases such as download, analysis, build and installation. By integrating the MakeMaker, CPAN and CPAN::Grab in this way, if a dependent module cannot be installed, e.g. a required third-party package is not installed, a clean rollback process is in place and the dependencies are clearly documented. One could also execute only the download and analysis phases to verify the presence of all requirements, too, before attempting a complete installation. I don't believe MakeMaker currently has the hooks built into it for this kind of sophisticated module maintenance. - Is CPAN::Grab is the right name? How about CPAN::Bundler? Grab doesn't seem descriptive enough. CPAN.pm grabs modules already, but this module does more than that. CPAN::Grab would probably be appropriate if such a scheme as I described is attempted because CPAN::Grab would then become a small component of the entire system. Robert Lehr [EMAIL PROTECTED]
Re: repost: RFC: CPAN::Grab
On Wednesday, March 6, 2002, at 11:48 AM, Stas Bekman wrote: The real problems with prerequisites are: - some modules don't specify prerequisites :( But I think we can add code to parse the code to figure out simple require and use cases. Weren't there a module doing this? I think I read about it in some old TPJ. Anyone? I wouldn't do that if I were you. Too much room for error and annoyance. If a module doesn't specify prereqs, there's not much we can do, unless you want to maintain a manual list of unspecified prereqs. - should you bundle only prerequisites which aren't installed on the system the bundler runs on, or should it take all the prerequisites. I guess this could be an option. That would be a nice option. - what happens if a certain version of perl is a prerequisite? Should it be grabbed too? But then it's not perl Makefile.PL make install. This could be a big problem. It should probably just be noted as a prereq, and then if you attempt to install on a machine that doesn't have the right perl version, it should fail. Presumably it'll fail somewhere in one of the module installations anyway. Good idea. If nobody comes up with another name, it'll be CPAN::Bundler I don't like that much, because it doesn't actually create a CPAN Bundle (does it?). -Ken
Re: repost: RFC: CPAN::Grab
On Wed, Mar 06, 2002 at 11:08:13AM -0500, Adekunle Olonoh wrote: I've attached a new module (very small) called CPAN::Grab. This is a really great idea. I could've used something like this not too long ago. This could be very useful. - Should MakeMaker be aware of it? I think this could be very helpful, except you have to determine how deep to go. If my module Foo requires Bar and Bar requires Baz, then will it download Baz too? Similarly, what do you think about using CPAN::Grab to also download prerequisites of the modules you initially specify? This should be optional of course, but might be helpful as the point is targeting the bundle for systems that aren't using the CPAN.pm shell. Without CPAN.pm they loose the functionality of being able to download prerequisites automatically. I would like to see the perl MakeMaker install process be able to break the entire installation of the module with its dependencies into separate phases such as download, analysis, build and installation. By integrating the MakeMaker, CPAN and CPAN::Grab in this way, if a dependent module cannot be installed, e.g. a required third-party package is not installed, a clean rollback process is in place and the dependencies are clearly documented. One could also execute only the download and analysis phases to verify the presence of all requirements, too, before attempting a complete installation. I don't believe MakeMaker currently has the hooks built into it for this kind of sophisticated module maintenance. - Is CPAN::Grab is the right name? How about CPAN::Bundler? Grab doesn't seem descriptive enough. CPAN.pm grabs modules already, but this module does more than that. CPAN::Grab would probably be appropriate if such a scheme as I described is attempted because CPAN::Grab would then become a small component of the entire system. Robert Lehr [EMAIL PROTECTED]
repost: RFC: CPAN::Grab
I've posted this about 6 months ago, but got no feedback. I guess I'll just go ahead and release the module. Original Message Subject: RFC: CPAN::Grab Date: Thu, 6 Sep 2001 17:28:02 +0800 (SGT) From: Stas Bekman [EMAIL PROTECTED] To: [EMAIL PROTECTED] CC: Andreas J. Koenig [EMAIL PROTECTED] I've attached a new module (very small) called CPAN::Grab. Andreas, any chance we can integrate it with CPAN dist? Here is the doc, the questions are at the end. NAME CPAN::Grab - Grab a bundle or a number of modules from CPAN and package them into one buildable tar. SYNOPSIS % perl -MCPAN::Grab -wegrab MyLocalBundle 0.1 Bundle::Apache % perl -MCPAN::Grab -wegrab MyCoolBundle 0.1 MD5 CGI DESCRIPTION This package does a very simple thing. It grabs the source packages from CPAN, using CPAN.pm and puts them all into a single *tar.gz*, that later can be installed in one command. Sometimes it's important that we provide an easy way to provide all the required package, to save a hassle to users especially if they have to use our software, but know little or no Perl at all and don't know how to use CPAN shell to install all the required packages. Releasing Bundles and properly defining prerequisites is important, and we go one step further to actually provide sort of SDK. This package relies on the locally working CPAN shell. If you didn't configure your CPAN.pm, do it now. If normally CPAN.pm works for you, this package should work too. CAVEATS Some packages' build is interactive (i.e. user input is expected). Therefore we use CPAN's *inactivity_timeout* attribute to interrupt the awaiting for user's input after a few seconds, which works in *perl Makefile.PL* stage, but not during *make*. In the latter case you have to manually satisfy the requested input or interrupt it. Since here we completely rely on CPAN shell to do the right thing, there is not much we can do. USAGE To grab the packages *Foo* and *Bar* (which can be single modules, or bundles) and pack them into a package *FooBar* version 0.2, execute: % perl -MCPAN::Grab -wegrab FooBar 0.2 Foo Bar this will create FooBar-0.2.tar.gz in the current directory. Now to install the contents of this package, run: % tar -xzvf FooBar-0.2.tar.gz % cd FooBar % perl Makefile.PL make install The last command will go through all the source packages and run: % perl Makefile.PL make install in every one. AUTHORS Stas Bekman [EMAIL PROTECTED] Inspired by Doug MacEachern [EMAIL PROTECTED] __END_OF_DOC__ Also Barrie Slaymaker has suggested that MakeMaker will be aware of this module and take a use of PREREQ_PM, so authors can produce a version of their module with all the prerequisites in the same package. This could be done via: make prereq_dist Now the questions: - Should it go to CPAN on its own? - Should it be integrated with CPAN.pm shell? - Should MakeMaker be aware of it? - Is CPAN::Grab is the right name? Thanks! _ Stas Bekman JAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide http://perl.apache.org/guide mailto:[EMAIL PROTECTED] http://apachetoday.com http://eXtropia.com/ http://singlesheaven.com http://perl.apache.org http://perlmonth.com/ -- _ Stas Bekman JAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide http://perl.apache.org/guide mailto:[EMAIL PROTECTED] http://ticketmaster.com http://apacheweek.com http://singlesheaven.com http://perl.apache.org http://perlmonth.com/ CPAN-Grab-0.1.tar.gz Description: Binary data