Closed Bug 392496 Opened 18 years ago Closed 18 years ago

Security and stability releases/upgrades to Firefox will be smoothly delivered without requiring customized partner builds to be generated

Categories

(Firefox :: General, defect)

x86
All
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 3 beta1

People

(Reporter: hello, Assigned: hello)

References

Details

Attachments

(1 file, 2 obsolete files)

This is a tracking bug for item DIST-001c in the Firefox 3 PRD.
Flags: blocking-firefox3?
Flags: blocking-firefox3? → blocking-firefox3+
We will send AUS information about the partner distribution, as well as the current version. This way AUS can (at a later date) support generating specialized MAR updates which take into account both the Firefox version as well as the distribution version. This depends on getting AUS to support the new update url schema (bug 368117).
Depends on: 368117
Attachment #279016 - Flags: review?(sspitzer)
dan is this the right patch? this only includes the pref change (and not the change to the update code) also, if you are going to do this, let's change the aus version from 2 to 3.
Oops! I forgot to qrefresh! 'nother patch coming up.
Sorry, here's the patch I meant to attach.
Attachment #279016 - Attachment is obsolete: true
Attachment #279016 - Flags: review?(sspitzer)
Comment on attachment 279020 [details] [diff] [review] Add distro & distro version to AUS update URL v1.1 1) where are PREF_APP_DISTRIBUTION and PREF_APP_DISTRIBUTION_VERSION defined? 2) how about something more like: Bug 392496: Send distro information to AUS diff -r e157502d2860 browser/app/profile/firefox.js --- a/browser/app/profile/firefox.js Thu Aug 30 13:53:51 2007 -0700 +++ b/browser/app/profile/firefox.js Thu Aug 30 15:19:56 2007 -0700 @@ -97,17 +97,17 @@ pref("app.update.auto", true); // See chart in nsUpdateService.js.in for more details // pref("app.update.mode", 1); // If set to true, the Update Service will present no UI for any event. pref("app.update.silent", false); // Update service URL: -pref("app.update.url", "https://aus2.mozilla.org/update/2/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/update.xml"); +pref("app.update.url", "https://aus2.mozilla.org/update/3/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml"); // app.update.url.manual is in branding section // app.update.url.details is in branding section // User-settable override to app.update.url for testing purposes. //pref("app.update.url.override", ""); // Interval: Time between checks for a new version (in seconds) // default=1 day diff -r e157502d2860 toolkit/mozapps/update/src/nsUpdateService.js.in --- a/toolkit/mozapps/update/src/nsUpdateService.js.in Thu Aug 30 13:53:51 2007 -0700 +++ b/toolkit/mozapps/update/src/nsUpdateService.js.in Thu Aug 30 15:19:56 2007 -0700 @@ -531,16 +531,48 @@ function getUpdateChannel() { } catch (e) { Components.utils.reportError(e); } return channel; } +/* Get the distribution pref values from defaults only */ +function getDistributionPrefValue(aPrefName) { + var prefValue = "default"; + + var defaults = + gPref.QueryInterface(Components.interfaces.nsIPrefService). + getDefaultBranch(null); + try { + prefValue = defaults.getCharPref(aPrefName); + } catch (e) { + // use "default" when pref not found + } + + return prefValue; +} + /** * An enumeration of items in a JS array. * @constructor */ function ArrayEnumerator(aItems) { this._index = 0; if (aItems) { for (var i = 0; i < aItems.length; ++i) { @@ -1882,16 +1914,18 @@ Checker.prototype = { url = url.replace(/%PRODUCT%/g, gApp.name); url = url.replace(/%VERSION%/g, gApp.version); url = url.replace(/%BUILD_ID%/g, gApp.appBuildID); url = url.replace(/%BUILD_TARGET%/g, gApp.OS + "_" + gABI); url = url.replace(/%OS_VERSION%/g, gOSVersion); url = url.replace(/%LOCALE%/g, getLocale()); url = url.replace(/%CHANNEL%/g, getUpdateChannel()); + url = url.replace(/%DISTRIBUTION%/g, getDistributionPrefValue(PREF_APP_DISTRIBUTION)); + url = url.replace(/%DISTRIBUTION_VERSION%/g, getDistributionPrefValue(PREF_APP_DISTRIBUTION_VERSION)); url = url.replace(/\+/g, "%2B"); if (force) url += "?force=1" LOG("Checker", "update url: " + url); return url; },
1 & 2 fixed. Tested with http debugging on, I see: -1610559488[29070f0]: uri=https://aus2.mozilla.org/update/3/Firefox/3.0a8pre/2007083015/Darwin_x86-gcc3/en-US/default/Darwin%208.10.1/testpartner/1.0/update.xml?force=1 (I have distribution "testpartner" version "1.0" in my distribution.ini)
Attachment #279020 - Attachment is obsolete: true
Attachment #279024 - Flags: review?(sspitzer)
Comment on attachment 279024 [details] [diff] [review] Add distro & distro version to AUS update URL v1.2 r=sspitzer, thanks dan of course, please wait for the aus change to happen so that we'll support version 3 aus urls before checking in.
Attachment #279024 - Flags: review?(sspitzer) → review+
This won't make M8 - pushing to M9.
Target Milestone: Firefox 3 M8 → Firefox 3 M9
Can this land now?
/cvsroot/mozilla/browser/app/profile/firefox.js,v <-- firefox.js new revision: 1.203; previous revision: 1.202 done Checking in toolkit/mozapps/update/src/nsUpdateService.js.in; /cvsroot/mozilla/toolkit/mozapps/update/src/nsUpdateService.js.in,v <-- nsUpdateService.js.in new revision: 1.143; previous revision: 1.142 done
(In reply to comment #9) > dan, could you update the following pages to indicate that for firefox 3, the > app.update.url format has changed? I've made mods to those pages to explain the update URL. Would you mind taking a look to make sure they make sense? Marking bug as fixed.
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Changes to Software_Update:Nightly_update_infrastructure are fine (and prompted me to bring other parts up to date).
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: