fix: IndexMap::
{remove
→shift_remove
}
#846
Merged
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.
内容
indexmapを新しいバージョンに上げると以下の警告が出るため、その対応です。
(このPRではindexmapのバージョンはそのままにして、アップデートはRenovateに任せます)
現在使っているindexmap v2.0.0の時点で
remove
とswap_remove
とshift_remove
の三つは存在しており、remove
はswap_remove
のエイリアスです。v2.1.0からremove
が#[deprecated]
になって上記の警告が出るようになったようです。swap_remove
とshift_remove
の違いは何なのかと言うと、[a, b, c, d, e]
のようなキーの並びからswap_remove
でb
を抜き取ると[a, e, c, d]
のような並びになります。shift_remove
はPythonのdict.__delitem__
のような一般的な挙動です。UserDict::remove_word
とかのパブリックAPIの挙動にも関わってくるため、一般的な挙動の方がよいかと思いswap_remove
ではなくshift_remove
の方にしました。これが本PRのcommit prefixを"improve:"にしている理由です。("fix:"にしようか迷ったのですが、
ドキュメント上で順序の保証はしてなかったかなと思ったので"improve:"にしてしまいました)[追記] いや書いてた!!ということで、"fix:"にしました。
関連 Issue
#841
その他