It happened somewhere between 2.6 and 2.7: http://hackage.haskell.org/packages/archive/lens/2.6.1/doc/html/Control-Lens-Internal.html http://hackage.haskell.org/packages/archive/lens/2.7.0.1/doc/html/Control-Lens-Internal.html
The strange thing is that the only internal dependency of 2.7.0.1, Control.Lens.Isomorphic, is still "Safe-Infered" (this spelling error should probably be fixed) http://hackage.haskell.org/packages/archive/lens/2.7.0.1/doc/html/Control-Lens-Isomorphic.html It'd be pretty fancy if Safe Haskell could give reasons for "None" / tell what would have made it unsafe in the event of "Trustworthy". Particularly fancy if integrated into the haddocks. -mgsloan On Mon, Oct 29, 2012 at 2:33 PM, Edward Kmett <ekm...@gmail.com> wrote: > Actually Control.Lens.Getter doesn't use TH. The issue is more that it > depends on some modules I didn't flag as Trustworthy and which require some > more high-falutin type system extensions that GHC isn't happy about treating > as Safe. I'll try adding a few Trustworthy flags. > > It previously was treated as Trustworthy or SafeInfered throughout. > > Somewhere along the way I must have toggled on an extension and broken that > property. > > -Edward > > > On Mon, Oct 29, 2012 at 1:14 PM, Petr P <petr....@gmail.com> wrote: >> >> Hi >> >> I believe the reason is that it uses TemplateHaskell for automatic >> derivation of labels. And TemplateHaskell is of course unsafe, since >> it could convert your code into something entirely different. >> >> Best regards, >> Petr Pudlak >> >> 2012/10/29 Greg Fitzgerald <gari...@gmail.com>: >> > Why are getters from the 'lens' package unsafe? Is there a subset >> > like Data.Label.Pure from 'fclabels' that can be imported safely? >> > >> > >> > $ cat a.hs >> > {-# LANGUAGE Safe #-} >> > >> > import Control.Lens.Getter >> > >> > main = print 123 >> > >> > $ runghc a.hs >> > >> > a.hs:3:1: >> > Control.Lens.Getter: Can't be safely imported! >> > The module itself isn't safe. >> > >> > >> > Thanks, >> > Greg >> > >> > _______________________________________________ >> > Haskell-Cafe mailing list >> > Haskell-Cafe@haskell.org >> > http://www.haskell.org/mailman/listinfo/haskell-cafe >> >> _______________________________________________ >> Haskell-Cafe mailing list >> Haskell-Cafe@haskell.org >> http://www.haskell.org/mailman/listinfo/haskell-cafe > > > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe > _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe