diff --git a/browser/app/Makefile.in b/browser/app/Makefile.in
index d9d0b432f..cdebd4d34 100644
--- a/browser/app/Makefile.in
+++ b/browser/app/Makefile.in
@@ -95,7 +95,7 @@ tools repackage:: $(PROGRAM)
$(MKDIR) -p $(dist_dest)/$(LPROJ)
rsync -a --exclude '*.in' $(srcdir)/macbuild/Contents $(dist_dest) --exclude English.lproj
rsync -a --exclude '*.in' $(srcdir)/macbuild/Contents/Resources/English.lproj/ $(dist_dest)/$(LPROJ)
- sed -e 's/%APP_VERSION%/$(MOZ_APP_VERSION)/' -e 's/%MAC_APP_NAME%/$(MAC_APP_NAME)/' -e 's/%MOZ_MACBUNDLE_ID%/$(MOZ_MACBUNDLE_ID)/' -e 's/%MAC_BUNDLE_VERSION%/$(MAC_BUNDLE_VERSION)/' $(srcdir)/macbuild/Contents/Info.plist.in > $(dist_dest)/Contents/Info.plist
+ sed -e 's/%APP_VERSION%/$(MOZ_APP_VERSION)/' -e 's/%MAC_APP_NAME%/$(MAC_APP_NAME)/' -e 's/%MOZ_MACBUNDLE_ID%/$(MOZ_MACBUNDLE_ID)/' -e 's/%MAC_BUNDLE_VERSION%/$(MAC_BUNDLE_VERSION)/' -e 's/%APP_VERSION_DISPLAY%/$(MOZ_APP_VERSION_DISPLAY)/' $(srcdir)/macbuild/Contents/Info.plist.in > $(dist_dest)/Contents/Info.plist
sed -e 's/%MAC_APP_NAME%/$(MAC_APP_NAME)/' $(srcdir)/macbuild/Contents/Resources/English.lproj/InfoPlist.strings.in | iconv -f UTF-8 -t UTF-16 > $(dist_dest)/$(LPROJ)/InfoPlist.strings
rsync -a --exclude-from='$(srcdir)/macbuild/Contents/MacOS-files.in' $(DIST)/bin/ $(dist_dest)/Contents/Resources
rsync -a --include-from='$(srcdir)/macbuild/Contents/MacOS-files.in' --exclude '*' $(DIST)/bin/ $(dist_dest)/Contents/MacOS
diff --git a/browser/app/macbuild/Contents/Info.plist.in b/browser/app/macbuild/Contents/Info.plist.in
index 15ee4f86e..ba93aff16 100644
--- a/browser/app/macbuild/Contents/Info.plist.in
+++ b/browser/app/macbuild/Contents/Info.plist.in
@@ -145,7 +145,7 @@
CFBundleExecutable
firefox
CFBundleGetInfoString
- %MAC_APP_NAME% %APP_VERSION%
+ %MAC_APP_NAME% %APP_VERSION_DISPLAY%
CFBundleIconFile
firefox.icns
CFBundleIdentifier
diff --git a/browser/config/version.txt b/browser/config/version.txt
index 91d8ab48b..60813e984 100644
--- a/browser/config/version.txt
+++ b/browser/config/version.txt
@@ -1 +1 @@
-45.9.0
+45.10.0
diff --git a/browser/config/version_display.txt b/browser/config/version_display.txt
index 91d8ab48b..cf9b0ab35 100644
--- a/browser/config/version_display.txt
+++ b/browser/config/version_display.txt
@@ -1 +1 @@
-45.9.0
+Feature Parity Release 1
diff --git a/config/milestone.txt b/config/milestone.txt
index eb327c7a1..10730e8f2 100644
--- a/config/milestone.txt
+++ b/config/milestone.txt
@@ -10,4 +10,4 @@
# hardcoded milestones in the tree from these two files.
#--------------------------------------------------------
-45.9.0
+45.10.0
diff --git a/configure.in b/configure.in
index 6f1099423..e46a8b110 100644
--- a/configure.in
+++ b/configure.in
@@ -1890,6 +1890,7 @@ dnl Get mozilla version from central milestone file
dnl ==============================================================
MOZILLA_VERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir`
MOZILLA_UAVERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --uaversion`
+TENFOURFOX_FPRVERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --fprversion`
MOZILLA_SYMBOLVERSION=`$PYTHON $srcdir/python/mozbuild/mozbuild/milestone.py --topsrcdir $srcdir --symbolversion`
if test -z "$MOZILLA_VERSION"; then
AC_MSG_ERROR([failed to read version info from milestone file])
@@ -1910,6 +1911,7 @@ fi
AC_DEFINE_UNQUOTED(MOZILLA_VERSION,"$MOZILLA_VERSION")
AC_DEFINE_UNQUOTED(MOZILLA_VERSION_U,$MOZILLA_VERSION)
AC_DEFINE_UNQUOTED(MOZILLA_UAVERSION,"$MOZILLA_UAVERSION")
+AC_DEFINE_UNQUOTED(TENFOURFOX_FPRVERSION,"$TENFOURFOX_FPRVERSION")
AC_SUBST(MOZILLA_SYMBOLVERSION)
MOZ_DOING_LTO(lto_is_enabled)
diff --git a/netwerk/protocol/http/nsHttpHandler.cpp b/netwerk/protocol/http/nsHttpHandler.cpp
index 6e7824be0..7c50cfe94 100644
--- a/netwerk/protocol/http/nsHttpHandler.cpp
+++ b/netwerk/protocol/http/nsHttpHandler.cpp
@@ -294,7 +294,7 @@ nsHttpHandler::Init()
nsHttpChannelAuthProvider::InitializePrefs();
- mMisc.AssignLiteral("rv:" MOZILLA_UAVERSION);
+ mMisc.AssignLiteral(TENFOURFOX_FPRVERSION "; rv:" MOZILLA_UAVERSION);
mCompatFirefox.AssignLiteral("Firefox/" MOZILLA_UAVERSION);
diff --git a/python/mozbuild/mozbuild/milestone.py b/python/mozbuild/mozbuild/milestone.py
index c2aa78fcd..ba77f8c7f 100644
--- a/python/mozbuild/mozbuild/milestone.py
+++ b/python/mozbuild/mozbuild/milestone.py
@@ -44,9 +44,18 @@ def get_milestone_major(milestone):
return milestone.split('.')[0]
+def get_milestone_minor(milestone):
+ """
+ Returns the minor (second) part of the milestone.
+ """
+
+ return milestone.split('.')[1]
+
+
def main(args):
parser = argparse.ArgumentParser()
parser.add_argument('--uaversion', default=False, action='store_true')
+ parser.add_argument('--fprversion', default=False, action='store_true')
parser.add_argument('--symbolversion', default=False, action='store_true')
parser.add_argument('--topsrcdir', metavar='TOPSRCDIR', required=True)
options = parser.parse_args(args)
@@ -61,6 +70,11 @@ def main(args):
uaversion = "%s.0" % (get_milestone_major(milestone),)
print(uaversion)
+ elif options.fprversion:
+ # Compute the FPR from the milestone (basically - 9).
+ fprversion = "FPR%s" % (int(get_milestone_minor(milestone))-9,)
+ print(fprversion)
+
elif options.symbolversion:
# Only expose major milestone and alpha version. Used for symbol
# versioning on Linux.
diff --git a/toolkit/content/about.js b/toolkit/content/about.js
index ae467d07a..7739268d3 100644
--- a/toolkit/content/about.js
+++ b/toolkit/content/about.js
@@ -23,7 +23,21 @@ var versionNum = Components.classes["@mozilla.org/xre/app-info;1"]
.getService(Components.interfaces.nsIXULAppInfo)
.version;
var version = document.getElementById("version");
-version.textContent += " " + versionNum;
+
+// paranoia
+if (versionNum.substr(0,3) == "45.") {
+ // FPR series
+ var vf = 0 + versionNum.substr(3);
+ var pl = ""+ (vf - (vf|0));
+ pl = 0 + pl.substr(1);
+ vf = vf|0; vf -= 9;
+ // XXX localize me
+ version.textContent = "Feature Parity Release "+vf+
+ ((pl > 0) ? " (Security Parity Release "+pl+")" : "")+
+ " ("+versionNum+")";
+} else {
+ version.textContent += " " + versionNum;
+}
// append user agent
var ua = navigator.userAgent;