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 is a first pass at testing the implementation of fold_pparams, as described in #180
In particular, it only checks that the resulting fold results in the correct major protocol version, until we add serialization/deserialization to the MultiEraProtocolParams object (which is what I'll work on next). After we have that serialization, I'll drop the different
protocol-parameters.json
files intosrc/ledger/pparams/test_data/mainnet/expected_params
and update the tests.This tries to integrate / document the information / reality of how protocol versions have historically been treated; in particular, there is a
protocol version
that is used to negotiate in the networking stack, and there's aprotocol version
(maybe better called aledger version
) that is used to determine the semantics of the ledger, and they used to not agree.I'm still not sure my comments are correct, or that I have a perfect grasp on this, but I plan to sync with @JaredCorduan on this when he has some spare cycles.
Some other things that might be useful to do: