Bug#726571: RlwrapFilter.pm should be /usr/share/perl5/App/Rlwrap/Filter.pm
Hi Ivan, is this still something you'd like to see changed? On Sat, Nov 02, 2013 at 10:30:30 +, Ivan Shmakov wrote: > Being unfamiliar with rlwrap(1), I’ve implemented a crude but > seemingly useful work-alike in Perl. While I’m not planning to > release it anytime soon (now that I’ve learned that rlwrap(1) > fits my needs more than I’ve initially thought), it’s possible > that it will borrow the rlwrap’s protocol, and thus filters > based on RlwrapFilter.pm will no longer be specific to rlwrap. This seems like a reasonable argument for making the Perl module visible in the standard Perl library path, and therefore something you might want to discuss with upstream. I don't see a big advantage to making the Debian package deviate from the intentions of upstream to this extent, so if you'd like to see the RlwrapFilter module be more useful to applications outside of rlwrap itself, I suggest you discuss it with Hans Lub, the upstream author. Feel free to cc me or this bug report. -- mike signature.asc Description: Digital signature
Bug#726571: RlwrapFilter.pm should be /usr/share/perl5/App/Rlwrap/Filter.pm
> Mike Miller writes: > On Wed, Oct 16, 2013 at 18:56:33 +, Ivan Shmakov wrote: >> The conventional namespace for application-specific Perl modules is >> App::⟨package name⟩::⟨module name…⟩. > Can you give some examples or references? Perhaps I was a bit mistaken on this one, as CPAN seem to generally mix module (as in: Local::Example) and distribution (Local-Example) naming conventions. Still, consider, e. g.: ⋯ ✂ ⋯ https://pause.perl.org/pause/query?ACTION=pause_namingmodules#App ⋯ ✂ ⋯ App You can distribute applications as Perl distributions. Typically, those sorts of distributions go under the App namespace, like App::Ack, App::Cpan, and App::Prove. The namespace implies that its a ready-to-use program rather than a module. ⋯ ✂ ⋯ https://pause.perl.org/pause/query?ACTION=pause_namingmodules#App ⋯ ✂ ⋯ > I see a few but not enough that I'd call it a convention. As opposed > to simply $PACKAGE::$MODULE... I’d expect the latter convention to be followed in the case of bigger “library-first” projects (like DBD::*, for instance.) I wouldn’t deem it appropriate to grab a top-level namespace for less than a handful of modules. (And the Pause’s page quoted above seem to agree on that.) […] >> Therefore, my suggestion would be to move RlwrapFilter.pm from >> /usr/share/rlwrap to /usr/share/perl5/App/Rlwrap/Filter.pm, and edit >> its ‘package’ line (as well as the filters’ ‘use’ lines) >> respectively. (In order to preserve compatibility, a “redirecting” >> .pm may be installed at the former location.) >> This will bring the module in line with the other Perl modules in >> Debian, and will allow for a Perl filter to be started with simple >> ‘use App::Rlwrap::Filter;’ instead of the current form, which >> explicitly the Perl module search path (as shown below.) > Do you have any other reasons for wanting to make this change, some > added functionality or benefit that would come from doing this > reorganization? Being unfamiliar with rlwrap(1), I’ve implemented a crude but seemingly useful work-alike in Perl. While I’m not planning to release it anytime soon (now that I’ve learned that rlwrap(1) fits my needs more than I’ve initially thought), it’s possible that it will borrow the rlwrap’s protocol, and thus filters based on RlwrapFilter.pm will no longer be specific to rlwrap. Other than that, I’m somewhat concerned with the “hiding” of the Perl modules done by Debian packages. My guess is that some of them could very well find certain uses unanticipated by their respective authors. -- FSF associate member #7257 -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#726571: RlwrapFilter.pm should be /usr/share/perl5/App/Rlwrap/Filter.pm
Package: rlwrap Version: 0.37-3 Severity: wishlist The conventional namespace for application-specific Perl modules is App::⟨package name⟩::⟨module name…⟩. Moreover, the conventional directory for Perl modules is /usr/share/perl5, and indeed, – it’s already in @INC, while /usr/share/rlwrap isn’t. Therefore, my suggestion would be to move RlwrapFilter.pm from /usr/share/rlwrap to /usr/share/perl5/App/Rlwrap/Filter.pm, and edit its ‘package’ line (as well as the filters’ ‘use’ lines) respectively. (In order to preserve compatibility, a “redirecting” .pm may be installed at the former location.) This will bring the module in line with the other Perl modules in Debian, and will allow for a Perl filter to be started with simple ‘use App::Rlwrap::Filter;’ instead of the current form, which explicitly the Perl module search path (as shown below.) use lib ($ENV{RLWRAP_FILTERDIR} or "."); use RlwrapFilter; AIUI, the non-standard RLWRAP_FILTERDIR becomes completely unnecessary after the change, but may be retained for compatibility with the filters following the current convention. -- FSF associate member #7257 -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#726571: RlwrapFilter.pm should be /usr/share/perl5/App/Rlwrap/Filter.pm
On Wed, Oct 16, 2013 at 18:56:33 +, Ivan Shmakov wrote: > The conventional namespace for application-specific Perl modules > is App::⟨package name⟩::⟨module name…⟩. Can you give some examples or references? I see a few but not enough that I'd call it a convention. As opposed to simply $PACKAGE::$MODULE... > Moreover, the > conventional directory for Perl modules is /usr/share/perl5, and > indeed, – it’s already in @INC, while /usr/share/rlwrap isn’t. This is indeed required for packages that primarily provide perl libraries. However there are also many packages in Debian that install perl modules in application-specific directories when those modules are primarily for that application's use only. > Therefore, my suggestion would be to move RlwrapFilter.pm from > /usr/share/rlwrap to /usr/share/perl5/App/Rlwrap/Filter.pm, and > edit its ‘package’ line (as well as the filters’ ‘use’ lines) > respectively. (In order to preserve compatibility, a > “redirecting” .pm may be installed at the former location.) > > This will bring the module in line with the other Perl modules > in Debian, and will allow for a Perl filter to be started with > simple ‘use App::Rlwrap::Filter;’ instead of the current form, > which explicitly the Perl module search path (as shown below.) Do you have any other reasons for wanting to make this change, some added functionality or benefit that would come from doing this reorganization? -- mike -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org