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 allows us to compile
chainweb-api
with the latest GHC versions while maintaining the build with the old package set, which is still needed by obelisk projects, like block-explorer.In order to maintain the build with the old dependency tree alongside the latest packages from hackage, we had to tiptoe around the following breaking changes:
aeson
doesn't represent itsObject
s asHashMap
s anymore, so this PR rewrites JSON parsing code to not depend on that representation.aeson
now hides theText
representation of its objectKey
s, so we're now going fromText
toString
and then coming back withfromString
, which lets the result work with both representations.base16-bytestring
changed the type of itsdecode
function fromdecode :: ByteString -> (ByteString, ByteString)
toByteString -> Either String ByteString
, which we had to work around by resorting toCPP
.