Closed Bug 576760 Opened 14 years ago Closed 14 years ago

no longer need to force component manifests in updates

Categories

(Release Engineering :: General, defect, P2)

defect

Tracking

(blocking2.0 -)

RESOLVED FIXED
Tracking Status
blocking2.0 --- -

People

(Reporter: standard8, Assigned: nthomas)

References

Details

(Keywords: regression)

Attachments

(2 files, 2 obsolete files)

components.list used to be forced to be refreshed on each update to ensure other extensions/applications didn't fiddle with it.

Now it has been renamed to components.manifest, the refreshing has been lost. Hence it should be a blocker, as this is a regression from previous functionality.

Also, what about interfaces.manifest? It appears to be generated but not packaged.

This looks like the affected line:

http://mxr.mozilla.org/comm-central/source/mozilla/tools/update-packaging/make_incremental_update.sh#51

However the patcher config files (for build automation) also need an update:

http://mxr.mozilla.org/mozilla/source/tools/patcher-configs/
Component: Application Update → Release Engineering
Product: Toolkit → mozilla.org
QA Contact: application.update → release
Version: Trunk → other
I don't see a components/components.manifest in recent trunk builds, just a components/browser.manifest. Is that from bug 568691 comment #49 ? Also, the manifest in the mac universal build only has comments in it.

Release wise the file will be new in 4.0b2.
(In reply to comment #1)
> I don't see a components/components.manifest in recent trunk builds, just a
> components/browser.manifest. Is that from bug 568691 comment #49 ?

Yes, you're right, it should be browser.manifest from a bit of investigation:

http://hg.mozilla.org/mozilla-central/rev/b7631123fd4d
http://hg.mozilla.org/mozilla-central/rev/ea142ed538fc

and in fact, that name will vary per-app, which is probably going to make changing http://mxr.mozilla.org/comm-central/source/mozilla/tools/update-packaging/make_incremental_update.sh#51 interesting (but the patcher-configs are per-app so they will be fine).

> Also, the
> manifest in the mac universal build only has comments in it.

Mine has both (though you have to go a fairly long way down through the file).

> Release wise the file will be new in 4.0b2.

True, but nightly updates need it, and we'll need it for 4.0b3 (or final, whichever it is).
Summary: components.manifest is not forced to be refreshed on each update → browser.manifest is not forced to be refreshed on each update
Thanks for digging. Looks like requested_forced_updates (at line 51) can list files that aren't in the package without any problems.

I'm traveling to the summit so if this needs an urgent fix then r+ to switch to browser.manifest and add Thunderbird, SeaMonkey, etc as required, at http://mxr.mozilla.org/comm-central/source/mozilla/tools/update-packaging/make_incremental_update.sh#51
Assuming there are no name collisions of course, but it seems unlikely.
Attached patch Fix up nightlies (obsolete) — Splinter Review
This should fix up Firefox, Thunderbird, and SeaMonkey builds based on mozilla-central but I still need to test that.
Assignee: nobody → nrthomas
Status: NEW → ASSIGNED
Attached patch Fix Firefox4.0 releases (obsolete) — Splinter Review
Don't technically need this before b3 (since the partial will ADD the new file just like the complete) but not going to harm anything.
Attachment #457763 - Flags: review?(bhearsum)
Priority: -- → P2
Attachment #457763 - Flags: review?(bhearsum) → review+
Comment on attachment 457763 [details] [diff] [review]
Fix Firefox4.0 releases

Checking in moz193-branch-patcher2.cfg;
/cvsroot/mozilla/tools/patcher-configs/moz193-branch-patcher2.cfg,v  <--  moz193-branch-patcher2.cfg
new revision: 1.6; previous revision: 1.5
done
Attachment #457763 - Flags: checked-in+
Comment on attachment 457761 [details] [diff] [review]
Fix up nightlies

After creating a partial manually with this patch and unpacking it again, I get this diff against the mars we create with stock m-c:

$ diff -ru unpacked-{old,new}
Only in unpacked-new/Contents/MacOS/components: browser.manifest
diff -ru unpacked-old/update.manifest unpacked-new/update.manifest
--- unpacked-old/update.manifest	2010-07-19 13:39:08.000000000 +1200
+++ unpacked-new/update.manifest	2010-07-19 13:39:24.000000000 +1200
@@ -4,6 +4,7 @@
 patch "Contents/MacOS/chrome/en-US.jar.patch" "Contents/MacOS/chrome/en-US.jar"
 patch "Contents/MacOS/chrome/pippki.jar.patch" "Contents/MacOS/chrome/pippki.jar"
 patch "Contents/MacOS/chrome/toolkit.jar.patch" "Contents/MacOS/chrome/toolkit.jar"
+add "Contents/MacOS/components/browser.manifest"
 patch "Contents/MacOS/components/browser.xpt.patch" "Contents/MacOS/components/browser.xpt"
 patch "Contents/MacOS/components/libalerts_s.dylib.patch" "Contents/MacOS/components/libalerts_s.dylib"
 patch "Contents/MacOS/components/libbrowsercomps.dylib.patch" "Contents/MacOS/components/libbrowsercomps.dylib"
Which looks like it should to me.

Firefox has just browser.manifest; SeaMonkey has browser.manifest and mail.manifest; Thunderbird has mail.manifest and newsblog.manifest.
Attachment #457761 - Flags: review?(bhearsum)
Attachment #457761 - Flags: feedback?(bugzilla)
blocking2.0: ? → -
Attachment #457761 - Flags: review?(bhearsum) → review+
Comment on attachment 457761 [details] [diff] [review]
Fix up nightlies

This looks fine, but from what I can tell bug 579178 is now going to change the name of these new manifests... requesting feedback from Benjamin as he's working on that bug.
Attachment #457761 - Flags: feedback?(bugzilla)
Attachment #457761 - Flags: feedback?(benjamin)
Attachment #457761 - Flags: feedback+
I don't think we should fix this. It's a rather extreme form of paranoia: you can modify any of the .manifest files in the shipping directory, and I don't think we want to force all of them.
(In reply to comment #9)
> I don't think we should fix this. It's a rather extreme form of paranoia: you
> can modify any of the .manifest files in the shipping directory, and I don't
> think we want to force all of them.

So what was the point of forcing components.list to be refreshed each time in 3.6?
We were afraid that "bad" stuff would modify it. That hasn't happened, as far as we know, and I don't think the paranoia is worth it.

With omnijar this will mostly go away anyway, I think.
Attachment #457761 - Flags: feedback?(benjamin) → feedback-
We have been refreshing components.list in 3.6.x and 4.0 releases (and nightlies), so there has been a disincentive to modify the file if you are a bad guy. I'll prepare a patches to remove that. We can start doing that again if it becomes a problem.
Morphing - was 'browser.manifest is not forced to be refreshed on each update'.
Summary: browser.manifest is not forced to be refreshed on each update → no longer need to force component manifests in updates
We'd land this on m-c, m-1.9.2. And possibly 1.9.1 too, it's there but a no-op.
Attachment #457761 - Attachment is obsolete: true
Attachment #457763 - Attachment is obsolete: true
Attachment #464212 - Flags: review?(bhearsum)
Attachment #464212 - Flags: review?(bhearsum) → review+
Attachment #464179 - Flags: review?(bhearsum) → review+
Comment on attachment 464179 [details] [diff] [review]
Stop forcing lists in 3.6 & 4.0 releases

Checking in moz192-branch-patcher2.cfg;
new revision: 1.33; previous revision: 1.32

Checking in moz20-branch-patcher2.cfg;
new revision: 1.5; previous revision: 1.4
Attachment #464179 - Flags: checked-in+
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Depends on: 587000
No longer depends on: 587000
Standard8, I happened across this bug today and noticed that Thunderbird is forcing components.list in a few patcher config files still. Expected ?
(In reply to comment #18)
> Standard8, I happened across this bug today and noticed that Thunderbird is
> forcing components.list in a few patcher config files still. Expected ?

Nope, forgotten. I've filed bug 641974 to drop them in our trunk configs. I'm going to leave 1.9.2 as they are as I know we're probably still in a little bit of danger of a few silly people trying to modify those files.
Product: mozilla.org → Release Engineering
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: