jpeacock r6333):
Use even newer ppport.h, per Marcus Holland-Moritz.
Bump $VERSION for release to CPAN as 0.61.
jpeacock r6332):
In my haste to jettison Exporter, I neglected to consider that someone
might try and load version.pm twice. Fixed (and tested).
jpeacock r6317):
Replace ppport.h with much improved version.
Strip out my pathetic compatibility code (see above).
Add dependency to ppport.h to each file with appropriate #define's.
Release to CPAN as 0.60.
jpeacock r6311):
Prep for another beta to CPAN
jpeacock r6310):
Integrate upstream bleadperl changes.
Add compatibility code to vutil.h until ppport.h catches up.
Fix (and test for) the case where class->VERSION is called
jpeacock r6302):
Now works with 'require version' and not just 'use version' (with tests).
Pure Perl UNIVERSAL::VERSION now operates correctly when used as a fallback
inherited class method, e.g. class->VERSION or $obj->VERSION.
jpeacock r6295):
Fix reported failures with UNIVERSAL::VERSION as fallback method in vpp.pm.
Augment new() to try and spot non-magic v-strings for v5.6.2 - v5.8.1.
john_peacock r6272):
Prep beta release to CPAN.
Improve POD on using modules that use version.pm.
New tests.
Require pure Perl module for 5.005_03 (for now).
john_peacock r6271):
Tweak ppport.h #define's to support 5.0005_04
john_peacock r6270):
Rewrite to remove dependency on Exporter.
Fix RT#19017 - problems related to very small version numbers.
john_peacock r6269):
Not sure if this works on 5.005_03 after all
john_peacock r6266):
Complete compatibility with Perl 5.005_0x as well as 5.6.2.
Remove the compatibility warnings.pm (since it was a bad idea).
Release to CPAN.
john_peacock r6264):
Fix the pure Perl release for 5.005_0x (thanks to Nick Ing-Simmons).
Ready for release to CPAN.
john_peacock r6263):
Restore compatibility with Perl 5.6.x (though not with 5.005_x yet).
john_peacock r6261):
* lib/version.pod
Minor POD fixup (revealed by pod2html).
* t/coretests.pm
t/01base.t
t/02derived.t
Suppress status messages except when --verbose is used.
jpeacock r6259):
Release 0.57 to CPAN. Only bumps $VERSION and slightly improve Build.PL.
jpeacock r6257):
Next beta release to CPAN.
* Build.PL
Subclass Module::Build and override have_c_compiler() with one that
fails without die'ing.
* README
lib/version.pm
vperl/vpp.pm
vutil/vxs.pm
$VERSION++.
jpeacock r6255):
Beta release to CPAN.
* README
lib/version.pm
Bump $VERSION for new release.
* vperl/vpp.pm
Fully implemented UNIVERSAL::VERSION in the pure Perl module.
Set explicit $VERSION so that correct module gets loaded during
testing.
* vutil/vxs.pm
Set explicit $VERSION so that correct module gets loaded during
testing.
* t/coretests.pm
Additional tests (based on bleadperl t/op/use.t).
jpeacock r6253):
Another workaround for incomplete testing
jpeacock r6251):
Emergency release to fix up M::B 0.2611 problem
jpeacock r6249):
Neglected to clean up after XS code (since we are playing games).
jpeacock r6248):
No, really, the final changes before releasing to CPAN. :(
jpeacock r6247):
Final updates for 0.54 release to CPAN.
jpeacock r6246):
Merge from version-combined branch. Equivalent to RELEASE_0_53_03.
jpeacock r6239):
Commit changes prior to push to implement pure Perl alternative.
* Build.PL
Need to exclude building on all 5.9.x bleadperl releases.
* lib/version.pod
Forgot a quote in one of the example code fragments.
* vutil/vutil.c
Sync with bleadperl. Only warn if 'use warnings' is set.
jpeacock r6237):
Release 0.53 to CPAN.
* vutil/vutil.c
warn() when initialization string contains trailing characters
(rather than silently ignoring them). Suggested by David Wheeler.
* t/coretests.pm
Test the above change.
* README
Document the above.
* lib/version.pm
lib/version/vxs.pm
Bump $VERSION.
jpeacock r6235):
New version to deal with malformed input data that came up
in bleadperl:
sprintf of version objects
<https://rt.perl.org/rt3/Ticket/Display.html?id=37897>
* README
lib/version/vxs.pm
lib/version.pm
Bump version.
* vutil/vutil.c
Die if input value has underscore but no decimal.
* t/01base.t
t/02derived.t
Use no_plan so I don't need to increment tests any more.
* t/coretests.pm
Check for malformed input.
jpeacock r6233):
Ready for new release to CPAN with minor changes.
* README
Describe minor changes
* lib/version/vxs.pm
lib/version.pm
Bump $VERSION.
* vutil/vutil.c
Eliminate code I'm never going to use.
jpeacock r6226):
* lib/version.pod
PAUSE does so support version objects. Elaborate on support
for Module::Build and lack thereof for ExtUtils::MakeMaker.
jpeacock r6218):
* version/vxs.pm
Forgot to bump this. When am I going to have inherited props?
jpeacock r6217):
* Build.PL
Explicit minimum version of Module::Build. Fixes
<https://rt.cpan.org/Ticket/Display.html?id=16249>
* README
Whoo-hoo! Remember to update this the first time.
* lib/version.pm
Make sure that there is no possible way that Perl will
try to include the non-existant pure Perl vpp.pm
* lib/version.pod
Complete rewrite that is hopefully easier to understand.
jpeacock r6216):
* vutil/vutil.c
Use trinary operator to choose power of 10, rather than pow(),
which caused some problem with AIX 5.1. Resolves:
<https://rt.cpan.org/NoAuth/Bug.html?id=15254>
* t/02derived.t
Suppress unnecessary warning when overriding qv() sub.
jpeacock r6215):
* version/README
Remember to update this for 0.49 release.
jpeacock r6214):
Fix Build.PL so Win32 will compile properly
jpeacock r6213):
* version/Build.PL
Explicit call to dist_name to help Windows DTRT. Resolves
ticket:
<https://rt.cpan.org/Ticket/Display.html?id=14743>
* lib/version/vxs.pm
lib/version.pm
lib/version.pod
t/01base.t
t/02derived.t
t/coretests.pm
vutil/vutil.c
Change implementation to return version objects instead of
version::vxs object. Document that qv() isn't inherited and
give work around. Update tests to no longer test version::vxs
class directly (since it doesn't work). Resolves ticket:
<https://rt.cpan.org/Ticket/Display.html?id=14958>
jpeacock r6210):
Start POD rewrite.
jpeacock r6209):
Significant archectectural change (object hash has to contain
reference to array not the array itself); see
<https://rt.cpan.org/Ticket/Display.html?id=14439>
for details. Initial changes to support pure Perl variant
(not included yet), see
<https://rt.cpan.org/Ticket/Display.html?id=14417>
for more details. All POD moved to seperate file. Tests
abstracted out for reuse by different classes.
jpeacock r6198):
"version" element of hash must be a reference, see:
<https://rt.cpan.org/Ticket/Display.html?id=14439>
for details.
Also, function name changes backported from bleadperl version.
jpeacock r6197):
Badly written subclasses could SEGV (reported by Andreas Koenig).
Now all version objects are validated before use.
Add vverify() function to validate version objects and include
it before each use of a version object. Add tests for poorly
written subclass that tickle the above function.
Apply const'ifying from bleadperl and reformat calls to
sv_[cat|set]pvf to be consistent with bleadperl source.
jpeacock r6196):
Leading whitespace or lack of leading zero caused the the object
to be initialized incorrectly (reported by Andreas Koenig).
Added POD for subclassing. Removed cruft from README file.
jpeacock r6195):
Don't strip trailing zeros unneccesarily
jpeacock r6194):
Spelling fixes from "Piotr Fusik" <pfusik@op.pl>
jpeacock r6193):
Complete rename of files to prevent GCC 4.0 bug
jpeacock r6192):
Preliminary commit for rename of util.[ch]
jpeacock r6191):
Final changes to release 0.43 to CPAN
* README, lib/version.pm
Bump $VERSION number
* t/01base.t
Test that single term version expands to triplet for
$v->normal. Eliminate "Exporter" from derived class.
* util/util.c
Various const'ifying to match Perl's own changes.
Handle short and really short array outputs in vnormal().
* util/util.h
const'ify Perl_scan_version().
jpeacock r6190):
Complete rewrite of parser to handle CPAN-style (two significant
decimal) versions, as well as finish documenting the changes.
* util/util.c
Simplify parser to just count digits when parsing numeric
versions.
* lib/version.pm
Rewrite documentation on Numeric Alpha Versions and make all
examples consistent.
* t/01base.t
Add additional tests for CPAN-style alphas as well as
object->new().
jpeacock r6189):
* lib/version.pm
Revised POD to correspond to new behavior with regards to both
Quoted Versions and Alpha Versions.
* lib/version.xs
Extend new() to be callable as an object method.
Copy existing object if called as object method with no
parameter.
jpeacock r6188):
Working towards a release to CPAN.
* README
lib/version.pm
First pass at documenting the external changes.
* t/01base.t
Since vcmp() is working again, can restore the minimum to the
use line.
* util/util.c
Finish up handling for vcmp to deal with alpha versions.
jpeacock r6187):
Almost completely working; only the comparison tests with
non-objects is still failing.
* lib/version.xs
Simplify is_alpha() now that it is just as hash flag.
* util/util.c
Manually create and copy the hash elements when creating new
object from old object.
Forgot to make sure to display all subversion from short
numeric versions.
jpeacock r6186):
Completed (?) to move to Module::Build
* lib/typemap
lib/version.xs
Move XS and support files to lib/
* util/ppport.h
util/util.c
util/util.h
Move utility functions in their own directory (c_source)
* MANIFEST
Updated to reflect new file locations
Add additional files that were originally left out of file
Alphabetize this listing (for compulsiveness)
jpeacock r6185):
Intermediate commit to facilitate move to Module::Build as well as
work on new hash-based object (all tests do not suceed)
* Makefile.PL
Replace ExtUtils::MakeMaker with Module::Build wrapper
* Build.PL
New M::B file
* version.xs
Try and deal with case where no parameter was passed to new()
* util.c
Changes to access hash-based object (vcmp still busted)
* t/01base.t
Changed to prevent core dump (temporarily)
jpeacock r6184):
Implement alpha versions using secret array zero slot to
differentiate between two place alphas (1.02_03) and three place
alphas (1.002_03) so that versions which only use two significant
places normally will still sort correctly with their alpha
versions.
* util.c
(Perl_scan_version): Somehow manage to both simplify and
complicate the code at the same time.
(Perl_vnumify): use the new zero'th array element to distinguish
between 2 and 3 significant decimal places for printing.
jpeacock r6183):
* util.c
Handle two digit alpha versions
Once a v-style or FP, always a v-style or FP
* t/01base.t
Altered tests to match new expectations
jpeacock r6181):
* Makefile.PL
Windows doesn't understand the braces for shell expansion
* README, lib/version.pm
Change $VERSION string
* t/01base.t
Correctly compare to numified version (instead of stringified)
* util.c
Use same code as bleadperl
AvReal_on required to fix problems under threaded Perl
Slight rewrite of loop code to fix compiler bug on OS X
Display alpha versions properly
* version.xs
new() returns void since it actual returns on the stack
jpeacock r6179):
* util.c
Fix infinite loop for CVS-style versions of more than 3
decimal places.
Thanks to Richard Evans <richard_david_evans@yahoo.co.uk>
* t/01base.t
Test to make sure above doesn't happen again.
* lib/version.pm
Increment the $VERSION again.
* README
Remember to update this before releasing (for a change).
jpeacock r6177):
* lib/version.pm
Increment $VERSION number; have to quote to get the tgz file
named correctly (isn't that what this module is supposed to
fix?)
* version.xs:UNIVERSAL_VERSION()
Check for null sv before attempting sv_derived_from()
Thanks to Marcus Holland-Moritz <mhx-perl@gmx.net> for finding
this.
jpeacock r6169):
Merge changes from version-0.39 back to trunk
jpeacock r6154):
* t/02AlphaBeta.t
* t/01base.t
Update tests to require newer version.
Change test for CPAN-Style version behavior.
* MANIFEST
Delete 'Changes' from repository since it will now be
autogenerated.
* lib/version.pm
Clean up POD to reflect actual behavior of code.
* Makefile.PL
Add new target to automatically generate the 'Changes' file.
* util.c
(Perl_scan_version): rewrite code to use AV * instead of SV *
for internal representation; trigger CPAN-style only for
second term.
jpeacock r6153):
Ignore MakeMaker-generated files in svn status
jpeacock r6152):
Ignore MakeMaker-generated files in svn status
jpeacock r6151):
Ignore MakeMaker-generated files in svn status
jpeacock r6150):
* lib/version.pm
(POD): Initial documentation of CPAN-Style versions.
* util.c
(Perl_scan_version): Try and handle CPAN versions (two
decimal places) differently from Perl-style (three or more
decimal places).
jpeacock r6149):
* typemap
Stop automatically dereferencing input variable
* lib/version.pm
Update $VERSION for a change
* README
Include warning on memory leaks
* util.c
(new_version): use upg_version exclusively
(upg_version): move code from new_version here
* version.xs
Stop dereferencing input variables
Stop assuming that the PV has a value
jpeacock r6148):
* t/01base.t
Replace postfix increment with prefix increment to prevent erroneous
"Attempt to free..." errors
Add test of CVS $Revision: $ style versions
* util.c
Rewrite new_version to free temporary string variable
* version.xs
Rewrite version->new() to eliminate temp string for CVS $Revision: $
Rewrite version->qv() to use scan_version instead of new_version
jpeacock r6145):
M version.xs
Go through code to ensure that there are no leaking scalars
Sadly, there are still leaks from version::VERSION of unknown origins
jpeacock r6144):
M t/02AlphaBeta.t
M lib/version/AlphaBeta.pm
Implement an alternate object representation
Overload stringify() with custom function
jpeacock r6143):
M t/02AlphaBeta.t
Add empty derived class and modify tests to run
M t/01base.t
Work around bug with postfix increment under all Perl < bleadperl
jpeacock r6142):
Fix for Ticket #3764 - need to strip final term before chop()
Implement qv() function and document/test
jpeacock r6140):
Remove the changes file from the repository.
Generate it before release:
svn log file:///var/svn/modules/version/trunk
and eventually by 'release.pl --changes'
jpeacock r6139):
Finish backporting bleadperl changes
Special case test for 5.005_03
Patch ppport.h to support IVSIZE for 5.005_03
jpeacock r6138):
No, really delete the lines from MANIFEST
Last bit of clean up in the POD
jpeacock r6137):
Delete version::Empty module and include in t/01base.t instead
Correct MANIFEST (delete missing files and add ppport.h)
Make version::stringify() return at least three subversions
jpeacock r6136):
Integrate changes from bleadperl
Combine emptyclass.t test into 01base.t
Use ppport.h instead of homebrewed #define's
jpeacock r6135):
Extend version::new() to handle derived classes
Abstract t/01base.t into external file
Create and test empty derived class
FIX: "attempt to free unreferenced scalar" during testing
jpeacock r6125):
Merge changes made accidently on branch back to head
jpeacock r6115):
Forgot to commit this before releasing.
jpeacock r6111):
Correct the example code (again) to correct for CVS update problems
jpeacock r6110):
Reformatted POD's from <Matthew.Persico@Lazard.com>
jpeacock r6109):
Change reference from "beta" to "alpha" to follow PAUSE convention
Add new function ->is_alpha() to test for alpha versions
Add docs for all logical operations on version objects
Fix example to have matching versions (old CVS issue)
jpeacock r6108):
Implement version::AlphaBeta module
Copy repository history from CVS into subversion
jpeacock r6107):
To prepare to load /home/jpeacock/tmp/version-0.28 into version/trunk,
perform 2 renames.
* version/trunk/t/1.t: Renamed from version/trunk/t/version.t.
* version/trunk/lib/version.pm: Renamed from version/trunk/version.pm.
jpeacock r6082):
Extract most recent log messages for main file
jpeacock r6081):
Rewrite POD to call a v-string a v-string
Reformat POD to look nicer
jpeacock r6080):
Make vnumify return an actual NV (instead of an SV which looks like one)
jpeacock r6079):
Make warnings even more dire
jpeacock r6078):
change comment message to more accurately reflect the test
jpeacock r6077):
Rewrite to support new model of "Numeric Versions" and "String Versions"
jpeacock r6076):
New version to cope with GSAR's vision of bare number versions
jpeacock r6075):
Make -w clean tests
jpeacock r6074):
Bring into sync with perl-current
jpeacock r6073):
Bring current with repository version
jpeacock r6072):
Fix compile errors under threaded Perl's
Supress {Unquoted string version} warnings
jpeacock r6071):
Fix compile errors under threaded Perls
jpeacock r6070):
Fix compile errors under threaded Perl's
Supress {Unquoted string "version"} warnings
jpeacock r6069):
Fix typos
Fix handling of null versions
jpeacock r6068):
use Perl_croak from C code
jpeacock r6067):
Recover gracefully to null versions (rather than core)
jpeacock r6066):
Recover gracefully to null versions (rather than core)
jpeacock r6065):
Document extended decimal version parsing
jpeacock r6064):
Force all files to next major revision (so the version works)
jpeacock r6063):
Add tests for 1.002003 => 1.2.3
jpeacock r6062):
Add support for 1.002003 => 1.2.3
jpeacock r6061):
Remove dependency on Exporter.pm
jpeacock r6060):
Update with version from perl-current
jpeacock r6059):
Change vstringify and vnumify
Reword main POD slightly
jpeacock r6058):
Final changes to release to CPAN
Merged code into perl-current
jpeacock r6057):
Ready to release to CPAN
jpeacock r6056):
POD changes
jpeacock r6055):
Cannot use SvPV_nolen in 5.005_03
jpeacock r6054):
Document the UNIVERSAL::VERSION replacement
jpeacock r6053):
Successfully create and test my own UNIVERSAL::VERSION replacement
jpeacock r6052):
Improve the testing of beta versions
jpeacock r6051):
More POD changes
jpeacock r6050):
Add additional testing
Add POD
jpeacock r6049):
Finally works in 5.005_03, 5.6.1, and 5.8.0
jpeacock r6048):
Doesn't work any more?
jpeacock r6047):
working AV objects in 5.6.x only
jpeacock r6046):
*** empty log message ***
jpeacock r6045):
Finished for the night
jpeacock r6044):
almost working AV style version objects
jpeacock r6043):
Initial revision
;; Local Variables:
;; coding: utf-8
;; End: