digitallyinduced/ihp

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

オープン

#927 opened on 2021/06/20

 (3 件のコメント) (0 件のリアクション) (0 人の担当者)Haskell (221 件のフォーク)batch import
enhancementgood first issue

Repository metrics

Stars
 (5,285 個のスター)
PR merge metrics
 (平均マージ 11h 20m) (30d で 21 merged PRs)

説明

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

コントリビューターガイド