Closed Bug 1375457 Opened 7 years ago Closed 7 years ago

prettier.js website broken: TypeError: setting getter-only property "name"

Categories

(Core :: DOM: Workers, defect)

56 Branch
defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla56
Tracking Status
firefox-esr52 --- unaffected
firefox54 --- unaffected
firefox55 + verified
firefox56 + verified

People

(Reporter: nachtigall, Assigned: baku)

References

Details

(Keywords: regression, site-compat)

Attachments

(2 files)

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0
Build ID: 20170621102301

Steps to reproduce:

Go to https://prettier.github.io/prettier/


Actual results:

The results area at the right is empty. 

Opening the Console shows:          
        TypeError: setting getter-only property "name" index.js:1257:5

See screenshot.



Expected results:

It works in Firefox 54 and Chrome, but not in Firefox 55 and Firefox 56.

I did run mozregression and here's the Bisection information from it:

app_name: firefox
build_date: 2017-05-17 13:56:11.506000
build_file: C:\Users\jnachtigall\.mozilla\mozregression\persist\2fe44b09de7c--mozilla-inbound--firefox-55.0a1.en-US.win64.zip
build_type: inbound
build_url: https://queue.taskcluster.net/v1/task/dBXLg7muSSeJB3bJ0fbJhg/runs/0/artifacts/public%2Fbuild%2Ffirefox-55.0a1.en-US.win64.zip
changeset: 2fe44b09de7c427731190276a9d8f801602286cb
pushlog_url: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=2fe44b09de7c427731190276a9d8f801602286cb&tochange=b2eb05d5fad2fea928f47d3e6a329024c0aaf70e
repo_name: mozilla-inbound
repo_url: https://hg.mozilla.org/integration/mozilla-inbound
task_id: dBXLg7muSSeJB3bJ0fbJhg
Summary: prettier.js webiste broken: TypeError: setting getter-only property "name" → prettier.js website broken: TypeError: setting getter-only property "name"
FWIW, the line causing the TypeError is a simple: 

var name = "prettier";
Blocks: 1364297
Has Regression Range: --- → yes
Component: Untriaged → DOM: Workers
Product: Firefox → Core
This change was intentional, right? Then we probably need a site compatibility note.
Flags: needinfo?(amarchesini)
I spoke with Domenic.  We probably need to make this [replaceable] here and in the spec.
[Tracking Requested - why for this release]: A site compatibility issue that may affect certain sites using Web worker scripts.
Assignee: nobody → amarchesini
Flags: needinfo?(amarchesini)
Attached patch replaceble.patchSplinter Review
Attachment #8880734 - Flags: review?(bkelly)
Attachment #8880734 - Flags: review?(bkelly) → review+
Spec change, so maybe this needs developer documentation?
It's a regression that's going to be fixed with Firefox 55 Beta so no MDN or site compat note needed.
Keywords: dev-doc-needed
Pushed by amarchesini@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/0dc1a4c1c038
name should be a replaceable attribute in worker global scopes, r=bkelly
Backed out for failing /workers/interfaces/SharedWorkerGlobalScope/name/setting.html:

https://hg.mozilla.org/integration/mozilla-inbound/rev/403f5f60f65884ccb6e8283df778d3fb6f3202e5

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=0dc1a4c1c0385ddc95a109af31fcc62fe220059b&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&filter-resultStatus=retry&filter-resultStatus=usercancel&filter-resultStatus=runnable
Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=110076863&repo=mozilla-inbound

[task 2017-06-27T19:27:44.923555Z] 19:27:44     INFO - TEST-START | /workers/interfaces/SharedWorkerGlobalScope/name/setting.html
[task 2017-06-27T19:27:45.061033Z] 19:27:45     INFO - PID 7116 | ++DOCSHELL 0x7f96a0d22000 == 7 [pid = 7116] [id = {d0ec1e2f-b75d-49c6-97bb-450718e5e139}]
[task 2017-06-27T19:27:45.061573Z] 19:27:45     INFO - PID 7116 | ++DOMWINDOW == 19 (0x7f96a0d22800) [pid = 7116] [serial = 19] [outer = (nil)]
[task 2017-06-27T19:27:45.078295Z] 19:27:45     INFO - PID 7116 | ++DOMWINDOW == 20 (0x7f96a0b04000) [pid = 7116] [serial = 20] [outer = 0x7f96a0d22800]
[task 2017-06-27T19:27:45.196390Z] 19:27:45     INFO - PID 7116 | ++DOMWINDOW == 21 (0x7f96a0b1d800) [pid = 7116] [serial = 21] [outer = 0x7f96a0d22800]
[task 2017-06-27T19:27:45.366082Z] 19:27:45     INFO - PID 7116 | [7116] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80070057: file /home/worker/workspace/build/src/netwerk/base/nsChannelClassifier.cpp, line 316
[task 2017-06-27T19:27:45.443519Z] 19:27:45     INFO - 
[task 2017-06-27T19:27:45.443636Z] 19:27:45     INFO - TEST-UNEXPECTED-FAIL | /workers/interfaces/SharedWorkerGlobalScope/name/setting.html | setting name - assert_equals: expected (string) "x" but got (number) 1
[task 2017-06-27T19:27:45.443823Z] 19:27:45     INFO - @http://web-platform.test:8000/workers/interfaces/SharedWorkerGlobalScope/name/setting.html:17:5
[task 2017-06-27T19:27:45.444128Z] 19:27:45     INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1405:20
[task 2017-06-27T19:27:45.444408Z] 19:27:45     INFO - Test.prototype.step_func/<@http://web-platform.test:8000/resources/testharness.js:1429:20
[task 2017-06-27T19:27:45.444845Z] 19:27:45     INFO - EventListener.handleEvent*@http://web-platform.test:8000/workers/interfaces/SharedWorkerGlobalScope/name/setting.html:16:3
[task 2017-06-27T19:27:45.445063Z] 19:27:45     INFO - Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1405:20
[task 2017-06-27T19:27:45.445279Z] 19:27:45     INFO - async_test@http://web-platform.test:8000/resources/testharness.js:514:13
[task 2017-06-27T19:27:45.445503Z] 19:27:45     INFO - @http://web-platform.test:8000/workers/interfaces/SharedWorkerGlobalScope/name/setting.html:14:1
Flags: needinfo?(amarchesini)
We probably need Domenic's WPT changes.
What's the correct way to have those changes in m-i? Can I just take them and land them?
Flags: needinfo?(amarchesini) → needinfo?(bkelly)
Domenic just merged them upstream.  We can ask jgraham for a sync or we could mark expected fail for now and then it will get corrected on next upstream sync.
Flags: needinfo?(bkelly)
Pushed by amarchesini@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/0bbc015c9fe8
name should be a replaceable attribute in worker global scopes, r=bkelly
https://hg.mozilla.org/mozilla-central/rev/0bbc015c9fe8
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla56
please request uplift to beta when you get a chance
Flags: needinfo?(amarchesini)
Comment on attachment 8880734 [details] [diff] [review]
replaceble.patch

Approval Request Comment
[Feature/Bug causing the regression]: bug 1364297
[User impact if declined]: in workers, 'name' cannot be used as variable.
[Is this code covered by automated tests?]: there are WPTs.
[Has the fix been verified in Nightly?]: yes
[Needs manual test from QE? If yes, steps to reproduce]: no 
[List of other uplifts needed for the feature/fix]: none
[Is the change risky?]: none
[Why is the change risky/not risky?]: We just make 'name' a replaceable attribute in the worker global scopes.
[String changes made/needed]: none
Flags: needinfo?(amarchesini)
Attachment #8880734 - Flags: approval-mozilla-beta?
Comment on attachment 8880734 [details] [diff] [review]
replaceble.patch

fix a regression in beta55
Attachment #8880734 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
QA Whiteboard: [good first verify]
I have reproduced this Bug with Nightly 56.0a1 (2017-06-22) on Windows 10, 64 Bit!

The bug's fix is now verified on latest 

Beta 55.0b8
Build ID 	20170710085521
User Agent 	Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0

Nightly 56.0a1
Build ID 	20170707030206
User Agent 	Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0
QA Whiteboard: [good first verify] → [good first verify] [bugday-20170712]
I have reproduced this bug with Nightly 56.0a1 (2017-06-22) (64-bit) on Ubuntu 16.04 LTS!

This bug's fix is now verified with latest Beta and latest Nightly!

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

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

[bugday-20170712]
As per Comment 20 & Comment 21, I am marking this bug as verified fixed.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.