Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

JETTERO tries to take over Net::IMAP::Simple on PAUSE

by jettero (Monsignor)
on May 15, 2009 at 11:31 UTC ( #764247=perlmeditation: print w/replies, xml ) Need Help??

PAUSE says, "Post a public message in a heavily trafficed site announcing your intention to take over the module. Potential places are,, and any appropriate mailing lists or web forums."

For years now, I've been trying to contact the authors of Net::IMAP::Simple. I gave up and released my patches under an alternate name (Net::IMAP::Simple::Plus) -- but I thought: instead of adding even more to it, perhaps I should just ask modules-perl-org if I can upload my changes under the right name.

I'd really rather hear from them, but I've no idea how to reach them.

UPDATE: Trying all the routes suggested below. LATER: I didn't find anyone by the name Colin Faber on facebook that looked relevant. I did find a likely candidate on linkedin -- man they make it hard to send someone a message without paying, I claimed we worked together at I Made This Up between 1998 and 1999.

I'm not likely to call anyone. If he really wanted to be contacted, he would have kept his CPAN email up to date (it bounces). I suspect he's moved on to Ruby, Python, or *gasp* management. Time will tell. I'm certainly in no hurry to contact modules@ about it, so he's got plenty of time to learn of the learn of the power struggle ... and, if he ever wants it back, that won't be a problem either.

Even later: turns out his CPAN address does indeed work. I know I've tried it before, but it did work today. Further, he said he doesn't really have time to work on it anymore, and it may turn out that I'll become the maintainer without involving modules@ -- which I think is the point of this process.


  • Comment on JETTERO tries to take over Net::IMAP::Simple on PAUSE

Replies are listed 'Best First'.
Re: JETTERO tries to take over Net::IMAP::Simple on PAUSE
by Herkum (Parson) on May 16, 2009 at 14:08 UTC

    I assume that you have their public email address from cpan. If they are not responding to that I would consider calling up the company using the phone number from the 'Contact Us' page. If he still works there they should be able to tell you and if he no longer does, maybe tell you where he went.

    The other options you have are look for him on 'Facebook' (GAAAHH!!!), or LinkedIn(which there is someone who works at McGraw Hill as a Unix Admin).

Re: JETTERO tries to take over Net::IMAP::Simple on PAUSE
by EvanCarroll (Chaplain) on May 16, 2009 at 20:37 UTC
    Your post brings up a lot of cpan deficiencies -- management, the inability to fork into the same name-space, etc... I don't have a solution to your problem, I've had the same issues and in the past I've just hostilely forked into a different name-space to get the job done MooseX::Types::DateTime::ButMaintained. In the end, I hope cpan dies and gives way to something like which allready supports this functionality and is making headway into Ruby with the ruby-gem autobuild system.
    I for one vote you get the maintainership you're seeking without any more undue hardship, so long as you keep the already packaged version of this distro so people can find it if you break anything.

    Evan Carroll
      I think the current system works just fine. This is part of the process. It's easy for an active maintainer to keep control of a namespace and there is also a path to recover a namespace if necessary -- the nuclear option being: modules@. It makes perfect sense to me how it is. Nothing stops you from creating a similar namespace (with a x on the end or ::Plus, like I did) if you want to make a fork.

      No changes required.

      Also note that when you make forks on github (for example); you're making a brand new namespace every time too. It'd be much like if every module on CPAN was JETTERO::Net::IMAP:... though.


        Just a few corrections:
        Also note that when you make forks on github (for example); you're making a brand new namespace every time too. It'd be much like if every module on CPAN was JETTERO::Net::IMAP:... though.

        That is pretty much wrong. Github, unlike cpan, does not tie the name of the perl package, to the working name in the index. Everyone can have a package Foo. So if this project was on github, and you forked it you'd have a unique namespace on github to develop and release changes all while maintaining the same *perl* namespace. The responsibility of integrating your chances goes on the *maintainer*.

        Perl 6 will support this with authorities. So in your case, in p6, your CPAN authority would change from <cpan:cfaber> in the use declaration to <cpan:jetthro>. If more people see your package as authoritative, you can become the new (social not technical) central point.

        What does this mean, well it all boils down to this: if your package is totally backwards compatible, but it has bug fixes, than by publishing it to a different perl namespace your hacking around a technical deficiency of CPAN/perl. The future holds a much better way. Even now though, without adapting perl5 to use authorities, cpan should support this -- the difference is because we don't have authorities your change would effect the whole install. So you should be able to publish to cpan under the same package, download the package from a different cpan-namespace, and then it would just silently and transparently effect all things that used that perl package.

        I just wanted to try to sum this up clearer: the issue with cpan is you're not trying to release a *new* package, you're trying to patch and improve upon an old package. You're having to partake in a social obstacle that you shouldn't have to bother with: tracking down the author, convincing him your changes are better, getting him to release another copy or transfer maintainership. This is an endeavor you, as someone who is not new to cpan, might be willing to do; but I'm not sure that everyone is going to bother calling up companies to track down some old hacker.

        Evan Carroll
        The most respected person in the whole perl community.
      Ever seen UNAUTHORIZED RELEASE on CPAN? That is forking. Instead of pulling from jettero's github, instead of downloading jettero's UNAUTHORIZED RELEASE, jettero wants to become the official release, so his release shows up in the module list.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://764247]
Approved by Corion
Front-paged by Corion
[choroba]: Algorithm::Loops
[Corion]: choroba: I'm using that to generate the permutations, but I don't know how the user can pass the intended values to my function in a sane way
[Corion]: I have a prototype that permutes the get_parameters, but the values used for the get parameters should be different from the values used for the headers and potentially for parts of the URL
[Corion]: But yes, in general, my approach will be "split the URL into another set of parameters, generate an array of allowed values for each parameter and then NestedLoops() over the set"
[choroba]: hmm... so you need something like bag from Test::Deep, but not for checking, but for generation
[Corion]: This has the dual use of easily requesting sequential URLs and also being suitable for testing
[Corion]: For testing, I want to skip all tests with the same value(s) once one test fails to cut down on the number of failing tests
[Corion]: choroba: Yes, in a way I
[Corion]: ... I'm treating the incoming value sets as bags... Maybe I'll just put the burden on the user, at least in the first attempt at a full API. generate( headers => [{ 'Content-Type' => 'text/plain' }, {'Content-Type' => 'text/json' ] ), even ...
[Corion]: ... if that is cumbersome for the caller to specify. On the other hand, maybe there isn't that big a need for permuting the header values

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2017-01-17 08:22 GMT
Find Nodes?
    Voting Booth?
    Do you watch meteor showers?

    Results (152 votes). Check out past polls.