Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cardano-prelude does not build with protolude-0.3.1 or 0.3.2 #282

Open
coot opened this issue Jun 24, 2022 · 0 comments
Open

cardano-prelude does not build with protolude-0.3.1 or 0.3.2 #282

coot opened this issue Jun 24, 2022 · 0 comments

Comments

@coot
Copy link
Contributor

coot commented Jun 24, 2022

protolude >= 0.3.1 has a more polymorphic

readEither :: (Read a, StringConv String e, StringConv e String) => e -> Either e a

which leads to various errors:

src/Cardano/Prelude/Json/Canonical.hs:110:14: error:
    • Could not deduce (Buildable e2)
        arising from a use of ‘parseJSString’
      from the context: ReportSchemaErrors m
        bound by the instance declaration
        at src/Cardano/Prelude/Json/Canonical.hs:109:10-50
      The type variable ‘e2’ is ambiguous
      These potential instances exist:
        instance Buildable Void -- Defined in ‘Formatting.Buildable’
        instance Buildable IntPtr -- Defined in ‘Formatting.Buildable’
        instance Buildable WordPtr -- Defined in ‘Formatting.Buildable’
        ...plus 24 others
        ...plus 12 instances involving out-of-scope types
        (use -fprint-potential-instances to see them all)
    • In the expression: parseJSString (readEither . toS)
      In an equation for ‘fromJSON’:
          fromJSON = parseJSString (readEither . toS)
      In the instance declaration for ‘FromJSON m Word64’
    |
110 |   fromJSON = parseJSString (readEither . toS)
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant