autoexporter 2.0.0.11 → 2.0.0.12
raw patch · 5 files changed
+73/−73 lines, 5 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- CHANGELOG.markdown +0/−4
- CHANGELOG.md +4/−0
- README.markdown +0/−65
- README.md +65/−0
- autoexporter.cabal +4/−4
− CHANGELOG.markdown
@@ -1,4 +0,0 @@-# Change log--Autoexporter follows the [Package Versioning Policy](https://pvp.haskell.org).-You can find release notes [on GitHub](https://github.com/tfausak/autoexporter/releases).
+ CHANGELOG.md view
@@ -0,0 +1,4 @@+# Change log++Autoexporter follows the [Package Versioning Policy](https://pvp.haskell.org).+You can find release notes [on GitHub](https://github.com/tfausak/autoexporter/releases).
− README.markdown
@@ -1,65 +0,0 @@-# Autoexporter--[](https://github.com/tfausak/autoexporter/actions/workflows/ci.yml)-[](https://hackage.haskell.org/package/autoexporter)--Autoexporter automatically re-exports Haskell modules.--Let's say you have a module `M` that just exports some other modules. It might-look like this:--``` haskell-module M- ( module M.A- , module M.B- ) where--import M.A-import M.B-```--This code is error-prone. If you add a new module, say `M.C`, you have to-remember to come back to this file and re-export it. And this code is tedious-to write. You have to list each module twice. You can do a little better, but-not much.--``` haskell-module M (module X) where-import M.A as X-import M.B as X-```--Now you don't have to write every module twice, but you still have to remember-to re-export everything. And the generated documentation for this module-doesn't include anything about the exported modules.--Autoexporter handles this for you. Instead of either of the above approaches,-simply drop this into the `M` module:--``` haskell-{-# OPTIONS_GHC -F -pgmF autoexporter #-}-```--That will generate code that looks like this:--``` haskell-module M (- module M.A,- module M.B,-) where-import M.A-import M.B-```--Autoexporter will generally behave as you'd expect, but there are a couple-things to look out for:--- You cannot selectively include or exclude any modules.--- By default, only immediate children will be re-exported. If you use this in- some module `M`, it won't pull in `M.A.B`. If you need deep re-exporting,- please pass `--deep` to Autoexporter like this:-- ```haskell- {-# OPTIONS_GHC -F -pgmF autoexporter -optF --deep #-}- ```
+ README.md view
@@ -0,0 +1,65 @@+# Autoexporter++[](https://github.com/tfausak/autoexporter/actions/workflows/ci.yml)+[](https://hackage.haskell.org/package/autoexporter)++Autoexporter automatically re-exports Haskell modules.++Let's say you have a module `M` that just exports some other modules. It might+look like this:++``` haskell+module M+ ( module M.A+ , module M.B+ ) where++import M.A+import M.B+```++This code is error-prone. If you add a new module, say `M.C`, you have to+remember to come back to this file and re-export it. And this code is tedious+to write. You have to list each module twice. You can do a little better, but+not much.++``` haskell+module M (module X) where+import M.A as X+import M.B as X+```++Now you don't have to write every module twice, but you still have to remember+to re-export everything. And the generated documentation for this module+doesn't include anything about the exported modules.++Autoexporter handles this for you. Instead of either of the above approaches,+simply drop this into the `M` module:++``` haskell+{-# OPTIONS_GHC -F -pgmF autoexporter #-}+```++That will generate code that looks like this:++``` haskell+module M (+ module M.A,+ module M.B,+) where+import M.A+import M.B+```++Autoexporter will generally behave as you'd expect, but there are a couple+things to look out for:++- You cannot selectively include or exclude any modules.++- By default, only immediate children will be re-exported. If you use this in+ some module `M`, it won't pull in `M.A.B`. If you need deep re-exporting,+ please pass `--deep` to Autoexporter like this:++ ```haskell+ {-# OPTIONS_GHC -F -pgmF autoexporter -optF --deep #-}+ ```
autoexporter.cabal view
@@ -1,13 +1,13 @@ cabal-version: 2.2 name: autoexporter-version: 2.0.0.11+version: 2.0.0.12 synopsis: Automatically re-export modules. description: Autoexporter automatically re-exports modules. build-type: Simple category: Utility-extra-source-files:- CHANGELOG.markdown- README.markdown+extra-doc-files:+ CHANGELOG.md+ README.md license-file: LICENSE.txt license: MIT