I see your point with SHA1 hashes, and it does seem to work well for git.

But remember that git keeps a database that lets you map that SHA1 hash to a date, author, log message and diff - and the other way round. If you don't have such a database, all you'll get on a SHA1 mismatch is just that - a message "hash verification failed", no more informations.

It also implies that you can't require a minimum version of a module, just one specific version.

(I do agree on your point of having just version number per distribution - I do that already, and it works fine for me; other solutions are svn $Id$ tags that automatically get expanded into revision numbers).

So in summary I think that it might be worth pondering such an idea if you redo the complete module loading and distribution system, but I don't think it's feasible to plug onto the existing system.

Note that Rakudo, a Perl 6 implementation, is now sufficiently advanced that people write modules for it, and want to distribute them. If you're into actually building something, they'll happily accept anything that actually works, and that tracks versions and dependencies.

(The emphasis is on building stuff - we have enough people that are happy to discuss it, but discussions don't deploy code. Programs do.)


In reply to Re: <pkg>::VERSION, git, hashes, shipit, Class::MOP, Moose, perl core support - what NOW makes sense. by moritz
in thread <pkg>::VERSION, git, hashes, shipit, Class::MOP, Moose, perl core support - what NOW makes sense. by otto

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.