Closed
Bug 763506
Opened 13 years ago
Closed 4 years ago
Automate DOM Inspector branch selection
Categories
(SeaMonkey :: Build Config, defect)
SeaMonkey
Build Config
Tracking
(Not tracked)
RESOLVED
WONTFIX
People
(Reporter: iannbugzilla, Unassigned)
References
()
Details
It would be good to get at least beta (and probably aurora) as well as release repos automagically pulling from the relevant "stable" DOMI branch without manual intervention. With the trunk repos pulling from the "trunk" DOMI branch.
Comment 1•13 years ago
|
||
I wrote up a release checklist a couple weeks ago. <https://wiki.mozilla.org/DOM_Inspector/Releases/Checklist> It contains some relevant information.
There was a DOMI_LATEST_BRANCH tag, but not a DOMI_LATEST_RELEASE tag. I added one just now.
Going forward, the release process will tag the changeset that the latest release is built from with
1) a version-specific tag, like DOMI_2_0_12_RELEASE
2) DOMI_LATEST_RELEASE
So instead of changing the build scripts every 12 weeks, the scripts should be able to do
$ hg update DOMI_LATEST_RELEASE
This will put it at the changeset that the version from AMO was built from.
Comment 2•13 years ago
|
||
Due to strict compatibility constraint, SeaMonkey (a/b/r) branches want to check out the most recent changeset of "DOMI_LATEST_released_BRANCH" branch, not DOMI_LATEST_RELEASE tag.
Atm, SeaMonkey is pulling DOMI_2_0_12 (released) branch.
A branch cannot have two names, can it?
Should we add (then move) a "DOMI_LATEST_RELEASE_strictcompat" tag?
Flags: in-testsuite-
Comment 3•13 years ago
|
||
(In reply to Serge Gautherie (:sgautherie) from comment #2)
> "DOMI_LATEST_released_BRANCH" branch, not DOMI_LATEST_RELEASE tag.
I'm not sure what you mean here. Is that "released" supposed to be a literal (without varying)? E.g., not "DOMI_LATEST_2_0_12_BRANCH"?
Or is the issue that DOMI_LATEST_RELEASE is a tag name and not a branch name?
Comment 4•13 years ago
|
||
(In reply to Colby Russell :crussell from comment #3)
> Is that "released" supposed to be a
> literal (without varying)? E.g., not "DOMI_LATEST_2_0_12_BRANCH"?
Yes. Using varying names is the current situation/issue.
Part of the solution is to use a (additional) "literal" name.
> Or is the issue that DOMI_LATEST_RELEASE is a tag name and not a branch name?
"Yes". For example, SeaMonkey currently wants to pull '6b5ec09f3b1d', not 'c42fd9baba56'.
And changing 'DOMI_LATEST_RELEASE' itself from a tag to a branch wouldn't be perfect because it is set up before the branch is actually released.
In other words, SeaMonkey needs a _literal_ name that is moved from one release _branch_ to the next one, after the latter is actually _released_.
Comment 5•13 years ago
|
||
I've been very confused about this.
(In reply to Serge Gautherie (:sgautherie) from comment #4)
> In other words, SeaMonkey needs a _literal_ name that is moved from one
> release _branch_ to the next one
Right. DOMI_LATEST_RELEASE and DOMI_LATEST_BRANCH are such names.
But! I think I see now what's being overlooked and is leading to my eventual frustration and confusion here.
> changing 'DOMI_LATEST_RELEASE' itself from a tag to a branch wouldn't be
> perfect because it is set up before the branch is actually released.
Okay, on the second point: there are two tags here: DOMI_LATEST_BRANCH, and DOMI_LATEST_RELEASE.
DOMI_LATEST_BRANCH (not DOMI_LATEST_RELEASE) gives the branch point of the most recent branch, which is the type of thing you're talking about here. It's attached to the first changeset on the latest branch. You're correct that you don't want to be building from that changeset.
DOMI_LATEST_RELEASE (and DOMI_$(VERSION)_RELEASE) is the tag that gets applied to the changeset that indicates the state of the repository that the version on AMO is built from. You don't want this one either, because sometimes there are changes made to the branch after it has been built and sent of to AMO, and you want the build's working version to include these changes. Changes like those to install.rdf. <http://hg.mozilla.org/dom-inspector/rev/6b5ec09f3b1d>
> SeaMonkey currently wants to pull '6b5ec09f3b1d', not 'c42fd9baba56'.
From the release checklist <https://wiki.mozilla.org/DOM_Inspector/Releases/Checklist>, you get to the current state of the release branch by first updating to the branch point
$ hg update DOMI_LATEST_BRANCH
This is the overlooked part: you can then update to the latest changeset on that branch
$ hg update
This isn't necessarily what you want, either, since at any given time, it may be in the six week period where l10n changes are occurring, and no release has happened from that branch yet. But it's as simple as applying the same principle in conjunction with what I wrote in comment 1.
Get to the changeset the latest AMO release was prepared from
$ hg update DOMI_LATEST_RELEASE
Now update again to get the changes that have been made since then
$ hg update
Comment 6•13 years ago
|
||
(In reply to Colby Russell :crussell from comment #5)
> $ hg update DOMI_LATEST_RELEASE
> $ hg update
I assume this would work, but it means executing 'hg update [...]' twice:
nothing too bad considering that DOMi repository is quite small (compared to mozilla-central),
but not what people (and comm-central client.py) is used to do.
SeaMonkey/comm-central "admins" would have to decide about going that way.
My proposal of an additional branch name seemed/seems simpler and enough: more like what you just did in bug 746784.
Comment 7•13 years ago
|
||
(In reply to Serge Gautherie (:sgautherie) from comment #6)
> My proposal of an additional branch name
I don't think that's possible.
Comment 8•13 years ago
|
||
(In reply to Colby Russell :crussell from comment #7)
> (In reply to Serge Gautherie (:sgautherie) from comment #6)
> > My proposal of an additional branch name
>
> I don't think that's possible.
What would be wrong with a "post-release" branch starting on DOMI_LATEST_RELEASE changeset/tag, for example?
Comment 9•13 years ago
|
||
We want a name that doesn't vary. We can do that one time, sure, but try branching from DOMI_LATEST_RELEASE when the next release happens. You have to give that branch a different name.
Comment 10•13 years ago
|
||
(In reply to Serge Gautherie (:sgautherie) from comment #4)
> (In reply to Colby Russell :crussell from comment #3)
>
> > Is that "released" supposed to be a
> > literal (without varying)? E.g., not "DOMI_LATEST_2_0_12_BRANCH"?
>
> Yes. Using varying names is the current situation/issue.
> Part of the solution is to use a (additional) "literal" name.
>
> > Or is the issue that DOMI_LATEST_RELEASE is a tag name and not a branch name?
>
> "Yes". For example, SeaMonkey currently wants to pull '6b5ec09f3b1d', not
> 'c42fd9baba56'.
> And changing 'DOMI_LATEST_RELEASE' itself from a tag to a branch wouldn't be
> perfect because it is set up before the branch is actually released.
>
> In other words, SeaMonkey needs a _literal_ name that is moved from one
> release _branch_ to the next one, after the latter is actually _released_.
Maybe use the "bookmark" feature available in newer Mercurial releases? (I'm not sure exactly when it was made part of plain-vanilla Mercurial. Before that IIRC it used to be an extension. It is included, and not an extension, in the hg 1.9.3 distributed with my openSUSE Linux 12.1.) For details, see "hg help bookmark". Short explanation: "a bookmark is a tag which moves to the child at every new commit." IIRC it can also be moved manually if and when necessary.
Comment 11•13 years ago
|
||
P.S. Bookmarks were an extension prior to Mercurial 1.8.
Reporter | ||
Comment 12•4 years ago
|
||
We just use default for 2.53.x and DOM Inspector is no more in 2.57 -> Closing WONTFIX
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•