fix(deps): update rust crate indexmap to v2#34
Merged
Conversation
Contributor
Author
|
Contributor
Author
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
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 PR contains the following updates:
1.9.3→2.0.0Release Notes
indexmap-rs/indexmap (indexmap)
v2.13.0Compare Source
CloneforIntoKeysandIntoValues.map::Slice::split_at_checkedandsplit_at_mut_checked.set::Slice::split_at_checked.v2.12.1Compare Source
hashbrown's new bucket API.v2.12.0Compare Source
hashbrowndependency to 0.16 alone.core::error::Error.pop_ifmethods toIndexMapandIndexSet, similar to themethod for
Vecadded in Rust 1.86.v2.11.4Compare Source
hashbrowndependency to a range allowing 0.15 or 0.16.v2.11.3Compare Source
serdeversion only apply when "serde" is enabled.v2.11.2Compare Source
serde_core, improving buildparallelism in cases where other dependents have enabled "serde/derive".
v2.11.1Compare Source
get_key_value_mutmethod toIndexMap.Ordbound oninsert_sorted_bymethods.v2.11.0Compare Source
insert_sorted_byandinsert_sorted_by_keymethods toIndexMap,IndexSet, andVacantEntry, like customizable versions ofinsert_sorted.is_sorted,is_sorted_by, andis_sorted_by_keymethods toIndexMapandIndexSet, as well as theirSlicecounterparts.sort_by_keyandsort_unstable_by_keymethods toIndexMapandIndexSet, as well as parallel counterparts.replace_indexmethods toIndexMap,IndexSet, andVacantEntryto replace the key (or set value) at a given index.
svalserialization support.v2.10.0Compare Source
extract_ifmethods toIndexMapandIndexSet, similar to themethods for
HashMapandHashSetwith ranges likeVec::extract_if.#[track_caller]annotations to functions that may panic.v2.9.0Compare Source
get_disjoint_mutmethod toIndexMap, matching Rust 1.86'sHashMapmethod.get_disjoint_indices_mutmethod toIndexMapandmap::Slice,matching Rust 1.86's
get_disjoint_mutmethod on slices.borshfeature in favor of their ownindexmapfeature,solving a cyclic dependency that occurred via
borsh-derive.v2.8.0Compare Source
indexmap_with_default!andindexset_with_default!to be used withalternative hashers, especially when using the crate without
std.PartialEqbetween eachSliceand[]/arrays.rustc-rayonfeature and dependency.v2.7.1Compare Source
#[track_caller]to functions that may panic.insert_entry.v2.7.0Compare Source
Entry::insert_entryandVacantEntry::insert_entry, returningan
OccupiedEntryafter insertion.v2.6.0Compare Source
Cloneformap::IntoIterandset::IntoIter.hashbrowndependency to version 0.15.v2.5.0Compare Source
insert_beforemethod toIndexMapandIndexSet, as analternative to
shift_insertwith different behavior on existing entries.first_entryandlast_entrymethods toIndexMap.Fromimplementations betweenIndexedEntryandOccupiedEntry.v2.4.0Compare Source
IndexMap::appendandIndexSet::append, moving all items fromone map or set into another, and leaving the original capacity for reuse.
v2.3.0Compare Source
MutableEntryKeyfor opt-in mutable access to map entry keys.MutableKeys::iter_mut2for opt-in mutable iteration of mapkeys and values.
v2.2.6Compare Source
MutableValuesfor opt-in mutable access to set values.v2.2.5Compare Source
borshserialization support.v2.2.4Compare Source
insert_sortedmethod onIndexMap,IndexSet, andVacantEntry.serdedeserializers.v2.2.3Compare Source
move_indexandswap_indicesmethods toIndexedEntry,OccupiedEntry, andRawOccupiedEntryMut, functioning like the existingmethods on
IndexMap.shift_insertmethods onVacantEntryandRawVacantEntryMut, aswell as
shift_insert_hashed_nocheckon the latter, to insert the new entryat a particular index.
shift_insertmethods onIndexMapandIndexSetto insert a newentry at a particular index, or else move an existing entry there.
v2.2.2Compare Source
RawEntryBuilder::from_hash_full,RawEntryBuilder::index_from_hash, andRawEntryMut::index.v2.2.1Compare Source
RawOccupiedEntryMut::into_key(self) -> &'a mut K,This a breaking change from 2.2.0, but that version was published for less
than a day and has now been yanked.
v2.2.0Compare Source
The new
IndexMap::get_index_entrymethod finds an entry by its index forin-place manipulation.
The
Keysiterator now implementsIndex<usize>for quick access to theentry's key, compared to indexing the map to get the value.
The new
IndexMap::spliceandIndexSet::splicemethods will drain thegiven range as an iterator, and then replace that range with entries from
an input iterator.
The new trait
RawEntryApiV1offers opt-in access to a raw entry API forIndexMap, corresponding to the unstable API onHashSetas of Rust 1.75.Many
IndexMapandIndexSetmethods have relaxed their type constraints,e.g. removing
K: Hashon methods that don't actually need to hash.Removal methods
remove,remove_entry, andtakeare now deprecatedin favor of their
shift_orswap_prefixed variants, which are moreexplicit about their effect on the index and order of remaining items.
The deprecated methods will remain to guide drop-in replacements from
HashMapandHashSettoward the prefixed methods.v2.1.0Compare Source
Empty slices can now be created with
map::Slice::{new, new_mut}andset::Slice::new. In addition,Slice::new,len, andis_emptyarenow
constfunctions on both types.IndexMap,IndexSet, and their respectiveSlices all have binarysearch methods for sorted data: map
binary_search_keysand setbinary_searchfor plain comparison,binary_search_byfor customcomparators,
binary_search_by_keyfor key extraction, andpartition_pointfor boolean conditions.v2.0.2Compare Source
hashbrowndependency has been updated to version 0.14.1 tocomplete the support for Rust 1.63.
v2.0.1Compare Source
hashbrown's relaxed MSRV (or use cargo--ignore-rust-version).v2.0.0Compare Source
MSRV: Rust 1.64.0 or later is now required.
The
"std"feature is no longer auto-detected. It is included in thedefault feature set, or else can be enabled like any other Cargo feature.
The
"serde-1"feature has been removed, leaving just the optional"serde"dependency to be enabled like a feature itself.IndexMap::get_index_mutnow returnsOption<(&K, &mut V)>, changingthe key part from
&mut Kto&K. There is also a new alternativeMutableKeys::get_index_mut2to access the former behavior.The new
map::Slice<K, V>andset::Slice<T>offer a linear view of mapsand sets, behaving a lot like normal
[(K, V)]and[T]slices. Notably,comparison traits like
Eqonly consider items in order, rather than hashlookups, and slices even implement
Hash.IndexMapandIndexSetnow havesort_by_cached_keyandpar_sort_by_cached_keymethods which perform stable sorts in placeusing a key extraction function.
IndexMapandIndexSetnow havereserve_exact,try_reserve, andtry_reserve_exactmethods that correspond to the same methods onVec.However, exactness only applies to the direct capacity for items, while the
raw hash table still follows its own rules for capacity and load factor.
The
Equivalenttrait is now re-exported from theequivalentcrate,intended as a common base to allow types to work with multiple map types.
The
hashbrowndependency has been updated to version 0.14.The
serde_seqmodule has been moved from the crate root to below themapmodule.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.