I'm maintaining several modules on CPAN:
http://search.cpan.org/~shlomif/
At the moment I'm using ExtUtils::MakeMaker for all of my modules. It
generates and maintains a META.yml file that contains meta-information about
the module. At the moment, I'm keeping it in my version control repository.
However, it constantly changes and I need to re-commit it there.
So my question is: should I keep it there, or is it entirely generated from
other files and I can remove it?
Regards,
Shlomi Fish
---------------------------------------------------------------------
Shlomi Fish shl...@iglu.org.il
Homepage: http://www.shlomifish.org/
Hacker sees bug. Hacker fixes bug.
These files can be re-genrated easily using default Makefile.PL. They are not
required during development of the libraries, nor for their proper
functionality, and are only necessary while distributing them. So keeping them
in Verson control is pointless.
--
Sherzod
Well, "Makefile" is obviously being generated from Makefile.PL. However,
"MANIFEST" is not. I just tried deleting the MANIFEST, and running "perl
Makefile.PL; make dist". I got an empty distribution. One should maintain
MANIFEST manually.
Thanks for your opinion regarding META.yml.
Regards,
Shlomi Fish
--
Try running 'make manifest'. See also MANIFEST.SKIP.
Regarding your original question - I think you're asking "there's a
META.yml file generated. Is it generated?" The answer is yes.
-Ken
> On Saturday 26 March 2005 20:18, Sherzod Ruzmetov wrote:
> > There is no use of, nor benefit from keeping "Makefile", "MANIFEST" and
> > "META.yml" files under version control.
> >
>
> Well, "Makefile" is obviously being generated from Makefile.PL. However,
> "MANIFEST" is not. I just tried deleting the MANIFEST, and running "perl
> Makefile.PL; make dist". I got an empty distribution. One should maintain
> MANIFEST manually.
make manifest
> Thanks for your opinion regarding META.yml.
You can manually add information to META.yml which cannot be generated
automatically. If you do so, then keeping it under version control is
sensible.
--
Paul Johnson - pa...@pjcj.net
http://www.pjcj.net
Of course, `make manifest` *assumes* a bunch of not be accurate.. I
have modules with test files that I don't want in the distribution,
since hey only run in my machine, for instance.
> > Thanks for your opinion regarding META.yml.
>
> You can manually add information to META.yml which cannot be generated
> automatically. If you do so, then keeping it under version control is
> sensible.
>
> --
> Paul Johnson - pa...@pjcj.net
> http://www.pjcj.net
--
Jose Alves de Castro <c...@cpan.org>
http://jose-castro.org/
"a bunch of stuff that might not"
This is what I do folks in regards to MANIFEST file. First off, I don't keep it in CVS
repository. But I do keep MANIFEST.skip file in CVS. This file keeps rules governing
MANIFESTation process.
Whenever I want to distribute the work to CPAN I
* tag the current sandbox:
$ cvs tag rel-4_00_01-cpan
* release the sandbox:
$ cvs release CGI-Session
* export it:
$ cvs export -r rel-4_00_01-cpan CGI-Session
* prepare the distribution:
$ perl Makefile.PL
$ make manifest
$ make metafile
$ make dist
$ cpan-upload CGI-Session-4.00_01.tar.gz
If you release too frequently to CPAN that typing above over and over again is painful,
then you can edit Makefile.PL to introduce new targets to the generated "Makefile" then do (for instance):
$ make prepare_distro
Voila. Consult ExtUtils::MakeMaker for details
--
Sherzod B. Ruzmetov <sher...@handalak.com>
<URL: http://author.handalak.com >
>>>> Well, "Makefile" is obviously being generated from Makefile.PL.
>>>> However, "MANIFEST" is not. I just tried deleting the MANIFEST, and
>>>> running "perl Makefile.PL; make dist". I got an empty distribution.
>>>> One should maintain MANIFEST manually.
>>>
>>> make manifest
>>
>> Of course, `make manifest` *assumes* a bunch of not be accurate.. I
>
> "a bunch of stuff that might not"
This is what MANIFEST.SKIP is for.
Sébastien Aperghis-Tramoni
-- - --- -- - -- - --- -- - --- -- - --[ http://maddingue.org ]
Close the world, txEn eht nepO