[Libs] Re-introduce immer header-only library as a git subtree #2753
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.
Reintroduce the header-only immer library as a git subtree and bump the version to the latest v0.7.0 (commit 9cb6a5a845df766a4cb3526d8a4584bf99bac8d5).
Since we only really want the header sources, this subtree is a bit different than our other subtrees. I've used
git subtree splitto extract out only the relevantimmerpath from the source repo, and then added that split out path as a git subtree. this method is documented at https://jrsmith3.github.io/merging-a-subdirectory-from-another-repo-via-git-subtree.htmlThis ultimately allows us to lint that the
src/immerpath remains unchanged by manual commits, like any other 3rd party subtree library that we use (chiabls, crc32c, leveldb, secp256k1, univalue).I bumped the version of immer used so as to include a fix proposed by @codablock (arximboldi/immer#80), which was later merged upstream. this particular PR does not affect PIVX whatsoever, as we no longer ship 32-bit windows binaries, but v0.7.0 was officially released on Nov 8, 2021.
Note to reviewers: best to view this with whitespace-only changes ignored.