Skip to content

Sorting tracks alphabetically is underspecified #1772

Closed

Description

@svgeesus

Activity

  1. added this to the Web Audio V1 milestone on Sep 27, 2018
  2. changed the title [-]Sorting nodes alphabetically is underspecified[/-] [+]Sorting tracks alphabetically is underspecified[/+] on Oct 1, 2018
  3. self-assigned this
    on Oct 11, 2018
  4. padenot commented on Nov 7, 2018

    @padenot
    Member

    Let's order by code point. It's not that important, it just needs to be a stable sort.

  5. rtoy commented on Nov 7, 2018

    @rtoy
    Member
  6. added
    Needs DiscussionThe issue needs more discussion before it can be fixed.
    on Nov 8, 2018
  7. svgeesus commented on Nov 29, 2018

    @svgeesus
    ContributorAuthor

    I agree it just needs to be

    a) stable
    b) defined

    code point is easy, fast, and meets the needs.

  8. assigned and unassigned on Nov 29, 2018
  9. svgeesus commented on Jan 9, 2019

    @svgeesus
    ContributorAuthor

    Note that there was further discussion of this issue by I18n WG on their github. Note that they suggest not doing casefolding (not even ASCII-only casefolding) which then makes this super simple.

  10. removed
    Needs DiscussionThe issue needs more discussion before it can be fixed.
    on Jan 9, 2019
  11. added 2 commits that reference this issue on Jan 15, 2019
    4cf8380
    2498c06
  12. 7 remaining items

  13. padenot commented on Mar 19, 2020

    @padenot
    Member

    We should put w3c/i18n-activity#598 (comment) in the spec. I think the current prose is not what implementations are doing, and that's a mistake in the spec.

  14. rtoy commented on Mar 19, 2020

    @rtoy
    Member

    Chrome sorts by code units because that's how Javascript sorts strings.

    But I agree with everything else in that comment.

  15. rtoy commented on Mar 26, 2020

    @rtoy
    Member

    Teleconf: Remove "lexicographic". But still require sorting by code units because that's how Javascript sorts strings. (Code points and code units are different.)

  16. svgeesus commented on Apr 9, 2020

    @svgeesus
    ContributorAuthor

    @aphillips yes, these are opaque IDs for individual tracks, and are not presented to the user. The intent is simply that implementations all have a consistent track ordering. The term code unit is not an error and is due to the fact that Javascript stores strings in UTF-16 and indexes by code unit not code point, so non-BMP characters take two units.

  17. added a commit that references this issue on Apr 10, 2020
    986bae6
  18. aphillips commented on Apr 10, 2020

    @aphillips

    The choice of sorting on code points or code units depends on what one wants to do with the resulting list or array of items. Because this is a list of opaque IDs and the goal is a fast deterministic sort, it makes all kinds of sense to do code unit sorting. The change looks good to me.

  19. aphillips commented on Apr 10, 2020

    @aphillips

    @svgeesus Please don't remove our label. While the title seems kind of "active" (suggesting the issue isn't resolved), it's actually how we track where our issues are--we don't have an "i18n-resolved" label or such to keep the label clutter down. You are more than welcome to close this issue once you're done with it.

  20. svgeesus commented on Apr 30, 2020

    @svgeesus
    ContributorAuthor

    @aphillips aha, sorry! Understood.

  21. svgeesus commented on Apr 30, 2020

    @svgeesus
    ContributorAuthor

    @rtoy we could remove the v1Blocker though, I think.

  22. rtoy commented on Apr 30, 2020

    @rtoy
    Member

    When the issue is closed, I don't think it's necessary. Might be handy if we ever need to look at closed issues to see which were blockers.

  23. himorin commented on Jan 29, 2021

    @himorin

    Just note: W3C i18n WG closed our tracker with actions taken satisfactory. (please not remove i18n-needs-resolution label which is used by our bot and tracking system)

  24. added a commit that references this issue on Nov 23, 2025
    288bafb
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions