[Tim]
I used tags for ZODB until I gave in to complaints about that, and switched to using revision numbers. The real complaint about using a tagged external is that when the tag changes, SVN isn't smart enough to do an incremental update. Instead, when you update after an external tag changes:
[Andreas]
What do you mean with "when the tag changes"?
Not what I said: I said "[when] an /external/ tag" changes". I mean when you change an external tag _in_ project A _referencing_ the external tagged project B. Here A=Zope and B=ZODB, and the external tags in question are the ones referencing ZODB from within the svn:externals properties of various Zope directories.
A tag IMO should *never* change.
The revision number associated with a tag within project B indeed shouldn't change. That's not what I'm talking about. I'm talking about how other projects reference project B: they have a choice of: 1. making their own copy of B 2. using svn:externals with a tag for B 3. using svn:externals with a revision number for B Read my msg again with that in mind, and it will make much more sense to you. I was describing the complaints about using choice #2. Zope Corp has tried all of those at various times. They all have different drawbacks, but the only one I found horribly unusable was #1 (because then N different projects have copies of B, and changes to copies of B's code get made from N different projects, and nobody bothers to merge those changes back into B itself -- people changing a copy of B from a different project often don't even _know_ they're changing "conceptually external" code; in effect, without absurd effort on the part of B's maintainer(s), the world ends up with B plus N forks of B).
...