Is the next release 1.0 or 1.0.0?

Andrew Dougherty doughera at lafayette.edu
Mon Mar 16 15:22:45 UTC 2009


Several parts of the config structure *assume* a three-part version number
for parrot.  If the next release is to be 1.0 instead of 1.0.0, then those 
parts will need to change.  The first I ran into was in 
lib/Parrot/BuildUtil.pm, which I avoided with this patch:

diff -r -u parrot-svn/lib/Parrot/BuildUtil.pm parrot-andy/lib/Parrot/BuildUtil.pm
--- parrot-svn/lib/Parrot/BuildUtil.pm	2009-03-15 09:12:32.000000000 -0400
+++ parrot-andy/lib/Parrot/BuildUtil.pm	2009-03-16 11:06:48.039616042 -0400
@@ -58,8 +58,8 @@
     $parrot_version =~ s/\s+//g;
     @parrot_version = split( /\./, $parrot_version );
 
-    if ( scalar(@parrot_version) < 3 ) {
-        die "Too few components to VERSION file contents: '$parrot_version' (should be 3 or 4)!";
+    if ( scalar(@parrot_version) < 2 ) {
+        die "Too few components to VERSION file contents: '$parrot_version' (should be 2, 3, or 4)!";
     }
 
     if ( scalar(@parrot_version) > 4 ) {


But then Configure.pl later went looking for the third digit again when 
generating config.h:

    $ perl Configure.pl 
    [ . . . ]

gen::config_h -       Generate C headers...value for 'PATCH' in config/gen/config_h/config_h.in is undef at lib/Parrot/Configure/Compiler.pm line 541, <$in> line 22.
value for 'PATCH' in config/gen/config_h/config_h.in is undef at lib/Parrot/Configure/Compiler.pm line 541, <$in> line 154.
value for 'PATCH' in config/gen/config_h/config_h.in is undef at lib/Parrot/Configure/Compiler.pm line 541, <$in> line 155.
value for 'PATCH' in config/gen/config_h/config_h.in is undef at lib/Parrot/Configure/Compiler.pm line 541, <$in> line 156.
value for 'PATCH' in config/gen/config_h/config_h.in is undef at lib/Parrot/Configure/Compiler.pm line 541, <$in> line 157.
value for 'PATCH' in config/gen/config_h/config_h.in is undef at lib/Parrot/Configure/Compiler.pm line 541, <$in> line 158.
..............................done.


It's possible to fake that in config/init/defaults.pm where it tries to 
access $parrot_version[2], but then it next fails in 
lib/Parrot/Ops2c/Utils.pm line 166.

I don't have time to trace this any further, but if the next version is 
truly to be 1.0, and not 1.0.0, then someone needs to give it a spin and 
fold the fixes back in so that the fixes can get tested.

-- 
    Andy Dougherty		doughera at lafayette.edu



More information about the parrot-dev mailing list