Skip to content
This repository was archived by the owner on Nov 27, 2023. It is now read-only.
This repository was archived by the owner on Nov 27, 2023. It is now read-only.

WebCompat regressions with group #44

Closed

Description

@codehag

Hey all,

We have another regression, this time with group. https://bugzilla.mozilla.org/show_bug.cgi?id=1791415#c14

It didn't get surfaced quite as quickly as the last one, as it was harder to catch. This may be true of other sites.

Activity

  1. codehag commented on Nov 7, 2022

    @codehag
    Author

    I think if this is unique to last pass, we may be able to have them update. However, given how hard it was to catch, this might be failing silently elsewhere? I wonder if we need to have a usage counter for this before moving forward with shipping?

  2. ljharb commented on Nov 7, 2022

    @ljharb
    Member

    Any idea what code on LastPass is breaking with this?

  3. syg commented on Nov 7, 2022

    @syg
  4. codehag commented on Nov 7, 2022

    @codehag
    Author

    Looks like not yet, still waiting on the full picture.

  5. codehag commented on Nov 7, 2022

    @codehag
    Author

    We have a second regression that appears to be related to this proposal: https://bugzilla.mozilla.org/show_bug.cgi?id=1799522 / webcompat/web-bugs#112923

  6. codehag commented on Nov 7, 2022

    @codehag
    Author

    And a third, unfortunately: webcompat/web-bugs#112552 -- also tested and confirmed on chrome canary.

  7. changed the title [-]WebCompat regression: LastPass on `group`[/-] [+]WebCompat regressions with `group`[/+] on Nov 7, 2022
  8. syg commented on Nov 7, 2022

    @syg

    In light of these discovered incompatibilities Chrome will no longer be shipping this proposal in 108.

  9. neclimdul commented on Nov 8, 2022

    @neclimdul

    I haven't tested the proposed removal but Array.prototype.group = null; in the console did fix my LastPass extension. Several traces are also in the bugzilla issue that point to the group property/method.

  10. neclimdul commented on Nov 8, 2022

    @neclimdul

    Since LastPass isn't the only regression I doubt it matters to much but some additional information. I regularly use LastPass with the same account in Chrome unstable and haven't run into the same problem. I can confirm the other regressions from this issue on that browser so the so probably a frustrating variation between the Chrome and Firefox extension provided by LastPass.

  11. bricss commented on Nov 14, 2022

    @bricss

    Maybe, it might be possible to rename group() and groupToMap() into assort() and assortToMap() and ship 🚢 it asap 🤔

  12. ljharb commented on Nov 15, 2022

    @ljharb
    Member

    I’m not familiar with any such word “assort” - that may not be an intuitive option.

  13. bricss commented on Nov 15, 2022

    @bricss

    That's what I found in dictionary for group synonyms 😀 sounds legit, imo 🙄

  14. bricss commented on Nov 15, 2022

    @bricss

    As an option might be aggregate, batch or pluck 🙂

  15. 10 remaining items

  16. jsejcksn commented on Nov 30, 2022

    @jsejcksn

    @bakkot Thanks for the link!

    @ljharb I share that empathy for users — even as developers, we are all users and none of us wants a bad experience. However, isn't this actually a case of (inconsiderate) devs who are breaking the web? Nothing that's been proposed would cause a break in backward compatibility of existing standards/APIs. There will always be devs (or product owners, etc. — the "code-owning decision makers") who eschew social responsibility and always users who suffer by those devs' choices. Where do we draw the line?

  17. ljharb commented on Nov 30, 2022

    @ljharb
    Member

    @jsejcksn we draw the line, as always, at "no breakage". Slippery slope arguments don't change that.

  18. jsejcksn commented on Nov 30, 2022

    @jsejcksn

    @jsejcksn we draw the line, as always, at "no breakage". Slippery slope arguments don't change that.

    What I meant by "Where do we draw the line?" was: Every built-in is being mutated by some site out there, and its users would be affected by any new name chosen for this API (no matter the name). Maybe it's just one student's sandbox app — or one community forum site for a very small group.

    What is the objective measure that we've determined to be the threshold? Is it one site? Is it 100? Is it 1% according to some index created by a single crawler? How do we define what "no breakage" means?

  19. ljharb commented on Nov 30, 2022

    @ljharb
    Member

    I don't think there is any objective measure - I think each browser just makes a judgement call.

  20. codehag commented on Nov 30, 2022

    @codehag
    Author

    We are getting a bit off topic, I think @bakkot gave a good answer to the question. Please feel free to ask for more clarification in the matrix channel for tc39-general!

  21. bricss commented on Jan 11, 2023

    @bricss

    Any hope, any updates? 🤔

  22. bakkot commented on Jan 11, 2023

    @bakkot
    Member

    @bricss Since group didn't work out, we'll need to find another option. I believe the current best hope is switching to static methods on Object and Map, but the committee will need to discuss that before browsers can ship it.

  23. lilnasy commented on May 15, 2023

    @lilnasy

    Safari 16.4 shipped Array#group. At the time, this broke IBM cloud login (webcompat/web-bugs#112923), but not altron.ch (webcompat/web-bugs#112552). IBM's usage involved treating an array as a query param object, one of the keys of which was group. They seem to have corrected this misuse since then.

  24. bricss commented on May 15, 2023

    @bricss

    Shall we also break things and move fast ⏩ forward? 😀

  25. o-t-w commented on May 17, 2023

    @o-t-w

    It's already stable Safari and all the other naming suggestions are terrible.

  26. bathos commented on May 17, 2023

    @bathos

    I guess this is where we're bikeshedding backup names.

    • bucket
    • keyBy
    • toGroups
    • switch kidding

    I’m not familiar with any such word “assort” - that may not be an intuitive option.

    It’s a pity this is too obscure because I think it'd be a semantic upgrade from “group” if not for that — it implies grouping on the basis of some condition, not just arbitrary grouping.

  27. karlcow commented on May 17, 2023

    @karlcow
  28. ljharb commented on May 17, 2023

    @ljharb
    Member

    I don't think we need additional name suggestions right now; we're right in the middle of the TC39 plenary and we'll be discussing it further tomorrow.

  29. ljharb commented on May 18, 2023

    @ljharb
    Member

    The proposal has been demoted to stage 2, with the expectation that I will be requesting stage 3 for it in July with static methods (#47).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions