-
Notifications
You must be signed in to change notification settings - Fork 172
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor TagList to be more intuitive
Previous behavior was based on some tests to reduce the cost of generating the dynamic ids in high volume paths compared to servo. However, it led to a number of surprising and confusing issues for users. With this change we want to clear up the behavior for users and we can optimize as needed in the future. It will now sort by the tag key and remove duplicates on update. The goal is to have more intuitive behavior for the user so they can rely on: 1. Any ids with the same set of tags will be equal. 2. Later additions will always override if the key already exists. So for `withTags(Iterable)` if there were entries with duplicate keys the iteration order would determine which one ended up getting used.
- Loading branch information
1 parent
e7bed2b
commit f2f25c0
Showing
8 changed files
with
399 additions
and
57 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.