diff --git a/.gitignore b/.gitignore index 6b8a867..34d35e3 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,21 @@ /project-template-0.2.1.0.tar.gz /rio-orphans-0.1.2.0.tar.gz /static-bytes-0.1.0.tar.gz +/stack-3.1.1.tar.gz +/hi-file-parser-0.1.7.0.tar.gz +/hpack-0.37.0.tar.gz +/open-browser-0.2.1.1.tar.gz +/pantry-0.10.0.tar.gz +/stack-3.7.1.tar.gz +/mustache-2.4.3.1.tar.gz +/pantry-0.10.1.tar.gz +/static-bytes-0.1.1.tar.gz +/open-browser-0.3.0.1.tar.gz +/stack-3.9.1.tar.gz +/casa-client-0.0.3.tar.gz +/casa-types-0.0.3.tar.gz +/filelock-0.1.1.8.tar.gz +/hi-file-parser-0.1.8.0.tar.gz +/hpack-0.38.3.tar.gz +/open-browser-0.4.0.0.tar.gz +/pantry-0.11.2.tar.gz diff --git a/sources b/sources index e0cf060..d14734b 100644 --- a/sources +++ b/sources @@ -1,18 +1,16 @@ -SHA512 (stack-2.15.7.tar.gz) = 0a0e2fca52b17e3fbc5091da9fc7dd639a50c37519ae8ea27954536381d63bda4e1f20ca047e061dc898cac35a0551c996ced6f8d87184fe8e5be03e03d3cb82 +SHA512 (stack-3.9.1.tar.gz) = 28835770b0b75ea608bcc9d5e7041b61a5f6a6dc0fcacbb02bc391437e44f5e06213a2dc312ba9f1b204d561c56b227f5eef71251a8f352ad8b2f48be8b5b1a2 SHA512 (aeson-warning-parser-0.1.1.tar.gz) = 86c10f3e1681ec8892ba396b9077f72b1975f23373db6f56a038ecc67cb48e8d7ba33c2396031d1b31fc9da3ead2e8c00ce27c2e3a02f8b52f53f5e3ed61610d -SHA512 (casa-client-0.0.2.tar.gz) = 885ede1522142cf7b7c4ad2c49506974b349256e3537a3e6d05c45d1ef64f8144538a7bae90ae97fa3d5af4b2f24c5a1bd52dba847c677a0cec486992e5d654a -SHA512 (casa-types-0.0.2.tar.gz) = a54bb7f15310878e0a4c0524749ba8c8de8537a60892d278941cacefb80ad9d31e9ba16dd236c196b6639758f281f9ae66911d04c39b0ec6e2b75db5127ad5bf +SHA512 (casa-client-0.0.3.tar.gz) = 39984b8c85f99d095011ba0bcf751e44eb3d8535a288c25ff5159f63d0ba137625d452409f30641b94c5018d02f8e64dcdc7eb413aaf4910c145addd8c1f2a8a +SHA512 (casa-types-0.0.3.tar.gz) = 4aab5db507a4f9ad12e0b7ce34e6e384dd1a6d7878fb2a72c42bd072f7e44d321e560294777e32686a6d076ebcc08d1c709437ac6654b1491bbd8ab6aab533e8 SHA512 (companion-0.1.0.tar.gz) = 5220f0784d15e8763ac5eca34bf27c7b820a98daa7b14e6abefaf2735d0ba367ac8209b5a27d016ab1ce536973389d28a39fab9987c1827b8e849192b86e1cba SHA512 (crypton-conduit-0.2.3.tar.gz) = 2776ef49609c11a8379e4b9f7e9dcb40f4ad5c33924de6cfd9c9952106321b8959d2dbe4537905e1d55dfe577593d75d7c1f1ff47d26497dccfbba667fdf2257 -SHA512 (filelock-0.1.1.7.tar.gz) = ca82dc7efde8a36dc4c7df63609159349d145e7de1fed6b9dcdc8c16b64cdddb3d13b838c39f363eb89ee82871cb2904e76cb833c5798319ed514815aac88e98 -SHA512 (hi-file-parser-0.1.6.0.tar.gz) = 49a29ce589440aa0554d8c1b26a2e97c2d55aff5e4a0fc63f102d8be4003572b5716f5819e64ddeb7c523e52d14b594208ca8179a959b5d1fe86435e6f7ca502 -SHA512 (hpack-0.36.1.tar.gz) = ee92ebc0cb6e37d228f4a4ffb2b2c1551fe160b8a5db065e8f61902cfe2f8c79ca8c443048d1ab60fc33c40e74015c14404666bca4e99b3d984d0d46b210c5e5 +SHA512 (filelock-0.1.1.8.tar.gz) = 4e29de352fa598248f73282fb3e49e5f380d50ae58ac6a0fbaacffc3747e8caaafd624c0d3dddc4b20e22d0744e90941b5774af6db0685fa19ebaa85df8a9a26 +SHA512 (hi-file-parser-0.1.8.0.tar.gz) = afc393450124ddd45b41459d8a694fa7a290503899f174886a63c78fb339cbce1de289f0ce3fd2b40914269c8b0860444831c7bbf1cf009844bf9dbefcd93289 +SHA512 (hpack-0.38.3.tar.gz) = 253024c9516474a8b5485452696799e0808754dd85892c885f0d9534b47132e325d70fdc7095a285cd1c71bb17dcba520ae7916d597833624e524e93ce9efef1 SHA512 (http-download-0.2.1.0.tar.gz) = 75a208684bf4f116746a1015870a6bb2afbdd1a4b4c268b88f142b189e0e31c59b8d691606c3eb33be9b1637a0131c4d7cb48091179f22bba8d6d2919ce30e02 -SHA512 (mintty-0.1.4.tar.gz) = f5c3231f342d24d7dc38b0281579aa6f272767451412ea84e1c248f77331d6740186cef0bb4144b7655a80914daa0b1f3573107a76c29c1d2e6a56e793532733 -SHA512 (mustache-2.4.2.tar.gz) = 96e10988f8ccf15cd5939e16cd8d5f551853168a3719cd4717b3bb40c3227f540f4d955614e1d38385fb30f9a97351f260f79cfbc872da30eadb73bac1ebc315 +SHA512 (mustache-2.4.3.1.tar.gz) = 57aec94227992565d37bd3c0a2fe1e9cab50d79958a2b803de9d7bd847d77be3cc58bf48920b72da64821cdd929fdc574bc7d40b0144cdd873163f67af41dd74 SHA512 (neat-interpolation-0.5.1.4.tar.gz) = 16f62bee23984fabebd70e70311b24bc2e7835ba90cf84bb7bb6f4d84c097bf817e3f5d653c843117b63ed886b0e16511219a688e17bdcf62c16f659074d690f -SHA512 (open-browser-0.2.1.0.tar.gz) = 94ba71597c270b518742534b1b9b9a7ca0ede2eeb08a030b03cca6dbe6e5a2de363dc443bae907ca5c90b126aeb7dc5f5dd1eada95ca78a0ba1a8d472df4ada1 -SHA512 (pantry-0.9.3.2.tar.gz) = 6c109bc2dd08813103c072f288b5b67d577915a3401057f9c5aaae008306a1484c4ef72c4af818c67a1062793a6ae81bcc24c8d1d6f61d4de78625395bfb7b88 +SHA512 (pantry-0.11.2.tar.gz) = c2c232686a24ae09d43504c71e729d8250a5c81936258c34276886aaa14820b54576e71592a1f814c7b17fe3c572e37e7c3cd36b03ae225f1f95e1f6d8654f5d SHA512 (project-template-0.2.1.0.tar.gz) = ed70f640e5197f7a6158b851dcd3990e77b7266f716be248ecfb012c4827dc688028aa78d649313203a274357f57e45e94371a09446c4404d3282add0d1a158c SHA512 (rio-orphans-0.1.2.0.tar.gz) = 85e883977e161161e5ba8f4fa6d13026d71f7367bac262307f9a8cfdc0316b71a490fcb6c15737919a6b4e73b3355b413161e09f5167c95b1f0c5a22c045f7ac -SHA512 (static-bytes-0.1.0.tar.gz) = 6bccb86796f1afdc28dfa8b1b4c86503fe500dd3088488213fbc68ab2d0e2c358295b56acac024ecf62ed27a33036560716d253deaaaef21983cf1d7352c8deb +SHA512 (static-bytes-0.1.1.tar.gz) = 5994a9a345592d16f04812bfeb77512b8e0769b1601d4fc2b035a4dab6f040eb513dd0e8ab88e2cfc77c47f0a461b7e399a281362f32fd0e713cbe2aff323bf3 diff --git a/stack-3.9.1-Cabal-3.12.patch b/stack-3.9.1-Cabal-3.12.patch new file mode 100644 index 0000000..45af583 --- /dev/null +++ b/stack-3.9.1-Cabal-3.12.patch @@ -0,0 +1,235 @@ +diff -up stack-3.9.1/Setup.hs~ stack-3.9.1/Setup.hs +--- stack-3.9.1/Setup.hs~ 2026-01-04 21:04:25.000000000 +0800 ++++ stack-3.9.1/Setup.hs 2026-01-29 11:46:47.843707367 +0800 +@@ -25,7 +25,6 @@ import Distribution.Simple.Uti + import Distribution.Types.PackageName ( unPackageName ) + import Distribution.Types.UnqualComponentName + ( unUnqualComponentName ) +-import Distribution.Utils.Path ( interpretSymbolicPathCWD ) + import Distribution.Verbosity ( Verbosity, normal ) + import System.FilePath ( () ) + +@@ -48,7 +47,7 @@ generateBuildModule :: + -> LocalBuildInfo + -> IO () + generateBuildModule verbosity pkg lbi = do +- let dir = interpretSymbolicPathCWD (autogenPackageModulesDir lbi) ++ let dir = autogenPackageModulesDir lbi + createDirectoryIfMissingVerbose verbosity True dir + withLibLBI pkg lbi $ \_ libcfg -> do + withExeLBI pkg lbi $ \exe clbi -> do +diff -up stack-3.9.1/src/Stack/Component.hs~ stack-3.9.1/src/Stack/Component.hs +--- stack-3.9.1/src/Stack/Component.hs~ 2026-01-04 21:04:25.000000000 +0800 ++++ stack-3.9.1/src/Stack/Component.hs 2026-01-29 11:49:55.925105607 +0800 +@@ -35,7 +35,6 @@ import Distribution.PackageDes + import Distribution.Types.BuildInfo ( BuildInfo ) + import Distribution.Package ( mkPackageName ) + import qualified Distribution.PackageDescription as Cabal +-import Distribution.Utils.Path (interpretSymbolicPathCWD) + import GHC.Records ( HasField ) + import Stack.Prelude + import Stack.Types.Component +@@ -74,7 +73,7 @@ stackExecutableFromCabal :: Executable - + stackExecutableFromCabal cabalExecutable = StackExecutable + { name = fromCabalName cabalExecutable.exeName + , buildInfo = stackBuildInfoFromCabal cabalExecutable.buildInfo +- , modulePath = interpretSymbolicPathCWD cabalExecutable.modulePath ++ , modulePath = cabalExecutable.modulePath + } + + stackForeignLibraryFromCabal :: ForeignLib -> StackForeignLibrary +@@ -108,9 +107,9 @@ stackBuildInfoFromCabal buildInfoV = gat + StackBuildInfo + { buildable = buildInfoV.buildable + , otherModules = buildInfoV.otherModules +- , jsSources = map interpretSymbolicPathCWD buildInfoV.jsSources ++ , jsSources = buildInfoV.jsSources + , hsSourceDirs = buildInfoV.hsSourceDirs +- , cSources = map interpretSymbolicPathCWD buildInfoV.cSources ++ , cSources = buildInfoV.cSources + , dependency = mempty + , unknownTools = mempty + , cppOptions = buildInfoV.cppOptions +@@ -118,10 +117,10 @@ stackBuildInfoFromCabal buildInfoV = gat + , options = buildInfoV.options + , allLanguages = Cabal.allLanguages buildInfoV + , usedExtensions = Cabal.usedExtensions buildInfoV +- , includeDirs = map interpretSymbolicPathCWD buildInfoV.includeDirs ++ , includeDirs = buildInfoV.includeDirs + , extraLibs = buildInfoV.extraLibs +- , extraLibDirs = map interpretSymbolicPathCWD buildInfoV.extraLibDirs +- , frameworks = map interpretSymbolicPathCWD buildInfoV.frameworks ++ , extraLibDirs = buildInfoV.extraLibDirs ++ , frameworks = buildInfoV.frameworks + } + + -- | Iterate on all three dependency list given, and transform and sort them +diff -up stack-3.9.1/stack.cabal~ stack-3.9.1/stack.cabal +--- stack-3.9.1/stack.cabal~ 2026-01-29 11:46:18.109159489 +0800 ++++ stack-3.9.1/stack.cabal 2026-01-29 11:48:04.888449534 +0800 +@@ -159,7 +159,7 @@ source-repository head + + custom-setup + setup-depends: +- Cabal >=3.14 && <3.18, ++ Cabal >=3.12 && <3.18, + base >=4.14.3.0 && <5, + filepath >=1.5.4.0 + +@@ -434,7 +434,7 @@ library + -optP-Wno-nonportable-include-path -Widentities + + build-depends: +- Cabal >=3.14 && <3.17, ++ Cabal >=3.12 && <3.17, + aeson >=2.0.3.0, + aeson-warning-parser >=0.1.1, + ansi-terminal >=1.0.2, +@@ -562,7 +562,7 @@ executable stack + -optP-Wno-nonportable-include-path -threaded -rtsopts + + build-depends: +- Cabal >=3.14 && <3.17, ++ Cabal >=3.12 && <3.17, + aeson >=2.0.3.0, + aeson-warning-parser >=0.1.1, + ansi-terminal >=1.0.2, +@@ -671,7 +671,7 @@ executable stack-integration-test + -with-rtsopts=-N + + build-depends: +- Cabal >=3.14 && <3.17, ++ Cabal >=3.12 && <3.17, + aeson >=2.0.3.0, + aeson-warning-parser >=0.1.1, + ansi-terminal >=1.0.2, +@@ -796,7 +796,7 @@ test-suite stack-unit-test + -optP-Wno-nonportable-include-path -threaded + + build-depends: +- Cabal >=3.14 && <3.17, ++ Cabal >=3.12 && <3.17, + QuickCheck >=2.15.0.1, + aeson >=2.0.3.0, + aeson-warning-parser >=0.1.1, +diff -up stack-3.9.1/src/Stack/ComponentFile.hs.orig stack-3.9.1/src/Stack/ComponentFile.hs +--- stack-3.9.1/src/Stack/ComponentFile.hs.orig 2026-01-04 21:04:25.000000000 +0800 ++++ stack-3.9.1/src/Stack/ComponentFile.hs 2026-01-29 12:03:43.867253279 +0800 +@@ -36,7 +36,7 @@ import Distribution.PackageDes + ( BenchmarkInterface (..), TestSuiteInterface (..) ) + import Distribution.Text ( display ) + import Distribution.Utils.Path +- ( Pkg, Source, SymbolicPath, getSymbolicPath ) ++ ( PackageDir, SourceDir, SymbolicPath, getSymbolicPath ) + import qualified Distribution.Utils.Path as Cabal + import GHC.Records ( HasField ) + import qualified HiFileParser as Iface +@@ -92,7 +92,7 @@ stackBenchmarkFiles bench = + exposed :: [DotCabalDescriptor] + exposed = + case bench.interface of +- BenchmarkExeV10 _ fp -> [DotCabalMain $ getSymbolicPath fp] ++ BenchmarkExeV10 _ fp -> [DotCabalMain fp] + BenchmarkUnsupported _ -> [] + + bnames :: [DotCabalDescriptor] +@@ -114,7 +114,7 @@ stackTestSuiteFiles test = + exposed :: [DotCabalDescriptor] + exposed = + case test.interface of +- TestSuiteExeV10 _ fp -> [DotCabalMain $ getSymbolicPath fp] ++ TestSuiteExeV10 _ fp -> [DotCabalMain fp] + TestSuiteLibV09 _ mn -> [DotCabalModule mn] + TestSuiteUnsupported _ -> [] + +@@ -169,7 +169,7 @@ stackLibraryFiles lib = + -- | Get all files referenced by the component. + resolveComponentFiles :: + ( CAndJsSources rec +- , HasField "hsSourceDirs" rec [SymbolicPath Pkg (Cabal.Dir Source)] ++ , HasField "hsSourceDirs" rec [SymbolicPath PackageDir SourceDir] + ) + => NamedComponent + -> rec +diff -up stack-3.9.1/src/Stack/Package.hs.orig stack-3.9.1/src/Stack/Package.hs +--- stack-3.9.1/src/Stack/Package.hs.orig 2026-01-04 21:04:25.000000000 +0800 ++++ stack-3.9.1/src/Stack/Package.hs 2026-01-29 12:06:26.423686814 +0800 +@@ -60,7 +60,7 @@ import Distribution.Simple.Pac + import Distribution.System ( OS (..), Arch, Platform (..) ) + import Distribution.Text ( display ) + import qualified Distribution.Types.CondTree as Cabal +-import Distribution.Utils.Path ( makeSymbolicPath, getSymbolicPath ) ++import Distribution.Utils.Path ( getSymbolicPath ) + import Distribution.Verbosity ( silent ) + import Distribution.Version + ( anyVersion, mkVersion, orLaterVersion ) +@@ -130,8 +130,8 @@ import RIO.Seq ((|>)) + -- + -- NOTE: not to be confused with BuildInfo, an Stack-internal datatype. + readDotBuildinfo :: MonadIO m => Path Abs File -> m HookedBuildInfo +-readDotBuildinfo = +- liftIO . readHookedBuildInfo silent Nothing . makeSymbolicPath . toFilePath ++readDotBuildinfo buildinfofp = ++ liftIO $ readHookedBuildInfo silent (toFilePath buildinfofp) + + -- | Resolve a parsed Cabal file into a t'Package', which contains all of the + -- info needed for Stack to build the t'Package' given the current +diff -up stack-3.9.1/src/Stack/PackageFile.hs.orig stack-3.9.1/src/Stack/PackageFile.hs +--- stack-3.9.1/src/Stack/PackageFile.hs.orig 2026-01-04 21:04:25.000000000 +0800 ++++ stack-3.9.1/src/Stack/PackageFile.hs 2026-01-29 12:08:25.933270321 +0800 +@@ -20,7 +20,7 @@ import qualified Data.Set as S + import Distribution.CabalSpecVersion ( CabalSpecVersion ) + import qualified Distribution.PackageDescription as Cabal + import Distribution.Simple.Glob ( matchDirFileGlob ) +-import Distribution.Utils.Path ( makeSymbolicPath, getSymbolicPath ) ++import Distribution.Utils.Path ( getSymbolicPath ) + import Path ( parent, () ) + import Path.Extra ( forgivingResolveFile, rejectMissingFile ) + import Path.IO ( doesFileExist ) +@@ -122,9 +122,9 @@ resolveGlobFiles cabalFileVersion = + FilePath + -> FilePath + -> RIO GetPackageFileContext [FilePath] +- matchDirFileGlob' dir glob = map getSymbolicPath <$> do ++ matchDirFileGlob' dir glob = + catch +- (liftIO $ matchDirFileGlob minBound cabalFileVersion (Just $ makeSymbolicPath dir) (makeSymbolicPath glob)) ++ (liftIO (matchDirFileGlob minBound cabalFileVersion dir glob)) + ( \(e :: IOException) -> + if isUserError e + then do +@@ -184,9 +184,9 @@ getPackageFile pkg cabalFP = + stackPackageFileFromCabal :: Cabal.PackageDescription -> StackPackageFile + stackPackageFileFromCabal cabalPkg = + StackPackageFile +- (map getSymbolicPath $ Cabal.extraSrcFiles cabalPkg) +- (getSymbolicPath $ Cabal.dataDir cabalPkg) +- (map getSymbolicPath $ Cabal.dataFiles cabalPkg) ++ (Cabal.extraSrcFiles cabalPkg) ++ (Cabal.dataDir cabalPkg) ++ (Cabal.dataFiles cabalPkg) + + insertComponentFile :: + PackageComponentFile +diff -up stack-3.9.1/src/Stack/Types/Component.hs.orig stack-3.9.1/src/Stack/Types/Component.hs +--- stack-3.9.1/src/Stack/Types/Component.hs.orig 2026-01-04 21:04:25.000000000 +0800 ++++ stack-3.9.1/src/Stack/Types/Component.hs 2026-01-29 12:11:28.163635301 +0800 +@@ -31,8 +31,7 @@ import Distribution.ModuleName + import Distribution.PackageDescription + ( BenchmarkInterface, Dependency, TestSuiteInterface ) + import Distribution.Simple ( Extension, Language ) +-import Distribution.Utils.Path ( Pkg, Source, SymbolicPath ) +-import qualified Distribution.Utils.Path as Cabal ++import Distribution.Utils.Path ( PackageDir, SourceDir, SymbolicPath ) + import GHC.Records ( HasField (..) ) + import Stack.Prelude + import Stack.Types.ComponentUtils +@@ -134,7 +133,7 @@ data StackBuildInfo = StackBuildInfo + -- ^ Only used in file gathering. See usage in "Stack.ComponentFile" module. + , jsSources :: [FilePath] + -- ^ Only used in file gathering. See usage in "Stack.ComponentFile" module. +- , hsSourceDirs :: [SymbolicPath Pkg (Cabal.Dir Source)] ++ , hsSourceDirs :: [SymbolicPath PackageDir SourceDir] + -- ^ Only used in file & opts gathering. See usage in "Stack.ComponentFile" + -- module for fle gathering. + , cSources :: [FilePath] diff --git a/stack-Setup-Platforms.patch b/stack-Setup-Platforms.patch index b557d44..f0cd4aa 100644 --- a/stack-Setup-Platforms.patch +++ b/stack-Setup-Platforms.patch @@ -1,11 +1,11 @@ ---- stack-2.15.7/src/Stack/Setup.hs~ 2024-05-12 22:50:14.000000000 +0800 -+++ stack-2.15.7/src/Stack/Setup.hs 2024-08-02 01:11:32.252316054 +0800 -@@ -2138,6 +2138,8 @@ +--- stack-3.9.1/src/Stack/Setup.hs~ 2026-01-04 21:04:25.000000000 +0800 ++++ stack-3.9.1/src/Stack/Setup.hs 2026-01-28 02:05:33.123733069 +0800 +@@ -2183,6 +2183,8 @@ Platform Sparc Cabal.Linux -> pure "linux-sparc" Platform AArch64 Cabal.OSX -> pure "macosx-aarch64" Platform AArch64 Cabal.FreeBSD -> pure "freebsd-aarch64" + Platform PPC64 Cabal.Linux -> pure "linux-ppc64" + Platform S390X Cabal.Linux -> pure "linux-s390x" - Platform arch os -> + Platform arch os -> do + programsDir <- view $ configL . to (.localPrograms) prettyThrowM $ UnsupportedSetupCombo os arch tool toolDir programsDir - diff --git a/stack-disabled-global-warnings.patch b/stack-disabled-global-warnings.patch index fd4525d..f33700c 100644 --- a/stack-disabled-global-warnings.patch +++ b/stack-disabled-global-warnings.patch @@ -1,10 +1,10 @@ -diff -up stack-2.15.7/src/Stack/Config.hs~ stack-2.15.7/src/Stack/Config.hs ---- stack-2.15.7/src/Stack/Config.hs~ 2024-05-12 22:50:13.000000000 +0800 -+++ stack-2.15.7/src/Stack/Config.hs 2024-08-02 01:21:01.138918479 +0800 -@@ -435,9 +435,9 @@ configFromConfigMonoid +diff -up stack-3.7.1/src/Stack/Config.hs~ stack-3.7.1/src/Stack/Config.hs +--- stack-3.7.1/src/Stack/Config.hs~ 2025-06-15 22:57:29.000000000 +0800 ++++ stack-3.7.1/src/Stack/Config.hs 2025-07-22 14:28:58.453909444 +0800 +@@ -472,9 +472,9 @@ configFromConfigMonoid fromFirst Constants.hackageBaseUrl configMonoid.hackageBaseUrl hideSourcePaths = fromFirstTrue configMonoid.hideSourcePaths - recommendUpgrade = fromFirstTrue configMonoid.recommendUpgrade + recommendStackUpgrade = fromFirstTrue configMonoid.recommendStackUpgrade - notifyIfNixOnPath = fromFirstTrue configMonoid.notifyIfNixOnPath - notifyIfGhcUntested = fromFirstTrue configMonoid.notifyIfGhcUntested - notifyIfCabalUntested = fromFirstTrue configMonoid.notifyIfCabalUntested @@ -12,30 +12,30 @@ diff -up stack-2.15.7/src/Stack/Config.hs~ stack-2.15.7/src/Stack/Config.hs + notifyIfGhcUntested = fromFirstFalse configMonoid.notifyIfGhcUntested + notifyIfCabalUntested = fromFirstFalse configMonoid.notifyIfCabalUntested notifyIfArchUnknown = fromFirstTrue configMonoid.notifyIfArchUnknown - noRunCompile = fromFirstFalse configMonoid.noRunCompile - allowDifferentUser <- -diff -up stack-2.15.7/src/Stack/Types/ConfigMonoid.hs~ stack-2.15.7/src/Stack/Types/ConfigMonoid.hs ---- stack-2.15.7/src/Stack/Types/ConfigMonoid.hs~ 2024-05-12 22:50:14.000000000 +0800 -+++ stack-2.15.7/src/Stack/Types/ConfigMonoid.hs 2024-08-02 01:20:22.724711778 +0800 -@@ -170,11 +170,11 @@ data ConfigMonoid = ConfigMonoid - -- ^ See 'configHideSourcePaths' - , recommendUpgrade :: !FirstTrue - -- ^ See 'configRecommendUpgrade' -- , notifyIfNixOnPath :: !FirstTrue -+ , notifyIfNixOnPath :: !FirstFalse - -- ^ See 'configNotifyIfNixOnPath' -- , notifyIfGhcUntested :: !FirstTrue -+ , notifyIfGhcUntested :: !FirstFalse - -- ^ See 'configNotifyIfGhcUntested' -- , notifyIfCabalUntested :: !FirstTrue -+ , notifyIfCabalUntested :: !FirstFalse - -- ^ See 'configNotifyIfCabalUntested' - , notifyIfArchUnknown :: !FirstTrue - -- ^ See 'configNotifyIfArchUnknown' -@@ -317,11 +317,11 @@ parseConfigMonoidObject rootDir obj = do - let styles = fromMaybe mempty $ configMonoidStylesUS <|> configMonoidStylesGB + notifyIfNoRunTests = fromFirstTrue configMonoid.notifyIfNoRunTests + notifyIfNoRunBenchmarks = +diff -up stack-3.7.1/src/Stack/Types/ConfigMonoid.hs~ stack-3.7.1/src/Stack/Types/ConfigMonoid.hs +--- stack-3.7.1/src/Stack/Types/ConfigMonoid.hs~ 2025-06-15 22:57:29.000000000 +0800 ++++ stack-3.7.1/src/Stack/Types/ConfigMonoid.hs 2025-07-22 14:30:23.654826664 +0800 +@@ -187,11 +187,11 @@ data ConfigMonoid = ConfigMonoid + -- ^ See 'Stack.Types.Config.hideSourcePaths' + , recommendStackUpgrade :: !FirstTrue + -- ^ See 'Stack.Types.Config.recommendStackUpgrade' +- , notifyIfNixOnPath :: !FirstTrue ++ , notifyIfNixOnPath :: !FirstFalse + -- ^ See 'Stack.Types.Config.notifyIfNixOnPath' +- , notifyIfGhcUntested :: !FirstTrue ++ , notifyIfGhcUntested :: !FirstFalse + -- ^ See 'Stack.Types.Config.notifyIfGhcUntested' +- , notifyIfCabalUntested :: !FirstTrue ++ , notifyIfCabalUntested :: !FirstFalse + -- ^ See 'Stack.Types.Config.notifyIfCabalUntested' + , notifyIfArchUnknown :: !FirstTrue + -- ^ See 'Stack.Types.Config.notifyIfArchUnknown' +@@ -344,11 +344,11 @@ parseConfigMonoidObject rootDir obj = do hideSourcePaths <- FirstTrue <$> obj ..:? configMonoidHideSourcePathsName - recommendUpgrade <- FirstTrue <$> obj ..:? configMonoidRecommendUpgradeName + recommendStackUpgrade <- + FirstTrue <$> obj ..:? configMonoidRecommendStackUpgradeName - notifyIfNixOnPath <- FirstTrue <$> obj ..:? configMonoidNotifyIfNixOnPathName + notifyIfNixOnPath <- FirstFalse <$> obj ..:? configMonoidNotifyIfNixOnPathName notifyIfGhcUntested <- @@ -46,4 +46,4 @@ diff -up stack-2.15.7/src/Stack/Types/ConfigMonoid.hs~ stack-2.15.7/src/Stack/Ty + FirstFalse <$> obj ..:? configMonoidNotifyIfCabalUntestedName notifyIfArchUnknown <- FirstTrue <$> obj ..:? configMonoidNotifyIfArchUnknownName - casaOpts <- jsonSubWarnings (obj ..:? configMonoidCasaOptsName ..!= mempty) + notifyIfNoRunTests <- diff --git a/stack.spec b/stack.spec index 07201e5..8f60162 100644 --- a/stack.spec +++ b/stack.spec @@ -1,4 +1,4 @@ -# generated by cabal-rpm-2.2.2 --subpackage +# generated by cabal-rpm-2.3.2 --subpackage # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name stack @@ -6,35 +6,33 @@ %{?haskell_setup} %global aesonwarningparser aeson-warning-parser-0.1.1 -%global casaclient casa-client-0.0.2 -%global casatypes casa-types-0.0.2 +%global casaclient casa-client-0.0.3 +%global casatypes casa-types-0.0.3 %global companion companion-0.1.0 %global cryptonconduit crypton-conduit-0.2.3 -%global filelock filelock-0.1.1.7 -%global hifileparser hi-file-parser-0.1.6.0 -%global hpack hpack-0.36.1 +%global filelock filelock-0.1.1.8 +%global hifileparser hi-file-parser-0.1.8.0 +%global hpack hpack-0.38.3 %global httpdownload http-download-0.2.1.0 -%global mintty mintty-0.1.4 -%global mustache mustache-2.4.2 +%global mustache mustache-2.4.3.1 %global neatinterpolation neat-interpolation-0.5.1.4 -%global openbrowser open-browser-0.2.1.0 -%global pantry pantry-0.9.3.2 +%global pantry pantry-0.11.2 %global projecttemplate project-template-0.2.1.0 %global rioorphans rio-orphans-0.1.2.0 -%global staticbytes static-bytes-0.1.0 +%global staticbytes static-bytes-0.1.1 -%global subpkgs %{aesonwarningparser} %{casatypes} %{casaclient} %{companion} %{cryptonconduit} %{filelock} %{hifileparser} %{hpack} %{httpdownload} %{mintty} %{mustache} %{neatinterpolation} %{openbrowser} %{projecttemplate} %{rioorphans} %{staticbytes} %{pantry} +%global subpkgs %{aesonwarningparser} %{casatypes} %{casaclient} %{companion} %{cryptonconduit} %{filelock} %{hifileparser} %{hpack} %{httpdownload} %{mustache} %{neatinterpolation} %{projecttemplate} %{rioorphans} %{staticbytes} %{pantry} # testsuite missing deps: raw-strings-qq Name: %{pkg_name} -Version: 2.15.7 +Version: 3.9.1 # can only be reset when all subpkgs bumped -Release: 34%{?dist} +Release: 42%{?dist} Summary: Haskell stable package build tool License: BSD-3-Clause -Url: https://haskellstack.org +URL: https://haskellstack.org # Begin cabal-rpm sources: Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz Source1: https://hackage.haskell.org/package/%{aesonwarningparser}/%{aesonwarningparser}.tar.gz @@ -46,14 +44,12 @@ Source6: https://hackage.haskell.org/package/%{filelock}/%{filelock}.tar. Source7: https://hackage.haskell.org/package/%{hifileparser}/%{hifileparser}.tar.gz Source8: https://hackage.haskell.org/package/%{hpack}/%{hpack}.tar.gz Source9: https://hackage.haskell.org/package/%{httpdownload}/%{httpdownload}.tar.gz -Source10: https://hackage.haskell.org/package/%{mintty}/%{mintty}.tar.gz -Source11: https://hackage.haskell.org/package/%{mustache}/%{mustache}.tar.gz -Source12: https://hackage.haskell.org/package/%{neatinterpolation}/%{neatinterpolation}.tar.gz -Source13: https://hackage.haskell.org/package/%{openbrowser}/%{openbrowser}.tar.gz -Source14: https://hackage.haskell.org/package/%{pantry}/%{pantry}.tar.gz -Source15: https://hackage.haskell.org/package/%{projecttemplate}/%{projecttemplate}.tar.gz -Source16: https://hackage.haskell.org/package/%{rioorphans}/%{rioorphans}.tar.gz -Source17: https://hackage.haskell.org/package/%{staticbytes}/%{staticbytes}.tar.gz +Source10: https://hackage.haskell.org/package/%{mustache}/%{mustache}.tar.gz +Source11: https://hackage.haskell.org/package/%{neatinterpolation}/%{neatinterpolation}.tar.gz +Source12: https://hackage.haskell.org/package/%{pantry}/%{pantry}.tar.gz +Source13: https://hackage.haskell.org/package/%{projecttemplate}/%{projecttemplate}.tar.gz +Source14: https://hackage.haskell.org/package/%{rioorphans}/%{rioorphans}.tar.gz +Source15: https://hackage.haskell.org/package/%{staticbytes}/%{staticbytes}.tar.gz # End cabal-rpm sources Source20: stack-symlink-distro-ghc @@ -61,6 +57,8 @@ Source20: stack-symlink-distro-ghc Patch0: stack-disabled-global-warnings.patch # https://github.com/commercialhaskell/stack/issues/6379 Patch1: stack-Setup-Platforms.patch +# for Cabal 3.12 (interpretSymbolicPathCWD) +Patch2: stack-3.9.1-Cabal-3.12.patch # Begin cabal-rpm deps: BuildRequires: ghc-rpm-macros-extra @@ -91,6 +89,7 @@ BuildRequires: ghc-fsnotify-devel BuildRequires: ghc-generic-deriving-devel BuildRequires: ghc-ghc-boot-devel BuildRequires: ghc-githash-devel +BuildRequires: ghc-hashable-devel #BuildRequires: ghc-hi-file-parser-devel #BuildRequires: ghc-hpack-devel BuildRequires: ghc-hpc-devel @@ -104,7 +103,7 @@ BuildRequires: ghc-microlens-devel BuildRequires: ghc-mtl-devel #BuildRequires: ghc-mustache-devel #BuildRequires: ghc-neat-interpolation-devel -#BuildRequires: ghc-open-browser-devel +BuildRequires: ghc-open-browser-devel BuildRequires: ghc-optparse-applicative-devel BuildRequires: ghc-optparse-simple-devel #BuildRequires: ghc-pantry-devel @@ -159,6 +158,7 @@ BuildRequires: ghc-fsnotify-prof BuildRequires: ghc-generic-deriving-prof BuildRequires: ghc-ghc-boot-prof BuildRequires: ghc-githash-prof +BuildRequires: ghc-hashable-prof #BuildRequires: ghc-hi-file-parser-prof #BuildRequires: ghc-hpack-prof BuildRequires: ghc-hpc-prof @@ -172,7 +172,7 @@ BuildRequires: ghc-microlens-prof BuildRequires: ghc-mtl-prof #BuildRequires: ghc-mustache-prof #BuildRequires: ghc-neat-interpolation-prof -#BuildRequires: ghc-open-browser-prof +BuildRequires: ghc-open-browser-prof BuildRequires: ghc-optparse-applicative-prof BuildRequires: ghc-optparse-simple-prof #BuildRequires: ghc-pantry-prof @@ -216,11 +216,9 @@ BuildRequires: ghc-unliftio-core-prof %endif # for missing dep 'casa-types': BuildRequires: ghc-base16-bytestring-devel -BuildRequires: ghc-hashable-devel BuildRequires: ghc-path-pieces-devel %if %{with ghc_prof} BuildRequires: ghc-base16-bytestring-prof -BuildRequires: ghc-hashable-prof BuildRequires: ghc-path-pieces-prof %endif # for missing dep 'crypton-conduit': @@ -271,7 +269,7 @@ BuildRequires: ghc-megaparsec-prof BuildRequires: ghc-digest-devel BuildRequires: ghc-hackage-security-devel BuildRequires: ghc-network-uri-devel -BuildRequires: ghc-persistent-template-devel +#BuildRequires: ghc-persistent-template-devel BuildRequires: ghc-primitive-devel BuildRequires: ghc-resourcet-devel BuildRequires: ghc-tar-conduit-devel @@ -282,7 +280,6 @@ BuildRequires: ghc-zip-archive-devel BuildRequires: ghc-digest-prof BuildRequires: ghc-hackage-security-prof BuildRequires: ghc-network-uri-prof -# no persistent-template prof! #BuildRequires: ghc-persistent-template-prof BuildRequires: ghc-primitive-prof BuildRequires: ghc-resourcet-prof @@ -376,14 +373,12 @@ This package provides the Haskell %{name} profiling library. %ghc_lib_subpackage -l BSD-3-Clause %{casatypes} %ghc_lib_subpackage -l BSD-3-Clause %{companion} %ghc_lib_subpackage -l BSD-3-Clause %{cryptonconduit} -%ghc_lib_subpackage -l CC0-1.0 %{filelock} +%ghc_lib_subpackage -l CC0-1 %{filelock} %ghc_lib_subpackage -l BSD-3-Clause %{hifileparser} %ghc_lib_subpackage -l MIT %{hpack} %ghc_lib_subpackage -l BSD-3-Clause %{httpdownload} -%ghc_lib_subpackage -l BSD-3-Clause %{mintty} %ghc_lib_subpackage -l BSD-3-Clause %{mustache} %ghc_lib_subpackage -l MIT %{neatinterpolation} -%ghc_lib_subpackage -l BSD-3-Clause %{openbrowser} %ghc_lib_subpackage -l BSD-3-Clause %{pantry} %ghc_lib_subpackage -l BSD-3-Clause %{projecttemplate} %ghc_lib_subpackage -l MIT %{rioorphans} @@ -395,9 +390,13 @@ This package provides the Haskell %{name} profiling library. %prep # Begin cabal-rpm setup: -%setup -q -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a12 -a13 -a14 -a15 -a16 -a17 +%setup -q -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a12 -a13 -a14 -a15 %autopatch -p1 # End cabal-rpm setup +cabal-tweak-drop-dep persistent-template +( cd %{pantry} + cabal-tweak-drop-dep persistent-template +) %build @@ -414,14 +413,16 @@ This package provides the Haskell %{name} profiling library. set noclobber mkdir -p %{buildroot}%{bash_completions_dir} +mkdir -p %{buildroot}%{fish_completions_dir} +mkdir -p %{buildroot}%{zsh_completions_dir} %{buildroot}%{_bindir}/%{name} --bash-completion-script %{name} | sed s/filenames/default/ > %{buildroot}%{bash_completions_dir}/%{name} +%{buildroot}%{_bindir}/%{name} --fish-completion-script %{name} > %{buildroot}%{fish_completions_dir}/%{name} +%{buildroot}%{_bindir}/%{name} --zsh-completion-script %{name} | sed s/filenames/default/ > %{buildroot}%{zsh_completions_dir}/_%{name} mkdir -p %{buildroot}%{_mandir}/man1/ help2man --no-info %{buildroot}%{_bindir}/%{name} > %{buildroot}%{_mandir}/man1/%{name}.1 # End cabal-rpm install -# open-browser -rm %{buildroot}%{_bindir}/example echo %{_bindir}/hpack >> %{hpack}/ghc-hpack.files echo %{_bindir}/haskell-mustache >> %{mustache}/ghc-mustache.files @@ -441,6 +442,8 @@ PATH=%{buildroot}%{_bindir}:$PATH %doc CONTRIBUTING.md ChangeLog.md README.md %{_bindir}/%{name} %{bash_completions_dir}/%{name} +%{fish_completions_dir}/%{name} +%{zsh_completions_dir}/_%{name} %{_mandir}/man1/%{name}.1* # End cabal-rpm files %{_bindir}/stack-symlink-distro-ghc @@ -468,6 +471,31 @@ PATH=%{buildroot}%{_bindir}:$PATH %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 3.9.1-42 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Mon Jan 26 2026 Jens Petersen - 3.9.1-41 +- https://hackage.haskell.org/package/stack-3.9.1/changelog + +* Sat Jan 17 2026 Fedora Release Engineering - 3.7.1-40 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Mon Aug 11 2025 Jens Petersen - 3.7.1-39 +- Rebuild + +* Fri Jul 25 2025 Fedora Release Engineering - 3.7.1-38 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Tue Jul 22 2025 Jens Petersen - 3.7.1-37 +- https://hackage.haskell.org/package/stack-3.7.1/changelog +- pantry-0.10.1, open-browser-0.3.0.1, mustache-2.4.3.1, static-bytes-0.1.1 + +* Tue Mar 25 2025 Jens Petersen - 3.1.1-36 +- https://hackage.haskell.org/package/stack-3.1.1/changelog + +* Sun Jan 19 2025 Fedora Release Engineering - 2.15.7-35 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Fri Dec 6 2024 Jens Petersen - 2.15.7-34 - split out with deps from haskell-platform