Here's a much smaller and less potentially controversial proposal than requiring the --N part on all contrib branches:

For official release tags that have "extra" (e.g. "beta", "rc", etc) the extra part must contain no hyphens or underscores, and must be all uppercase.

Right now, we've got a mix. Some people do:

DRUPAL-5--2-0-BETA-2

and others do:

DRUPAL-5--2-0-BETA2

and still others do:

DRUPAL-5--2-0-beta2

The release system code, when converting tags into version strings, strips out the hyphens and underscores of the "extra" part, and always runs it through strlower(). So, in all cases, the resulting string would be: "5.x-2.0-beta2".

Unfortunately, the inconsistency with this makes it impossible to take a version number that happens to include "extra" and programatically generate the CVS tag that it corresponds with. i.e., we can map tags to versions exactly, but there's no equivalent operation in reverse. :( CVS tags are case sensitive.

Arguments in favor of my new proposed rule:

  • Forcing all uppercase is good for consistency with the "DRUPAL" part of the tag name.
  • Prohibiting hyphens and underscores solves the problem of not being able to map from versions back to tags, and is more consistent with how the versions are going to look, anyway.
  • Since there are no DRUPAL-6* branches or tags yet at all, it's easy to start clean with D6 and beyond.
  • All that's actually required are configuration changes to our CVS access control scripts and a little bit of documentation -- no code modifications.

Any objections?

Thanks,
-Derek

Comments

killes@www.drop.org’s picture

Status: Active » Fixed

none

dww’s picture

Status: Fixed » Reviewed & tested by the community

it's not fixed until it's fixed. ;) and, i'd like to just make this change at the same time as #147493 so it can all be done and documented simultaneously. dries expressed concern about that one, so i'll wait until he decides.

also, i noticed part of why there are no DRUPAL-6* tags in the repo yet... our xcvs-config regexes don't allow them at all, yet. ;)

dww’s picture

Status: Reviewed & tested by the community » Fixed

With eaton's help, http://drupal.org/node/93999 is now updated to reflect this change. The necessary changes to the xcvs-* configuration files for the contrib repo are now committed to the private repo, and installed on d.o. I included a note about this in the email to the devel list for http://drupal.org/node/147493.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Component: CVS » Other