develooper Front page | perl.perl5.porters | Postings from September 2012

Re: [Round 2] Taking CPANPLUS out of core

Thread Previous | Thread Next
From:
Craig A. Berry
Date:
September 30, 2012 07:33
Subject:
Re: [Round 2] Taking CPANPLUS out of core
Message ID:
CA+vYcVzCNyudhqATm5O8MYW8EXMwABKj5DTAPSTjPzxfyKdomQ@mail.gmail.com
On Sun, Sep 30, 2012 at 8:42 AM, demerphq <demerphq@gmail.com> wrote:
> On 30 September 2012 15:29, Sawyer X <xsawyerx@gmail.com> wrote:
>> Hi,
>>
>> this is the second round of deliberations on the subject of CPANPLUS. There
>> were many comments in the original thread and as usual the discussion also
>> spiraled into several sub-threads on different topics. I don't want to miss
>> either and I don't want the subject to get stale so I've starting a new
>> thread with the summaries I've gathered. I hope that's okay.
>>
>> CPAN.pm vs. CPANPLUS on VMS:
>> A raised issue was that CPAN.pm doesn't work right on VMS, which is why
>> CPANPLUS is used. Is CPAN.pm really broken on VMS?
>
> Im sure it is just an artifact of how you worded this, but it sure
> sounds like you doubt Craig's word on this, which doesnt make sense to
> me. I think you can assume if he says its broken that it is broken.

It's pretty easy to demonstrate.  It passes all its tests but the most
trivial use of it does this:

$ cpan install "Acme::Tiny"

CPAN.pm requires configuration, but most of it can be done automatically.
If you answer 'no' below, you will enter an interactive dialog for each
configuration option instead.

Would you like to configure as much as possible automatically? [yes]
 <install_help>

Warning: You do not have write permission for Perl library directories.

To install modules, you need to configure a local Perl library directory or
escalate your privileges.  CPAN can help you by bootstrapping the local::lib
module or by configuring itself to use 'sudo' (if available).  You may also
resolve this problem manually if you need to customize your setup.

What approach do you want?  (Choose 'local::lib', 'sudo' or 'manual')
 [local::lib]
Couldn't create directory d0:[craig]/.cpan.
Please retry.
Couldn't create directory d0:[craig]/.cpan.
Please retry.
Couldn't create directory d0:[craig]/.cpan.
Please retry.
Couldn't create directory d0:[craig]/.cpan.

[loops endlessly until interrupted]

And note that I do have write access to the Perl library directories,
in this case on two counts: I'm the owner of them and I'm also running
with privileges that give me write access to everything.  So whatever
it's doing to detect that is simply wrong in this environment, and
there are probably many such portability gotchas.

I might be persuaded to try to port CPAN to VMS. It's only been on the
to-do list for about 14 years [1].  But CPANPLUS has been working for
the last five, so porting CPAN hasn't been a priority and other things
that need doing (like porting IPC::Open3) have no working alternative.

In general I'm happy to see the core support only one way of doing
things, and if the older, less sexy alternative is the one that works
better, that's the one I favor (e.g., I'd be happy to see us admit
that Module::Build has failed to supplant MakeMaker and remove it from
core).  In the particular case of CPAN/CPANPLUS, the latter is the one
that works for me.  But, again, I recognize that I'm only one person
representing a tiny constituency and what's best for me is not
necessarily best for the community as a whole.


[1] http://www.sidhe.org/vmsperl/todo.html

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About