path: root/doc/todo/cabal_new-build_cruft.mdwn
diff options
authorJoey Hess2020-06-18 14:56:51 -0400
committerJoey Hess2020-06-18 14:56:51 -0400
commit5b08116d1baf330ba5d50e7431f432fa10d02d4f (patch)
tree5536bf331b6e94327b3eb9d006be2ce9a90dfaf5 /doc/todo/cabal_new-build_cruft.mdwn
parent9ce4f7d892a8978d65530e1db0d93ea218c046d3 (diff)
Diffstat (limited to 'doc/todo/cabal_new-build_cruft.mdwn')
1 files changed, 17 insertions, 0 deletions
diff --git a/doc/todo/cabal_new-build_cruft.mdwn b/doc/todo/cabal_new-build_cruft.mdwn
new file mode 100644
index 00000000..586e9fde
--- /dev/null
+++ b/doc/todo/cabal_new-build_cruft.mdwn
@@ -0,0 +1,17 @@
+cabal new-build (now the default with recent cabal versions) stores stuff
+in dist-newstyle, versioned by the ghc version and the package version.
+So, as propellor builds itself on a host over and over again,
+and the host is upgraded and propellor is upgraded, dist-newstyle will
+accumulate cruft used by old builds.
+cabal clean can remove it of course, but then it won't update the build
+What would be good is, a way to detect that the versioning has changed,
+and only then run cabal clean. One way to do that, would be when updating
+the propellor symlink to the cabal built binary, compare the old and new
+binary location. If they're not the same, the versioning has changed,
+and so cabal clean and re-build. --[[Joey]]
+(Note that stack probably has the same problem too.)