I'm trying to help out Luke Last [0] with bug fixes of the SMTP Authentication Support module [1]. The current 5.x-1.x release [2] is set to point to the HEAD CVS branch with the Version string of 5.x-1.x-dev. I thought, since it's a select box, that I could just change the CVS branch once I created an actual 5.x-1.x branch, but not so.

How do I change that, or do I have to delete the release and create a new 5.x-1.,x release?

[0] http://drupal.org/user/30151
[1] http://drupal.org/project/smtp
[2] http://drupal.org/node/95819

Comments

dww’s picture

Category: support » bug

Evil. You're supposed to be able to change it if the version strings match (which they do in this case). It all works for me, but I'm a project admin on d.o. However, it's even supposed to work for you since you've got CVS access to that project. This is the second report of a project maintainer not being able to do this operation, but I know it worked in the past: http://drupal.org/node/89699

dww’s picture

Component: Packaging » CVS

Ah ha! ;) I see what's going on now:

mysql> select * from cvs_tags where nid=35189;
+-------+-------------+--------+
| nid   | tag         | branch |
+-------+-------------+--------+
| 35189 | DRUPAL-4-6  |      1 | 
| 35189 | DRUPAL-4-7  |      1 | 
| 35189 | DRUPAL-5--1 |      1 | 
+-------+-------------+--------+

I have no idea how you managed to create a DRUPAL-5--1 branch. That's not supposed to be allowed. The --1 stuff was only to be for DRUPAL-6 and beyond, since we already have so many existing DRUPAL-5 branches. :( So, the logic to find existing branches that match the same version string isn't working, since our code doesn't think DRUPAL-5--1 is supposed to be valid.

http://drupal.org/handbook/cvs/branches-and-tags/contributions#stable
http://drupal.org/node/147493

Not sure what to do about this. There are 10 other projects with these bogus DRUPAL-5--1 branches. I wish I knew how you people subverted CVS's own tag access control checks that normally enforce this as a no-no. ;)

dww% cvs tag -b DRUPAL-5--1
** ERROR: invalid branch for this directory:
** contributions/modules/signup
cvs tag: Pre-tag check failed
...

I hate to just admit defeat and accept these DRUPAL-5--1 branches, tell cvs.module to recognize them properly, etc, since that's only going to add to confusion ("Why are some modules on DRUPAL-5 and others on DRUPAL-5--1? What's the difference?" etc). Curses to allowing the DRUPAL-5 branches in the first place. ;) However, it'll be a fair bit of work to try to rename all these branches, notify their maintainers, etc. Plus, I still don't understand how people are adding these tags without CVS's permission. :( I'm suspecting some kind of insanity with GUI clients.

Any opinions from the rest of the CVS admin team or infra team at large?

Thanks,
-Derek

oadaeh’s picture

I have no idea how you managed to create a DRUPAL-5--1 branch. That's not supposed to be allowed. The --1 stuff was only to be for DRUPAL-6 and beyond, since we already have so many existing DRUPAL-5 branches. :( So, the logic to find existing branches that match the same version string isn't working, since our code doesn't think DRUPAL-5--1 is supposed to be valid.

I thought I remembered creating a DRUPAL-5--1 tag for another module by doing something like:

cvs tag -b DRUPAL-5--1

but it may have been me creating a 1.x release with something like:

cvs tag -b DRUPAL-5--1-0

but I don't remember the details at this time, and looking through my local repository isn't ringing any bells either.

Not sure what to do about this. There are 10 other projects with these bogus DRUPAL-5--1 branches. I wish I knew how you people subverted CVS's own tag access control checks that normally enforce this as a no-no. ;)

Believe me when I say it wasn't intentional. I'm certainly not trying to create problems for anyone.

I hate to just admit defeat and accept these DRUPAL-5--1 branches, tell cvs.module to recognize them properly, etc, since that's only going to add to confusion ("Why are some modules on DRUPAL-5 and others on DRUPAL-5--1? What's the difference?" etc). Curses to allowing the DRUPAL-5 branches in the first place. ;) However, it'll be a fair bit of work to try to rename all these branches, notify their maintainers, etc. Plus, I still don't understand how people are adding these tags without CVS's permission. :( I'm suspecting some kind of insanity with GUI clients.

I can tell you what I did, which may help you. I followed the directions listed here: http://drupal.org/node/100748. I have a local copy of the CVS branches of all contrib modules and themes. I have a separate directory for each tag and each branch from 4-7.x-0.0 to 6.x-9.x, including head, 4.7.x, 5.x & 6.x. Most of them are empty. I went to my copy of contrib-5.x-1.x and followed the directions. What I was trying to do was to take the code in contrib-head and create a copy of it in contrib-5.x-1.x for bug fixing and then for tagging as 1.0. Maybe I need to wipe out my local copy and recreate it a different way, though I'm not sure what would be different about it.

I remember there was quite a bit of discussion about 5.x tagging and branching when you implemented the new CVS structure and I tried to follow it and read all the documentation referred to in those posts, but I'm sure I missed or mis-interpreted something, so I try to go back to the documentation and follow directions when I'm even a little unfamiliar with something and especially if I'm doing something that might potentially affect other people. Also, I don't use CVS GUIs.

Also, I thought that you somehow created the existing 5.x-1.x version, based on the revision history: http://drupal.org/node/95819/revisions, but maybe that was just the title you were referring to.

dww’s picture

Category: bug » support

Thanks for the info. That's very helpful. However, we're now getting off topic here. ;) Let's move discussion on cleaning up the DRUPAL-5--1 mess back over to http://drupal.org/node/152832#comment-647825 where it belongs. Let's leave this issue about changing the CVS branch on your release node...

Thanks,
-Derek

dww’s picture

BTW, I don't see any thing on http://drupal.org/node/100748 that references "-r DRUPAL-5--1", so I don't see how you followed those directions and ended up with this result...

I guess it's this weird practice of having multiple workspaces of all of contrib checked out, each from every possible branch. So, as soon as anyone manages to get a faulty branch in the mix, it's easy to spread. :(

And no, all I did on http://drupal.org/node/95819 was I altered the version string and title so that the node pointing to HEAD was called "5.x-1.x-dev". I didn't touch the CVS branches at all. The point, at the time of that edit, was that HEAD was holding the D5 code, and the maintainer wanted the release node (which was one of the evil "HEAD" release nodes that was created automatically during the deployment of the release system) to reflect reality. So, I just edited the release node to change the version stuff, which is why you see my name in the revisions on that node.

oadaeh’s picture

Status: Active » Closed (fixed)

This has been corrected and can be closed. Thanks Derek.

Component: CVS » Other