-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove [NoInterfaceObject] #20
Conversation
PTAL @reillyeon |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good except for one typo. 😅
index.html
Outdated
|
||
callback PositionErrorCallback = void (PositionError positionError); | ||
callback PositionErrorCallback = void (PositionErrorPositionError positionError); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
s/PositionErrorPositionError/NavigatorGeolocationPositionError/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing typo 🤣
Now fixed.
Rename exposed interfaces Fix w3c#19
ee9d941
to
923754c
Compare
@Honry can help update https://github.com/web-platform-tests/wpt/tree/master/geolocation-API accordingly? TL;DR: this patch exposes some interfaces so maybe idlharness.js helps. |
Props to @autofoolip for taking care of idlharness.js tests automatically. IIUC the bot uses IDLs extracted by reffy (here https://github.com/web-platform-tests/wpt/blob/master/interfaces/geolocation-API.idl) that extracts them by crawling the TR version of the spec (in this case https://www.w3.org/TR/geolocation-API). What follows is that the IDL tests will be updated automatically only when a new spec version is published on TR. My interpretation is we're still compliant with the test as you commit policy we follow in this group. We just need to publish a TR version after any substantial change to the spec IDL to trigger the IDL test update. @Honry, please correct me if I'm wrong. |
All refreshed IDLs used by the bot are maintained in https://github.com/tidoust/reffy-reports/tree/master/w3c/idl Looks like it crawls the ED version of the spec, for example, the bot updated the web-platform-tests/wpt#15125 while the IDL change is not published to TR yet. |
@Honry, thanks for the clarification. Using IDL from EDs as the source sounds like a better solution. No issues then. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
:( late, but this would make a mess in Gecko. It means a ton of refactoring and renaming things/files. As @annevk mentioned, it’s probably not worth doing this at this point. These interfaces are already in browser engines and they don’t cause issues. I’d say switch all these back and just remove NoInterfaceObject only.
Oh wait, did #23 undo this? If yes, yay 😃 |
Anyway, please please please file bugs on Gecko with changes you are making, otherwise we are all going to get out of sync! |
#23 partially undid the rename. https://chromium-review.googlesource.com/c/chromium/src/+/1471230 is the change to implement this in Blink which I never merged due to some CQ flakiness. I should get on that. It still renames,
|
Ok, that’s not too bad... but if we can avoid the renaming entirely 🥰 |
Wouldn't you agree that the names "coordinates" and "position" are likely to be confused with rendering concepts from other parts of the platform? |
From the engines perspective, no - because they are already implemented specifically for Geolocation. From an authoring perspective, maybe: They don't have constructors, so they can't be directly used anyway. A new set of coordinates from any new spec could just be named |
If you are firmly opposed to renaming I agree that the names are already squatted and future APIs can work around it. From my perspective this is our last shot before renaming becomes impossible so it seems like a good opportunity to pick something less likely to cause confusion. |
@marcoscaceres said:
Per my reading of #19 (comment) @annevk is not opposed to the idea of rename, just wanted the group to "carefully consider with what name to expose these interfaces and then please drop this.", where "drop this" refers to To be clear, the following are the interfaces that dropped
This seems like a good opportunity for implementers to roll both the (mostly) mechanical rename and the removal of Yours, |
I think we need a third opinion here from the WebKit folks - otherwise this exercise is rather pointless. I'm willing to make the change in Gecko if they are also willing to make the change in WebKit. It's a bunch of refactoring work, so I'd personally prefer to spend time on other things. However, if others think this preemptive change is good for the platform, I'm ok to invest time to do the refactoring. |
Looping in @cdumez for WebKit feedback. Here's the Blink patch of this spec change: |
While we are here, can I kindly request that we add: That way, we make sure nothing gets merged into the spec unless we have agreement from at least 2 browser vendors, browser bugs are filed, and we have tests? |
This looks reasonable. Where is the WebKit bug so that I can work on this? |
Curse you, @cdumez 😋 guess I’ll be refactoring too. |
@cdumez, the WebKit bug is at https://webkit.org/b/200885 Thanks! @marcoscaceres, you want me to open one for Gecko? You'll know Mozillians who should be cc'd in the bug, but I'm happy to create one if so preferred. |
That would be great! Please cc me and we will go from there. |
@marcoscaceres, the Gecko bug is at https://bugzil.la/1575144 Thanks! |
Awesome, thanks! |
The WebKit bug https://webkit.org/b/200885 is now fixed. That was fast, thanks @cdumez! |
This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f
This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f
This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1471230 Commit-Queue: Reilly Grant <[email protected]> Reviewed-by: Yoav Weiss <[email protected]> Cr-Commit-Position: refs/heads/master@{#695573}
…ve [NoInterfaceObject], a=testonly Automatic update from web-platform-tests [geolocation] Rename interfaces and remove [NoInterfaceObject] This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f -- wpt-commits: 99a9f0b73bd0ac3a739dfe2157b93578b760ed5d wpt-pr: 18989
…ve [NoInterfaceObject], a=testonly Automatic update from web-platform-tests [geolocation] Rename interfaces and remove [NoInterfaceObject] This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f -- wpt-commits: 99a9f0b73bd0ac3a739dfe2157b93578b760ed5d wpt-pr: 18989
…ve [NoInterfaceObject], a=testonly Automatic update from web-platform-tests [geolocation] Rename interfaces and remove [NoInterfaceObject] This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f -- wpt-commits: 99a9f0b73bd0ac3a739dfe2157b93578b760ed5d wpt-pr: 18989 UltraBlame original commit: d9416fbe9cef4320251f42861d2fd7dbf1bffe18
…ve [NoInterfaceObject], a=testonly Automatic update from web-platform-tests [geolocation] Rename interfaces and remove [NoInterfaceObject] This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f -- wpt-commits: 99a9f0b73bd0ac3a739dfe2157b93578b760ed5d wpt-pr: 18989 UltraBlame original commit: d9416fbe9cef4320251f42861d2fd7dbf1bffe18
…ve [NoInterfaceObject], a=testonly Automatic update from web-platform-tests [geolocation] Rename interfaces and remove [NoInterfaceObject] This change renames the following interfaces and removes the [NoInterfaceObject] annotation so that these types are now exposed to script: Coordinates -> GeolocationCoordinates Position -> GeolocationPosition PositionError -> GeolocationPositionError This is done in response to an effort to remove this annotation from WebIDL. Spec pull requests (merged): w3c/geolocation#20 w3c/geolocation#23 Intent to Ship: https://groups.google.com/a/chromium.org/d/msg/blink-dev/Xig9oewsQMA/eyC7dbtiAAAJ Bug: 931847 Change-Id: I38d0172afc33d5757b664e2807356d8727e82d7f -- wpt-commits: 99a9f0b73bd0ac3a739dfe2157b93578b760ed5d wpt-pr: 18989 UltraBlame original commit: d9416fbe9cef4320251f42861d2fd7dbf1bffe18
Landed in Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1575144 |
Rename exposed interfaces
Fix #19