digitallyinduced/ihp

`Could not deduce (IsString string0)` when using logger (from v0.10.0 onwards)

Aperta

#927 aperta il 20 giu 2021

 (3 commenti) (0 reazioni) (0 assegnatari)Haskell (221 fork)batch import
enhancementgood first issue

Metriche repository

Star
 (5285 stelle)
Metriche merge PR
 (Merge medio 11h 20m) (21 PR mergiate in 30 g)

Descrizione

Upon upgrading from 0.9.0 to 0.10.0 I get an error on this:

Log.debug "Some log message"

The error:

    • Could not deduce (IsString string0)
        arising from the literal '"Some log message"'
...
      The type variable 'string0' is ambiguous
      These potential instances exist:
        instance IsString Value
          -- Defined in 'aeson-1.5.4.1:Data.Aeson.Types.Internal'
        instance IsString ByteString
          -- Defined in 'Data.ByteString.Internal'
        instance (a ~ Char) => IsString (Seq a)
          -- Defined in 'Data.Sequence.Internal'
        ...plus four others
        ...plus 37 instances involving out-of-scope types
        (use -fprint-potential-instances to see them all)

Doing this works:

Log.debug ("Some log message" :: Text)

But that's a bit annoying to do everywhere. Anything smart I can do with my imports or something to avoid having to do that? Or must I be doing something weird to get this error in the first place?

Ref https://ihpframework.slack.com/archives/C01DQE0F4F8/p1624128600130600

Guida contributor