Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Modifying a CPAN Module and Uploading as a New One?

by Anonymous Monk
on Mar 01, 2010 at 19:58 UTC ( [id://825994]=perlquestion: print w/replies, xml ) Need Help??

Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Assume that there is a CPAN module called Test_Child.pm which is part of the bigger family of module called Test_Parent.pm. The Test_Child module is primarily used for doing some test in SQL server, but I modified the Test_Child module so that I can use it to test in a PostgreSQL DB. The modifications are very small such that there are only couples of lines that were added and deleted. But I have been looking around CPAN and could not find a module that I modified to suit my needs.

My question is if I want to upload this module into CPAN as a new module, can I do this? Am I violating any laws? What is the procedure to do this (what do I need to write down in the README file)? Assume that I have a PAUSE id already.

I contacted the author of the module already and he did say that I can use the module according to the license terms. The license is "... GNU General Public License as published by the Free Software Foundation, version 2; OR the Perl Artistic License."
  • Comment on Modifying a CPAN Module and Uploading as a New One?

Replies are listed 'Best First'.
Re: Modifying a CPAN Module and Uploading as a New One?
by JavaFan (Canon) on Mar 01, 2010 at 20:29 UTC
    If the license is GPL, then you can do what you describe, assume you follow the terms of the license. The licensing terms is what matters here, not the fact you're using CPAN as a vehicle to distribute modified software.
Re: Modifying a CPAN Module and Uploading as a New One?
by cdarke (Prior) on Mar 02, 2010 at 00:54 UTC
    Is it sensible to fork a new module? Can your changes be incorported into the existing module using options or a new function interface? There is too much duplication on CPAN, and if your change is minor you should ask yourself if a different module is justified.

    Of course it could be that a new module is the only sensible way forward if your changes have a profound effect, or if the original author is not happy with them.
Re: Modifying a CPAN Module and Uploading as a New One?
by scorpio17 (Canon) on Mar 02, 2010 at 14:37 UTC

    I think your changes sound more like an "enhancement" to the original module. You should submit your changes to the current maintainer, who should then incorporate them into the next release of the module.

Re: Modifying a CPAN Module and Uploading as a New One?
by maverick (Curate) on Mar 02, 2010 at 15:40 UTC
    As scorpio17 mentioned, if your modifications are enhancements, then the best thing to do is submit a patch to the author and get them incorporated in the next release. If you have the time to do so, and are planning on submitting a lot of patches, as to become a co-maintainer of the module. There are a number of free code collaboration sites that can help with this (http://github.com is a popular one).

    In regards to legality, if you made your changes during work hours, you may want to check with your boss that your company doesn't have some sort intellectual property rule that says anything you write during business hours is the property of the company. In which case the changes belong to them, not you (technically) and aren't yours to distribute.

    Fortunately, if you're using open source software at your company, odds are your employers are savvy to the economics of the open source world and would recognize the benefits of allowing you to contribute your changes back to the community. If not, try to educate them :)

    If in the event that you're not able to get your changes into cpan; consider setting up a company wide minicpan and adding your modules to it.

    /\/\averick

Re: Modifying a CPAN Module and Uploading as a New One?
by bichonfrise74 (Vicar) on Mar 02, 2010 at 01:33 UTC
    I agree. Maybe there is no need for this module if the changes are minor.
Re: Modifying a CPAN Module and Uploading as a New One?
by Anonymous Monk on Mar 01, 2010 at 21:19 UTC
    I checked this website: http://www.gnu.org/licenses/quick-guide-gplv3.html

    And under the headings of the Foundations of the GPL, it wrote:

  • the freedom to use the software for any purpose,
  • the freedom to change the software to suit your needs,
  • the freedom to share the software with your friends and neighbors, and
  • the freedom to share the changes you make.

  • Is the license terms? I apologize for the basic question.
      Version 2 is not version 3
Re: Modifying a CPAN Module and Uploading as a New One?
by Anonymous Monk on Mar 02, 2010 at 18:34 UTC
    The problem is that I modified only 1 subroutine from the original module. In my module, there are probably 5-6 methods and this subroutine is part of the new one.
      Subclass it then.

      --
      In Bob We Trust, All Others Bring Data.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://825994]
Approved by Corion
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (7)
As of 2024-04-18 14:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found