Merged
Conversation
Only asserts, not preconditions, as passing invalid indices here cannot lead to out-of-bounds access — we have unconditional bounds checks later.
This works slightly different as usual, as the input argument specifies the maximum value we expect to store, not the maximum count.
…se cases that require it. This results in a significant speedup for both individual insert/remove operations as well as bulk set operations - up to 4x. Use cases that require an O(1) count can use the separate BitSet.Counted type.
[test] Check baseline API expectations for set-like types
…uirements The two highlights are _customIndexOfEquatableElement and _customLastIndexOfEquatableElement, speeding up the implementation of `firstIndex(of:)` and `lastIndex(of:)`.
Add customary overloads for high-level Set operations.
Fleshing out `PersistentSet`
Rename `PriorityQueueModule` to `HeapModule`
[BitSet] Fix invariant violation in member subscript
It is not tenable to continue supporting ancient toolchains indefinitely, as each supported toolchain version adds a nontrivial amount of prerelease testing work. Additionally, working around bugs in older toolchains that have been long since resolved is not a productive use of anyone’s time. Users who are stuck on older toolchains are of course welcome to continue using the last package release that supports their platform. (And they may continue to receive bug fix updates, as we can always tag new bugfix releases on older minor release branches.)
Unfortunate edge case: the new `initialize(fromContentsOf:)` from SE-0370 is calling withContiguousStorageIfAvailable, so it is subject to SR-14663. This means we can either choose to continue maintaining the workaround, or we can call the stdlib’s implementation, but not both.
[1.1.0] Bump minimum required Swift toolchain to 5.5
This is mostly about adding more type declarations to deal with type checker limitations in the older compiler. This also includes workarounds that allow better support for CodingKeyRepresentable in PersistentDictionary, and it fixes a couple of small oversights on various #else branches.
Restore support for building with Swift 5.5
Merge release/1.0 to release/1.1
Update CMake configuration in preparation for 1.1
Remove accidental reference to CMakeLists.txt as a source file.
Update CMakeLists.txt
Member
Author
|
@swift-ci test |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This merges the current state of the
release/1.1branch tomain, in preparation of tagging an actual release there. This includes theSortedSet/SortedDictionarywork which isn't going to be ready for 1.1, so we'll remove it from that branch. (Work on it will continue onmain, with the expectation that these will ship in 1.2.0 soon.)Checklist