WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 182629
[macOS, iOS] Expose OS marketing version in UserAgent
https://bugs.webkit.org/show_bug.cgi?id=182629
Summary
[macOS, iOS] Expose OS marketing version in UserAgent
Brent Fulgham
Reported
2018-02-08 15:49:09 PST
Allow the UserAgent to expose the marketing version of the operating system WebKit is running on.
Attachments
Patch
(1.83 KB, patch)
2018-02-08 16:25 PST
,
Brent Fulgham
no flags
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2018-02-08 16:24:34 PST
<
rdar://problem/37370975
>
Brent Fulgham
Comment 2
2018-02-08 16:25:35 PST
Created
attachment 333434
[details]
Patch
mitz
Comment 3
2018-02-08 16:34:28 PST
Having a variable user-agent string like this has been a constant source of website compatibility bugs.
Brent Fulgham
Comment 4
2018-02-08 17:05:13 PST
(In reply to mitz from
comment #3
)
> Having a variable user-agent string like this has been a constant source of > website compatibility bugs.
That's true. But there are also compelling reasons why some level of variation is needed by websites.
Sam Weinig
Comment 5
2018-02-08 17:08:11 PST
(In reply to Brent Fulgham from
comment #4
)
> (In reply to mitz from
comment #3
) > > Having a variable user-agent string like this has been a constant source of > > website compatibility bugs. > > That's true. But there are also compelling reasons why some level of > variation is needed by websites.
What are those reasons?
Brent Fulgham
Comment 6
2018-02-09 09:06:23 PST
(In reply to Sam Weinig from
comment #5
)
> (In reply to Brent Fulgham from
comment #4
) > > (In reply to mitz from
comment #3
) > > > Having a variable user-agent string like this has been a constant source of > > > website compatibility bugs. > > > > That's true. But there are also compelling reasons why some level of > > variation is needed by websites. > > What are those reasons?
The primary reasons were: 1. WebKit sometimes ships with bugs that can be worked around at the website level. Having a release version allows websites to activate workarounds where needed. 2. Decisions about what site content to send to a user agent are often made before the page is loaded. Having UA information when connecting to the server allows websites to send only the relevant payload (e.g., more recent javascript, more efficient image formats, etc.) 3. Safari (for example) ships with the same version on several operating system revisions. Sometimes bugs exist in specific OS revisions that websites can work around. For these reasons, we decided to relax some of the restrictions we had originally planned on making.
Daniel Bates
Comment 7
2018-02-09 10:44:46 PST
Comment on
attachment 333434
[details]
Patch OK.
Daniel Bates
Comment 8
2018-02-09 10:48:54 PST
Comment on
attachment 333434
[details]
Patch As others have already brought up, this seems like it is moving us back a step and it is unclear how valuable the OS version is for a site to work around WebKit issues given that it does not seem to provide sufficient granularity. Sites that depend on such version information will keep their WebKit workarounds longer than may be necessary.
Daniel Bates
Comment 9
2018-02-09 10:58:34 PST
(In reply to Daniel Bates from
comment #8
)
> Comment on
attachment 333434
[details]
> Patch > > As others have already brought up, this seems like it is moving us back a > step and it is unclear how valuable the OS version is for a site to work > around WebKit issues given that it does not seem to provide sufficient > granularity.
Obviously, the remark about granularity is specific to Mac where we release Safari/WebKit updates out-of-band with OS updates. On iOS, a publicly released version of WebKit always implies a new rev of the OS; => the version information is more meaningful.
mitz
Comment 10
2018-02-09 11:04:25 PST
(In reply to Brent Fulgham from
comment #6
)
> (In reply to Sam Weinig from
comment #5
) > > (In reply to Brent Fulgham from
comment #4
) > > > (In reply to mitz from
comment #3
) > > > > Having a variable user-agent string like this has been a constant source of > > > > website compatibility bugs. > > > > > > That's true. But there are also compelling reasons why some level of > > > variation is needed by websites. > > > > What are those reasons? > > The primary reasons were: > > 1. WebKit sometimes ships with bugs that can be worked around at the website > level. Having a release version allows websites to activate workarounds > where needed.
Shouldn’t WebKit provide a direct and explicit way for websites to determine that a bug is fixed?
> > 2. Decisions about what site content to send to a user agent are often made > before the page is loaded. Having UA information when connecting to the > server allows websites to send only the relevant payload (e.g., more recent > javascript, more efficient image formats, etc.)
Aren’t there other request headers dedicated to explicitly, directly conveying what the user agent supports?
> > 3. Safari (for example) ships with the same version on several operating > system revisions. Sometimes bugs exist in specific OS revisions that > websites can work around.
See 1.
> > For these reasons, we decided to relax some of the restrictions we had > originally planned on making.
WebKit Commit Bot
Comment 11
2018-02-09 11:19:46 PST
Comment on
attachment 333434
[details]
Patch Clearing flags on attachment: 333434 Committed
r228334
: <
https://trac.webkit.org/changeset/228334
>
WebKit Commit Bot
Comment 12
2018-02-09 11:19:47 PST
All reviewed patches have been landed. Closing bug.
Brent Fulgham
Comment 13
2018-04-27 08:39:51 PDT
Note: For people arriving here looking for ways to live in a world with a frozen user agent, please look at <
https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing/Feature_detection
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug