Closed Bug 1225414 Opened 9 years ago Closed 9 years ago

incorrect user-agent string for ESR-channel build

Categories

(Firefox :: General, defect)

38 Branch
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: Ikonta, Unassigned)

References

Details

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0
Build ID: 20151110093942

Steps to reproduce:

I use stable (ESR-channel) FireFox browser.
For now it is =www-client/firefox-38.4.0.


Actual results:

Looking its User-Agent string in about:support or in server's logs I see incorrect version info:
User Agent
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0




Expected results:

I expect to see at least correct version:
User Agent
Mozilla/5.0 (X11; Linux x86_64; rv:38.4) Gecko/20100101 Firefox/38.4

Maybe, extended with non-default ("Release") channel's name:
User Agent
Mozilla/5.0 (X11; Linux x86_64; rv:38.4 ESR) Gecko/20100101 Firefox/38.4
This might be by design to reduce fingerprinting.
Component: Untriaged → Build Config
Component: Build Config → Networking: HTTP
Product: Firefox → Core
Component: Networking: HTTP → Build Config
Product: Core → Firefox
From https://dxr.mozilla.org/mozilla-central/rev/a2f83cbe53ac4009afa4cb2b0b8f549289b23eeb/python/mozbuild/mozbuild/milestone.py#58

>        # Only expose the major milestone in the UA string, hide the patch
>        # level (bugs 572659 and 870868).
>        uaversion = "%s.0" % (get_milestone_major(milestone),)
See bug 572659 (X.Y.0) and bug 870868 (X.0).
(In reply to Sebastian H. [:aryx][:archaeopteryx] from comment #2)
> See bug 572659 (X.Y.0) and bug 870868 (X.0).

Thank you!

But subject of bug #870868 looks at least strange: why _freeze_ zero value instead of simple removing pre-defined constant?
Adding missed, but nowadays necessary channel mark.
(In reply to Ikonta from comment #3)
> (In reply to Sebastian H. [:aryx][:archaeopteryx] from comment #2)
> > See bug 572659 (X.Y.0) and bug 870868 (X.0).
> 
> Thank you!
> 
> But subject of bug #870868 looks at least strange: why _freeze_ zero value
> instead of simple removing pre-defined constant?
> Adding missed, but nowadays necessary channel mark.

You mean like "rv:38)"? It is possible to break many existing recognition mode.
Component: Build Config → General
(In reply to YF (Yang) from comment #4)
> > But subject of bug #870868 looks at least strange: why _freeze_ zero value
> > instead of simple removing pre-defined constant?
> > Adding missed, but nowadays necessary channel mark.
> 
> You mean like "rv:38)"? It is possible to break many existing recognition
> mode.

As for now, recodnition modes works correctly only for Release channel, not for ESR.
Thatis why recognition mode algorythm should be reviewed at least for FireFox.

I mean usage of two values: "rel:38)" and "esr:38)".
Ideally with some optional fiels to validate up-to-date state of ESR version.
I think the website should be not needs to distinguish whether the user is ESR, the features should be no differents with the stable version.
For Firefox 45, Service Workers will be enabled in the fast track release and turned off for the ESR release: https://groups.google.com/d/msg/mozilla.dev.platform/yuNHtDhl3lY/FNYiDh2YAgAJ
I believe this is working as intended.

User Agent string changes are notorious for causing web compat issues, so changing them without a significant benefit is likely to just be a net loss for users due to sites breaking. (Without looking, I'd assume that's why it's "frozen" to .0 for ESR -- ESR users are a tiny minority of Firefox users, and the web is full of dumb scripts and regexs that likely assume the version is always .0 and may break if it's not.)
Status: UNCONFIRMED → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
See Also: → 1239228
You need to log in before you can comment on or make changes to this bug.