Shorten script-builds paths (#8898)
* Use shorter hash for script-builds directories Using a Base64 hash and truncating it to 26 characters, saves 38 chars, which helps avoid long paths issues on Windows, while still providing 130 bits of hash in order to avoid collisions. Bug #8841 * Use the script cache dir as the dist dir Putting script build products under dist-newstyle within the cache directory is unnecessary because we already control the cache directory and can ensure there are no conflicts. * Use the actual script name in the executable name Previously, the script name was sanitized in final executable name, because the executable name had to match the component name, which only allowed for a limited character set. Now we can use the actual script name in the executable name. This only lets us shorten the component name without losing clarity. * Add changelog entry * Reenable script tests for Windows/ghc-9.4.*
Showing
- Cabal/src/Distribution/PackageDescription/Check.hs 5 additions, 1 deletionCabal/src/Distribution/PackageDescription/Check.hs
- cabal-install/cabal-install.cabal 1 addition, 0 deletionscabal-install/cabal-install.cabal
- cabal-install/src/Distribution/Client/CmdListBin.hs 6 additions, 2 deletionscabal-install/src/Distribution/Client/CmdListBin.hs
- cabal-install/src/Distribution/Client/CmdRun.hs 36 additions, 33 deletionscabal-install/src/Distribution/Client/CmdRun.hs
- cabal-install/src/Distribution/Client/HashValue.hs 5 additions, 0 deletionscabal-install/src/Distribution/Client/HashValue.hs
- cabal-install/src/Distribution/Client/ProjectConfig.hs 10 additions, 0 deletionscabal-install/src/Distribution/Client/ProjectConfig.hs
- cabal-install/src/Distribution/Client/ScriptUtils.hs 91 additions, 28 deletionscabal-install/src/Distribution/Client/ScriptUtils.hs
- cabal-testsuite/PackageTests/ListBin/Script/cabal.out 2 additions, 2 deletionscabal-testsuite/PackageTests/ListBin/Script/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdBuild/Script/cabal.out 3 additions, 3 deletions...testsuite/PackageTests/NewBuild/CmdBuild/Script/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdBuild/ScriptBuildRepl/cabal.out 4 additions, 4 deletions.../PackageTests/NewBuild/CmdBuild/ScriptBuildRepl/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdBuild/ScriptBuildRepl/cabal.test.hs 0 additions, 3 deletions...kageTests/NewBuild/CmdBuild/ScriptBuildRepl/cabal.test.hs
- cabal-testsuite/PackageTests/NewBuild/CmdBuild/ScriptBuildRun/cabal.out 4 additions, 4 deletions...e/PackageTests/NewBuild/CmdBuild/ScriptBuildRun/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdBuild/ScriptBuildRun/cabal.test.hs 0 additions, 3 deletions...ckageTests/NewBuild/CmdBuild/ScriptBuildRun/cabal.test.hs
- cabal-testsuite/PackageTests/NewBuild/CmdBuild/ScriptRerun/cabal.out 3 additions, 3 deletions...uite/PackageTests/NewBuild/CmdBuild/ScriptRerun/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdClean/Keep/cabal.out 6 additions, 6 deletions...l-testsuite/PackageTests/NewBuild/CmdClean/Keep/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdClean/Orphan/cabal.out 6 additions, 6 deletions...testsuite/PackageTests/NewBuild/CmdClean/Orphan/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdClean/Script/cabal.out 3 additions, 3 deletions...testsuite/PackageTests/NewBuild/CmdClean/Script/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdRepl/Script/cabal.out 2 additions, 2 deletions...-testsuite/PackageTests/NewBuild/CmdRepl/Script/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdRepl/ScriptRerun/cabal.out 3 additions, 3 deletions...suite/PackageTests/NewBuild/CmdRepl/ScriptRerun/cabal.out
- cabal-testsuite/PackageTests/NewBuild/CmdRun/Script/cabal.out 3 additions, 3 deletions...l-testsuite/PackageTests/NewBuild/CmdRun/Script/cabal.out
Loading