New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CPAN install of modules deprecated in perl core #9912
Comments
From @nwc10Created by @nwc10There isn't a ticket for this yet: Need to provide patches for CPAN and CPANPLUS so that a: 'install Switch' (etc) Are there any other "loopholes" we need to close, so that the toolchain treats Deprecating modules from core for the 5.12.0 release doesn't work until we've Nicholas Clark Perl Info
|
From @xdgCPAN.pm doesn't care if a module is core or not. If a requested module As long as the version on CPAN is newer than the deprecated version in -- David |
The RT System itself - Status changed from 'new' to 'open' |
From @nwc10On Mon, Oct 19, 2009 at 01:36:40PM -0700, David Golden via RT wrote:
The module on CPAN will be the *same* version as in core. This is deliberate. If CPAN is intentionally 1 ahead of core then we get the following issues Start with: Core has 1.23, CPAN has 1.24 Dual life module author makes bug fix. Forgets this little constraint Now, can't integrate *that* to blead because it's the same version So, put out 1.27 on CPAN, which is just a version bump, so that 1.26 can go Alternative, also not good: Have a 1.26 in core that has the code that warns that it is depreciated The PAUSE indexer is now unhappy (or Andreas isn't) because we have two modules The design is to have byte for byte *identical* versions on CPAN and core, The trick to having this work is that the toolchain modules 1: know which modules are deprecated in core I know that CPAN can already do most of this, because "force install" works. Nicholas Clark |
From @xdgOn Mon, Oct 19, 2009 at 4:45 PM, Nicholas Clark <nick@ccl4.org> wrote:
I thought the strategy was to have "deprecated" used to indicate My thought is that anything deprecated get a version in core marked Deprecating a module then just requires: * Bump version slightly in core (could be a dev version) and add Does that solve the problem without adding special cases in the toolchain?
If we really have to go this way, add this to Module::CoreList (or -- David |
From @nwc10On Mon, Oct 19, 2009 at 04:57:24PM -0400, David Golden wrote:
Yes, No. The code of deprecate.pm consults %INC to see where the module was laoded from. As sitelib is now ahead of archlib in @INC, the same module installed in both Hence code will work, with warnings, for the duration of the deprecation Hence when, after the deprecation period the module is removed, packages now
I was assuming a general solution. We may well deprecate from core actively Given that the aggregation of the current plans for blead and maint amount to: The combination of all 3 as proposed is that only .0 stable releases have There *aren't* going to be that many stable releases with bug fixes - at which, I believe, isn't actually what people want, but is right now the *best* So I'm not assuming that this plan will stick, given that Dave has *also*
Yes, but irritates me because I worked hard to make a general solution
Agree. I had assumed that the toolchain gets the version of installed modules, Either way, yes, it's better to put the data in Module::CoreList. Nicholas Clark |
From @xdgOn Mon, Oct 19, 2009 at 5:22 PM, Nicholas Clark <nick@ccl4.org> wrote:
I need to jump back to those threads, but I understood it to be only
Sorry. I'm in 'special-case' hell maintaining M::B::Compat (and much
Generally speaking, I think most of the toolchain searches @INC for -- David |
From @xdgOn Mon, Oct 19, 2009 at 5:45 PM, David Golden <dagolden@cpan.org> wrote:
I think I finally grok what you're asking for. You want deprecated * When CPAN/PLUS check for the "installed" version of a This means that while anything that happens to specify the deprecated The only tricky bit I see is that when users search for a module (e.g. As for Module::CoreList, this is what I want as an API, I think: if ( Module::CoreList->is_deprecated( $module, $perl_version ) ) { ... } With -- David |
From @andkDavid, the commit 22a8f074 in cpampm repo was already trying to do (a) |
From @bingosOn Mon, Oct 19, 2009 at 08:47:07PM -0400, David Golden wrote:
Seconded. CPANPLUS would need amending it at least two places from what I can see: CPANPLUS::Module Module::CoreList is already used by CPANPLUS. CPANPLUS delegates checking whether a module is installed already or not to I see blead already has Switch deprecated and @INC set appropriately, cool. All I need is the M::CL function then. Cheers, --
|
From @xdgModule::CoreList::is_deprecated is implemented in perl Core. CPAN.pm in repository has been updated to use it and the next time Switch needs a new CPAN release from blead that includes the newly Shell needs change INSTALLDIRS and re-release to CPAN. C.f. That's it from the CPAN.pm side, I think. -- David |
From @obraTested against 5.11.3tobe with now-current CPAN and CPANPLUS. Each will install Switch from CPAN the first time it's asked to and Resolving |
From [Unknown Contact. See original ticket]Tested against 5.11.3tobe with now-current CPAN and CPANPLUS. Each will install Switch from CPAN the first time it's asked to and Resolving |
@obra - Status changed from 'open' to 'resolved' |
Migrated from rt.perl.org#69854 (status was 'resolved')
Searchable as RT69854$
The text was updated successfully, but these errors were encountered: