I see backwards compatibility as a major pillar of the Perl community, so I would suggest aiming to support whatever version provides the features your API needs, within reason. For example, I am currently working on a WARC library for Perl and the API uses tied lexical filehandles — and there were bugs in 5.8.0 that resulted in leaking lexical filehandles, so 5.8.1 is the minimum for my project, even though some versions of 5.6 might be able to run my code.

That said, there is still at least one 5.8.5 smoker out there, (and my non-broken tests have passed on it) so as a practical matter I would be more inclined to bump the required version rather than work around bugs in perl releases even more ancient than that.

My philosophy is generally to let older versions run the tests and see if I get failure reports, but to go ahead and exclude versions known to have bugs that would cause disaster if the code were put into production. I am up to "alpha-5" as I call v0.0.0_5 currently. I follow release early, release often, as long as the tests exist and pass: the very first "alpha-1" release had no actual code, just empty subs and stub unit tests to ensure that the modules parse OK and verify the embedded POD. Each subsequent release has been a step along the way to building the library, while rolling in bug fixes for previously-failing tests.

The CPAN smokers seem to all run various Unix-like systems but are still an impressive variety of configurations. If your distribution has a version with an underscore instead of a dot ahead of the last number, the smokers will test it but it will only be installed for users if specifically requested.


In reply to Re: Determining minimum Perl version for new module by jcb
in thread Determining minimum Perl version for new module by wanna_code_perl

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.