Skip to content
This repository has been archived by the owner on Oct 2, 2019. It is now read-only.

Path to Stage 4! #12

Closed
30 of 31 tasks
ljharb opened this issue Mar 29, 2016 · 21 comments
Closed
30 of 31 tasks

Path to Stage 4! #12

ljharb opened this issue Mar 29, 2016 · 21 comments

Comments

@ljharb
Copy link
Member

ljharb commented Mar 29, 2016

Stage 4

  • committee approval
  • implement in two browsers
    • node v12.0 (PR attempt 1 / PR attempt 2)
    • Chrome Canary / v8 (Bug)
      • Chrome v70 (flagged)
      • Chrome v71 (unflagged)
    • Firefox / SpiderMonkey (bug)
    • Safari / Webkit / JSC (bug)
      • Safari 12.1 (unflagged)
      • Safari Technical Preview 73 (blog)
    • Edge / Chakra (issue / PR)
      • Edge (unflagged)
    • TypeScript (PR)
    • Hermes (commit)
  • significant in-the-field experience
  • resolve web compat issues (issue)
  • ecma262 PR approved
  • prepare ecma262 PR
  • merge test262 tests
  • write test262 tests (PR)

Stage 3

Stage 2

  • receive developer feedback
  • committee approval
  • spec text written
  • spec reviewers selected
ljharb added a commit to ljharb/test262 that referenced this issue Sep 28, 2016
tcare pushed a commit to tc39/test262 that referenced this issue Sep 28, 2016
ljharb added a commit to ljharb/ecma262 that referenced this issue Sep 29, 2016
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `global`

Per tc39/proposal-global#12
ljharb added a commit to ljharb/ecma262 that referenced this issue Oct 1, 2016
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `global`

Per tc39/proposal-global#12
ljharb added a commit to ljharb/ecma262 that referenced this issue Dec 21, 2016
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `global`

Per tc39/proposal-global#12
@chicoxyzzy
Copy link
Member

Chrome started implementing global behind a flag https://bugs.chromium.org/p/v8/issues/detail?id=5537#c4

@ljharb
Copy link
Member Author

ljharb commented Jan 5, 2017

Thanks; i'm subscribed and it's already linked in the OP :-)

ljharb added a commit to ljharb/ecma262 that referenced this issue Sep 12, 2018
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
ljharb added a commit to ljharb/ecma262 that referenced this issue Sep 12, 2018
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
@littledan
Copy link
Member

Sorry that I am catching this a bit late, but I am wondering about the wording of this PR, which was set in this commit in response to this thread. I am wondering, how did you arrive at this wording, rather than using the wording in @domenic's suggestion?

@ljharb
Copy link
Member Author

ljharb commented Sep 15, 2018

Which PR are you referring to?

@littledan
Copy link
Member

a415fa5

@ljharb
Copy link
Member Author

ljharb commented Sep 16, 2018

ah, that's just a commit, not a PR.

I don't remember exactly; but I think we discussed it offline and @domenic was satisfied with this rewording. If not, a new issue or PR is welcome; it'd be a minor editorial tweak (and it could also be commented directly on the spec PR)

@littledan
Copy link
Member

Is there anything you could say about why you went towards this wording rather than the wording Domenic suggested? I can't find information about it in commit messages or bug threads.

@ljharb
Copy link
Member Author

ljharb commented Sep 16, 2018

Nope, I’m afraid i can’t remember my reasons from 2 years ago. I believe it seemed like the most minimal modification to the existing text. Since Domenic hasn’t brought it up, do you have a preference for an alternative?

@littledan
Copy link
Member

I have a preference for the wording Domenic suggested, all else being equal. It seems unnecessary to me to create another separate name for the global this value, when we already have another way of referring to it.

@ljharb
Copy link
Member Author

ljharb commented Sep 16, 2018

I’m worried about this part: #17 (comment)

@Jack-Works
Copy link
Member

globalThis has already available without a flag in Chrome 70

@targos
Copy link

targos commented Oct 27, 2018

@Jack-Works It isn't by default. You probably have enabled the "Experimental JavaScript" flag.

@Jack-Works
Copy link
Member

@targos oh yes I forgot it

@andylima
Copy link

andylima commented Nov 2, 2018

It's in Chrome 71 (beta):

V8 v7.1 also adds support for the globalThis proposal,
enabling a universal mechanism to access the global object
even in strict functions or modules regardless of the platform.

https://v8.dev/blog/v8-release-71

@chicoxyzzy
Copy link
Member

It's implemented in SpiderMonkey

@mathiasbynens
Copy link
Member

In case you want to update the OP: globalThis was implemented in Chrome 70 behind a flag and (as you already note) shipped unflagged in Chrome 71.

@ljharb
Copy link
Member Author

ljharb commented Jan 30, 2019

Thanks :-) the OP already notes this.

@mathiasbynens
Copy link
Member

@ljharb It doesn’t currently note that it shipped behind a flag in Chrome 70.

@ljharb
Copy link
Member Author

ljharb commented Jan 30, 2019

ah true, thanks, updating now

ljharb added a commit to ljharb/ecma262 that referenced this issue Mar 8, 2019
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
ljharb added a commit to ljharb/ecma262 that referenced this issue Mar 8, 2019
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
ljharb added a commit to ljharb/ecma262 that referenced this issue Mar 9, 2019
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
ljharb added a commit to ljharb/ecma262 that referenced this issue Mar 11, 2019
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
@michaelficarra
Copy link
Member

@ljharb Will you be bringing this proposal before the committee for stage 4 at the next meeting?

@ljharb
Copy link
Member Author

ljharb commented Aug 5, 2019

Quite possibly, as soon as i have the stomach for further internet outrage.

ljharb added a commit to ljharb/ecma262 that referenced this issue Aug 7, 2019
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
ljharb added a commit to ljharb/ecma262 that referenced this issue Sep 26, 2019
 - Adds intrinsic `%GlobalThisValue%`
 - Sets it in `SetRealmGlobalObject`
 - Adds global name `globalThis`

Per tc39/proposal-global#12
@ljharb ljharb closed this as completed in 282d472 Oct 1, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants