I fixed it. Version 3.0.6 was just uploaded to hackage and is appropriately Trustworthy where needed.<br><br>Please let me know if I missed flagged anything you need flagged, or mis-flagged anything you think shouldn&#39;t be. ;)<br>
<br><div class="gmail_quote">On Mon, Oct 29, 2012 at 5:42 PM, Michael Sloan <span dir="ltr">&lt;<a href="mailto:mgsloan@gmail.com" target="_blank">mgsloan@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It happened somewhere between 2.6 and 2.7:<br>
<br>
<a href="http://hackage.haskell.org/packages/archive/lens/2.6.1/doc/html/Control-Lens-Internal.html" target="_blank">http://hackage.haskell.org/packages/archive/lens/2.6.1/doc/html/Control-Lens-Internal.html</a><br>
<a href="http://hackage.haskell.org/packages/archive/lens/2.7.0.1/doc/html/Control-Lens-Internal.html" target="_blank">http://hackage.haskell.org/packages/archive/lens/2.7.0.1/doc/html/Control-Lens-Internal.html</a><br>
<br>
The strange thing is that the only internal dependency of 2.7.0.1,<br>
Control.Lens.Isomorphic, is still &quot;Safe-Infered&quot; (this spelling error<br>
should probably be fixed)<br>
<br>
<a href="http://hackage.haskell.org/packages/archive/lens/2.7.0.1/doc/html/Control-Lens-Isomorphic.html" target="_blank">http://hackage.haskell.org/packages/archive/lens/2.7.0.1/doc/html/Control-Lens-Isomorphic.html</a><br>

<br>
It&#39;d be pretty fancy if Safe Haskell could give reasons for &quot;None&quot; /<br>
tell what would have made it unsafe in the event of &quot;Trustworthy&quot;.<br>
Particularly fancy if integrated into the haddocks.<br>
<br>
-mgsloan<br>
<div class="HOEnZb"><div class="h5"><br>
On Mon, Oct 29, 2012 at 2:33 PM, Edward Kmett &lt;<a href="mailto:ekmett@gmail.com">ekmett@gmail.com</a>&gt; wrote:<br>
&gt; Actually Control.Lens.Getter doesn&#39;t use TH. The issue is more that it<br>
&gt; depends on some modules I didn&#39;t flag as Trustworthy and which require some<br>
&gt; more high-falutin type system extensions that GHC isn&#39;t happy about treating<br>
&gt; as Safe. I&#39;ll try adding a few Trustworthy flags.<br>
&gt;<br>
&gt; It previously was treated as Trustworthy or SafeInfered throughout.<br>
&gt;<br>
&gt; Somewhere along the way I must have toggled on an extension and broken that<br>
&gt; property.<br>
&gt;<br>
&gt; -Edward<br>
&gt;<br>
&gt;<br>
&gt; On Mon, Oct 29, 2012 at 1:14 PM, Petr P &lt;<a href="mailto:petr.mvd@gmail.com">petr.mvd@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt;   Hi<br>
&gt;&gt;<br>
&gt;&gt; I believe the reason is that it uses TemplateHaskell for automatic<br>
&gt;&gt; derivation of labels. And TemplateHaskell is of course unsafe, since<br>
&gt;&gt; it could convert your code into something entirely different.<br>
&gt;&gt;<br>
&gt;&gt;   Best regards,<br>
&gt;&gt;   Petr Pudlak<br>
&gt;&gt;<br>
&gt;&gt; 2012/10/29 Greg Fitzgerald &lt;<a href="mailto:garious@gmail.com">garious@gmail.com</a>&gt;:<br>
&gt;&gt; &gt; Why are getters from the &#39;lens&#39; package unsafe?  Is there a subset<br>
&gt;&gt; &gt; like Data.Label.Pure from &#39;fclabels&#39; that can be imported safely?<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; $ cat a.hs<br>
&gt;&gt; &gt; {-# LANGUAGE Safe #-}<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; import Control.Lens.Getter<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; main = print 123<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; $ runghc a.hs<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; a.hs:3:1:<br>
&gt;&gt; &gt;     Control.Lens.Getter: Can&#39;t be safely imported!<br>
&gt;&gt; &gt;     The module itself isn&#39;t safe.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Thanks,<br>
&gt;&gt; &gt; Greg<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt; Haskell-Cafe mailing list<br>
&gt;&gt; &gt; <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
&gt;&gt; &gt; <a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Haskell-Cafe mailing list<br>
&gt;&gt; <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
&gt;&gt; <a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Haskell-Cafe mailing list<br>
&gt; <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
&gt; <a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
&gt;<br>
</div></div></blockquote></div><br>