[development] Better validation for CVS tags now deployed on cvs.drupal.org

Derek Wright drupal at dwwright.net
Thu Sep 18 23:57:36 UTC 2008


The CVS repository used to be very forgiving in what it considered a  
valid release tag, especially in the 'extra' portion of the tag  
name.  This lead to all sorts of wonky tags that creative developers  
came up with.  My least favorite are the official release tags that  
end in "-dev", utterly blurring the distinction between official  
releases and development snapshots.

Now, your official release tags must match the format documented here:
http://drupal.org/node/93999

For the regexp-enabled, your tag must match this:

@^DRUPAL-[567]--(\d+)-(\d+)(-(ALPHA|BETA|RC)[0-9]+)?$@

For the non-regexp-enabled, that basically means that the optional  
part after the drupal core branch name (e.g. "DRUPAL-6") and the  
required two digits for your version string (e.g. "--1-0") must be  
either "ALPHA", "BETA" or "RC" followed by 1 or more numbers.

This will also prevent people from abusing the "extra" portion of the  
tag name as if it was another digit in the version string.  5.x-1.2-1  
or 5.x-1.2.1 is no longer allowed.  This was never supported, never  
intended, never documented, and update_status doesn't know what to do  
with it.  Now, you can no longer create tags like this.  The next  
release after 5.x-1.2 should be 5.x-1.3...

For history and discussion of this change, see this issue:
http://drupal.org/node/252473

Apologies I never locked down this regexp earlier. ;)

Cheers,
-Derek (dww)


p.s. Please don't reply here.  If you'd like to discuss this change,  
reply to issue #252473.  Thanks.

p.p.s. Nothing changed about the format of valid branch names.  Those  
never had much flexibility in the first place, so there's no problem  
there.

p.p.p.s. Before you write a nastygram about what a tyrant I am,  
please be aware that webchick, killes, merlinofchaos and pwolanin  
(among others) all support this change. ;)





More information about the development mailing list