Closed Bug 526668 Opened 15 years ago Closed 15 years ago

add option to 'unify' to allow files to match if their sorted contents match

Categories

(Firefox Build System :: General, defect)

All
macOS
defect
Not set
normal

Tracking

(status1.9.2 beta2-fixed, status1.9.1 .10-fixed)

VERIFIED FIXED
mozilla1.9.3a1
Tracking Status
status1.9.2 --- beta2-fixed
status1.9.1 --- .10-fixed

People

(Reporter: ted, Assigned: ted)

References

Details

(Keywords: verified1.9.2)

Attachments

(1 file)

We have some files that wind up with the same contents in a slightly different order when you run a parallel build. The 'unify' script currently expects files to have identical contents, so these situations break universal builds easily. I have a patch that adds a --unify-with-sort <regex> option to unify, so we can pass in file patterns and have them special-cased. unify will sort the contents of the files and compare that instead.
Blocks: 462381
Here's the patch. There's an (admittedly ugly) unit test for it included.
Attachment #410413 - Flags: review?(benjamin)
Attachment #410413 - Flags: review?(benjamin) → review+
Pushed to m-c:
http://hg.mozilla.org/mozilla-central/rev/7378ea1411d8
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Comment on attachment 410413 [details] [diff] [review]
add --unify-with-sort <regex> to unify, use it in a few places
[Checkin: See comment 2 & 5+13 & 14]

This needs to land on 1.9.2 if we're going to land bug 519357 (which is a blocker).
Attachment #410413 - Flags: approval1.9.2?
Attachment #410413 - Flags: approval1.9.2? → approval1.9.2+
Comment on attachment 410413 [details] [diff] [review]
add --unify-with-sort <regex> to unify, use it in a few places
[Checkin: See comment 2 & 5+13 & 14]

a191=beltzner, it even comes with tests!
Blocks: 526817
After running with this config for a couple of days now no failures have been started. The builds look ok. Regarding that this bug is blocking bug 519357 am I right, that the content of the components.list file should be ordered alphabetically? I think so. While checking this file the ordering is fine.

Marking as verified fixed on trunk and 1.9.2.
Status: RESOLVED → VERIFIED
Keywords: verified1.9.2
Hardware: x86 → All
Target Milestone: --- → mozilla1.9.3a1
http://tinderbox.mozilla.org/showlog.cgi?log=SeaMonkey2.0/1267690621.1267694362.21111.gz
OS X 10.5 comm-1.9.1 nightly on 2010/03/04 00:17:01
{
/builds/slave/comm-1.9.1-macosx-nightly/build/mozilla/build/macosx/universal/unify: copyIfIdentical: files differ:
  objdir/ppc/mozilla/dist/seamonkey/SeaMonkey.app/Contents/MacOS/chrome/comm.manifest,
  objdir/i386/mozilla/dist/seamonkey/SeaMonkey.app/Contents/MacOS/chrome/comm.manifest
}

Could this land on m-1.9.1 too?
status1.9.1: --- → ?
Comment on attachment 410413 [details] [diff] [review]
add --unify-with-sort <regex> to unify, use it in a few places
[Checkin: See comment 2 & 5+13 & 14]

"approval1.9.1.9=?":
already +'ed in comment 4 but flag not set.
Attachment #410413 - Flags: approval1.9.1.9?
Um, oops. I guess that's my bad.
Attachment #410413 - Flags: approval1.9.1.9? → approval1.9.1.9+
Serge, if you want this on 1.9.1 feel free to land it, now that it has approval.
Comment on attachment 410413 [details] [diff] [review]
add --unify-with-sort <regex> to unify, use it in a few places
[Checkin: See comment 2 & 5+13 & 14]

Let's try again for 1.9.1.10
Attachment #410413 - Flags: approval1.9.1.9-
Attachment #410413 - Flags: approval1.9.1.9+
Attachment #410413 - Flags: approval1.9.1.10?
Attachment #410413 - Flags: approval1.9.1.10? → approval1.9.1.10+
Comment on attachment 410413 [details] [diff] [review]
add --unify-with-sort <regex> to unify, use it in a few places
[Checkin: See comment 2 & 5+13 & 14]

Approved for 1.9.1.10, a=dveditz for release-drivers

please land this time. Code freeze in a week or so.
Comment on attachment 410413 [details] [diff] [review]
add --unify-with-sort <regex> to unify, use it in a few places
[Checkin: See comment 2 & 5+13 & 14]


http://hg.mozilla.org/releases/mozilla-1.9.2/rev/ca4501b479e1
(Cv1-192) Fully fix/sync' m-1.9.2.
Attachment #410413 - Attachment description: add --unify-with-sort <regex> to unify, use it in a few places → add --unify-with-sort <regex> to unify, use it in a few places [Checkin: Comment 2 & 5+13]
Comment on attachment 410413 [details] [diff] [review]
add --unify-with-sort <regex> to unify, use it in a few places
[Checkin: See comment 2 & 5+13 & 14]


http://hg.mozilla.org/releases/mozilla-1.9.1/rev/fa3d83b79848
(Dv1-191) Backport to m-1.9.1 too.
+
http://hg.mozilla.org/releases/mozilla-1.9.1/rev/59e1a6f8fd05
(Ev1-191) Missed part of bug 518641.
+
http://hg.mozilla.org/releases/mozilla-1.9.1/rev/75b15d431177
(Fv1-191) The other missed part of bug 518641.
Attachment #410413 - Attachment description: add --unify-with-sort <regex> to unify, use it in a few places [Checkin: Comment 2 & 5+13] → add --unify-with-sort <regex> to unify, use it in a few places [Checkin: See comment 2 & 5+13 & 14]
Depends on: 518641
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: