From 1da05e57d60bc99bd644b14ae0d74dec21d4bcab Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 23 Jan 2024 01:05:01 +0000 Subject: [PATCH 01/11] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- cabal-install.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index 734f2c0..a4d5c4c 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -13,7 +13,7 @@ Name: %{pkg_name} Version: 3.8.1.0 # can only be reset when all subpkgs bumped -Release: 5%{?dist} +Release: 6%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -253,6 +253,9 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Tue Jan 23 2024 Fedora Release Engineering - 3.8.1.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 3.8.1.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 28cd4fabbce1fac169c708dcf4047155067c0b86 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 15 Feb 2024 13:20:28 +0800 Subject: [PATCH 02/11] rebuild to fix s390x segfault (#2248097) --- cabal-install.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index a4d5c4c..7e45bde 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -13,7 +13,7 @@ Name: %{pkg_name} Version: 3.8.1.0 # can only be reset when all subpkgs bumped -Release: 6%{?dist} +Release: 7%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -253,6 +253,9 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Thu Feb 15 2024 Jens Petersen - 3.8.1.0-7 +- rebuild to fix s390x segfault (#2248097) + * Tue Jan 23 2024 Fedora Release Engineering - 3.8.1.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 328ada02f1fdafb4616b6bacbcfc862027f1c054 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sun, 14 Jul 2024 14:51:37 +0800 Subject: [PATCH 03/11] update Release subpkg comment --- cabal-install.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index 7e45bde..d27e0d8 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -12,7 +12,7 @@ Name: %{pkg_name} Version: 3.8.1.0 -# can only be reset when all subpkgs bumped +# can only be reset when subpkg bumped Release: 7%{?dist} Summary: The command-line interface for Cabal and Hackage From 49d874e8cbe01cc2184854bfa62e112e315d2fdf Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Mon, 15 Jul 2024 23:11:49 +0800 Subject: [PATCH 04/11] refresh to cabal-rpm-2.2.1 --- cabal-install.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index d27e0d8..a8704f0 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -1,8 +1,9 @@ -# generated by cabal-rpm-2.1.5 --subpackage +# generated by cabal-rpm-2.2.1 --subpackage # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name cabal-install %global pkgver %{pkg_name}-%{version} +%{?haskell_setup} %global cabalinstallsolver cabal-install-solver-3.8.1.0 From fc4f4931bc332576702db27ee53b917e1a45a579 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 18:49:48 +0000 Subject: [PATCH 05/11] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- cabal-install.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index a8704f0..4b5aa5e 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -14,7 +14,7 @@ Name: %{pkg_name} Version: 3.8.1.0 # can only be reset when subpkg bumped -Release: 7%{?dist} +Release: 8%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -254,6 +254,9 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 3.8.1.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Thu Feb 15 2024 Jens Petersen - 3.8.1.0-7 - rebuild to fix s390x segfault (#2248097) From dcaf424ec4424c878a088911b66fcd91273cad6f Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sat, 20 Jul 2024 18:57:31 +0800 Subject: [PATCH 06/11] update to 3.10.3.0 --- .gitignore | 2 + 8358.patch | 165 ------------------ 8627.patch | 27 --- ....1.0.cabal => cabal-install-3.10.3.0.cabal | 73 ++++---- ...-install-solver-pkgconfig-modversion.patch | 22 --- cabal-install.spec | 30 +--- sources | 4 +- 7 files changed, 56 insertions(+), 267 deletions(-) delete mode 100644 8358.patch delete mode 100644 8627.patch rename cabal-install-3.8.1.0.cabal => cabal-install-3.10.3.0.cabal (87%) delete mode 100644 cabal-install-solver-pkgconfig-modversion.patch diff --git a/.gitignore b/.gitignore index 6b2af0a..54e0802 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,5 @@ cabal-install-0.8.2.tar.gz /cabal-install-3.6.2.0.tar.gz /cabal-install-3.8.1.0.tar.gz /cabal-install-solver-3.8.1.0.tar.gz +/cabal-install-3.10.3.0.tar.gz +/cabal-install-solver-3.10.3.0.tar.gz diff --git a/8358.patch b/8358.patch deleted file mode 100644 index 4418487..0000000 --- a/8358.patch +++ /dev/null @@ -1,165 +0,0 @@ -From 0fd2647dcc18d1aa863fd26054077b37b2d8e04f Mon Sep 17 00:00:00 2001 -From: Gershom Bazerman -Date: Wed, 10 Aug 2022 18:41:07 -0400 -Subject: [PATCH 1/7] only check for compiler when project file has - conditionals - ---- - .../src/Distribution/Client/CmdOutdated.hs | 4 ++-- - .../Client/ProjectConfig/Legacy.hs | 19 ++++++++++++++----- - .../Distribution/Client/ProjectPlanning.hs | 7 +++++-- - .../src/Distribution/Client/ScriptUtils.hs | 8 +++++--- - 4 files changed, 26 insertions(+), 12 deletions(-) - -diff --git a/cabal-install/src/Distribution/Client/CmdOutdated.hs b/cabal-install/src/Distribution/Client/CmdOutdated.hs -index c511c53c1c6..b2bf423478e 100644 ---- a/cabal-install/src/Distribution/Client/CmdOutdated.hs -+++ b/cabal-install/src/Distribution/Client/CmdOutdated.hs -@@ -30,7 +30,7 @@ import Distribution.Client.DistDirLayout - , DistDirLayout(distProjectRootDirectory, distProjectFile) ) - import Distribution.Client.ProjectConfig - import Distribution.Client.ProjectConfig.Legacy -- ( instantiateProjectConfigSkeleton ) -+ ( instantiateProjectConfigSkeletonWithCompiler ) - import Distribution.Client.ProjectFlags - ( projectFlagsOptions, ProjectFlags(..), defaultProjectFlags - , removeIgnoreProjectOption ) -@@ -306,7 +306,7 @@ depsFromNewFreezeFile verbosity httpTransport compiler (Platform arch os) mproje - {- TODO: Support dist dir override -} Nothing - projectConfig <- runRebuild (distProjectRootDirectory distDirLayout) $ do - pcs <- readProjectLocalFreezeConfig verbosity httpTransport distDirLayout -- pure $ instantiateProjectConfigSkeleton os arch (compilerInfo compiler) mempty pcs -+ pure $ instantiateProjectConfigSkeletonWithCompiler os arch (compilerInfo compiler) mempty pcs - let ucnstrs = map fst . projectConfigConstraints . projectConfigShared - $ projectConfig - deps = userConstraintsToDependencies ucnstrs -diff --git a/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs b/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs -index 8787e06ee19..1c7aba8243e 100644 ---- a/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs -+++ b/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs -@@ -7,7 +7,8 @@ module Distribution.Client.ProjectConfig.Legacy ( - -- Project config skeletons - ProjectConfigSkeleton, - parseProjectSkeleton, -- instantiateProjectConfigSkeleton, -+ instantiateProjectConfigSkeletonFetchingCompiler, -+ instantiateProjectConfigSkeletonWithCompiler, - singletonProjectConfigSkeleton, - projectSkeletonImports, - -@@ -44,7 +45,7 @@ import Distribution.Client.CmdInstall.ClientInstallFlags - ( ClientInstallFlags(..), defaultClientInstallFlags - , clientInstallOptions ) - --import Distribution.Compat.Lens (view) -+import Distribution.Compat.Lens (view, toListOf) - - import Distribution.Solver.Types.ConstraintSource - -@@ -52,7 +53,7 @@ import Distribution.FieldGrammar - import Distribution.Package - import Distribution.Types.SourceRepo (RepoType) - import Distribution.Types.CondTree -- ( CondTree (..), CondBranch (..), mapTreeConds, traverseCondTreeC ) -+ ( CondTree (..), CondBranch (..), mapTreeConds, traverseCondTreeC, traverseCondTreeV, ignoreConditions ) - import Distribution.PackageDescription - ( dispFlagAssignment, Condition (..), ConfVar (..), FlagAssignment ) - import Distribution.PackageDescription.Configuration (simplifyWithSysParams) -@@ -135,8 +136,16 @@ type ProjectConfigImport = String - singletonProjectConfigSkeleton :: ProjectConfig -> ProjectConfigSkeleton - singletonProjectConfigSkeleton x = CondNode x mempty mempty - --instantiateProjectConfigSkeleton :: OS -> Arch -> CompilerInfo -> FlagAssignment -> ProjectConfigSkeleton -> ProjectConfig --instantiateProjectConfigSkeleton os arch impl _flags skel = go $ mapTreeConds (fst . simplifyWithSysParams os arch impl) skel -+instantiateProjectConfigSkeletonFetchingCompiler :: Monad m => m (OS, Arch, CompilerInfo) -> FlagAssignment -> ProjectConfigSkeleton -> m ProjectConfig -+instantiateProjectConfigSkeletonFetchingCompiler fetch flags skel -+ | null (toListOf traverseCondTreeV skel) = pure $ fst (ignoreConditions skel) -+ | otherwise = do -+ (os, arch, impl) <- fetch -+ pure $ instantiateProjectConfigSkeletonWithCompiler os arch impl flags skel -+ -+ -+instantiateProjectConfigSkeletonWithCompiler :: OS -> Arch -> CompilerInfo -> FlagAssignment -> ProjectConfigSkeleton -> ProjectConfig -+instantiateProjectConfigSkeletonWithCompiler os arch impl _flags skel = go $ mapTreeConds (fst . simplifyWithSysParams os arch impl) skel - where - go :: CondTree - FlagName -diff --git a/cabal-install/src/Distribution/Client/ProjectPlanning.hs b/cabal-install/src/Distribution/Client/ProjectPlanning.hs -index a3464159923..07ac42e4ec0 100644 ---- a/cabal-install/src/Distribution/Client/ProjectPlanning.hs -+++ b/cabal-install/src/Distribution/Client/ProjectPlanning.hs -@@ -333,8 +333,11 @@ rebuildProjectConfig verbosity - liftIO $ createDirectoryIfMissingVerbose verbosity True distProjectCacheDirectory - projectConfigSkeleton <- phaseReadProjectConfig - -- have to create the cache directory before configuring the compiler -- (compiler, Platform arch os, _) <- configureCompiler verbosity distDirLayout ((fst $ PD.ignoreConditions projectConfigSkeleton) <> cliConfig) -- let projectConfig = instantiateProjectConfigSkeleton os arch (compilerInfo compiler) mempty projectConfigSkeleton -+ let fetchCompiler = do -+ (compiler, Platform arch os, _) <- configureCompiler verbosity distDirLayout ((fst $ PD.ignoreConditions projectConfigSkeleton) <> cliConfig) -+ pure (os, arch, compilerInfo compiler) -+ -+ projectConfig <- instantiateProjectConfigSkeletonFetchingCompiler fetchCompiler mempty projectConfigSkeleton - localPackages <- phaseReadLocalPackages (projectConfig <> cliConfig) - return (projectConfig, localPackages) - -diff --git a/cabal-install/src/Distribution/Client/ScriptUtils.hs b/cabal-install/src/Distribution/Client/ScriptUtils.hs -index 6555b92ef7c..81d7c52bc20 100644 ---- a/cabal-install/src/Distribution/Client/ScriptUtils.hs -+++ b/cabal-install/src/Distribution/Client/ScriptUtils.hs -@@ -37,7 +37,7 @@ import Distribution.Client.ProjectConfig - , projectConfigHttpTransport ) - import Distribution.Client.ProjectConfig.Legacy - ( ProjectConfigSkeleton -- , parseProjectSkeleton, instantiateProjectConfigSkeleton ) -+ , parseProjectSkeleton, instantiateProjectConfigSkeletonFetchingCompiler ) - import Distribution.Client.ProjectFlags - ( flagIgnoreProject ) - import Distribution.Client.RebuildMonad -@@ -243,9 +243,11 @@ withContextAndSelectors noTargets kind flags@NixStyleFlags {..} targetStrings gl - - projectCfgSkeleton <- readProjectBlockFromScript verbosity httpTransport (distDirLayout ctx) (takeFileName script) scriptContents - -- (compiler, Platform arch os, _) <- runRebuild (distProjectRootDirectory . distDirLayout $ ctx) $ configureCompiler verbosity (distDirLayout ctx) ((fst $ ignoreConditions projectCfgSkeleton) <> projectConfig ctx) -+ let fetchCompiler = do -+ (compiler, Platform arch os, _) <- runRebuild (distProjectRootDirectory . distDirLayout $ ctx) $ configureCompiler verbosity (distDirLayout ctx) ((fst $ ignoreConditions projectCfgSkeleton) <> projectConfig ctx) -+ pure (os, arch, compilerInfo compiler) - -- let projectCfg = instantiateProjectConfigSkeleton os arch (compilerInfo compiler) mempty projectCfgSkeleton :: ProjectConfig -+ projectCfg <- instantiateProjectConfigSkeletonFetchingCompiler fetchCompiler mempty projectCfgSkeleton - - let executable' = executable & L.buildInfo . L.defaultLanguage %~ maybe (Just Haskell2010) Just - ctx' = ctx & lProjectConfig %~ (<> projectCfg) - -From 6de0540ed34f680fa1e3e5273440b8f7d40038f9 Mon Sep 17 00:00:00 2001 -From: Gershom Bazerman -Date: Thu, 11 Aug 2022 16:08:04 -0400 -Subject: [PATCH 2/7] fix sdist options a bit plus test - ---- - cabal-install/src/Distribution/Client/CmdSdist.hs | 3 ++- - cabal-testsuite/PackageTests/ConditionalAndImport/cabal.out | 4 ++++ - .../PackageTests/ConditionalAndImport/cabal.test.hs | 4 ++++ - 3 files changed, 10 insertions(+), 1 deletion(-) - -diff --git a/cabal-install/src/Distribution/Client/CmdSdist.hs b/cabal-install/src/Distribution/Client/CmdSdist.hs -index f9920ecd6ea..605403b0a3a 100644 ---- a/cabal-install/src/Distribution/Client/CmdSdist.hs -+++ b/cabal-install/src/Distribution/Client/CmdSdist.hs -@@ -137,7 +137,7 @@ sdistOptions showOrParseArgs = - ------------------------------------------------------------------------------- - - sdistAction :: (ProjectFlags, SdistFlags) -> [String] -> GlobalFlags -> IO () --sdistAction (ProjectFlags{..}, SdistFlags{..}) targetStrings globalFlags = do -+sdistAction (pf@ProjectFlags{..}, SdistFlags{..}) targetStrings globalFlags = do - (baseCtx, distDirLayout) <- withProjectOrGlobalConfig verbosity flagIgnoreProject globalConfigFlag withProject withoutProject - - let localPkgs = localPackages baseCtx -@@ -196,6 +196,7 @@ sdistAction (ProjectFlags{..}, SdistFlags{..}) targetStrings globalFlags = do - { configVerbosity = sdistVerbosity - , configDistPref = sdistDistDir - } -+ , projectFlags = pf - } - mempty - - diff --git a/8627.patch b/8627.patch deleted file mode 100644 index df7b387..0000000 --- a/8627.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 5a635d7684e112d4a418ef062249e571867f7fd3 Mon Sep 17 00:00:00 2001 -From: Gershom Bazerman -Date: Tue, 6 Dec 2022 13:41:59 -0500 -Subject: [PATCH 1/2] don't create a cache directory when the compiler isn't - configured - ---- - cabal-install/src/Distribution/Client/ProjectPlanning.hs | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/cabal-install/src/Distribution/Client/ProjectPlanning.hs b/cabal-install/src/Distribution/Client/ProjectPlanning.hs -index 594fec5b2d1..7c727a72933 100644 ---- a/cabal-install/src/Distribution/Client/ProjectPlanning.hs -+++ b/cabal-install/src/Distribution/Client/ProjectPlanning.hs -@@ -332,10 +332,10 @@ rebuildProjectConfig verbosity - fileMonitorProjectConfigKey -- todo check deps too? - $ do - liftIO $ info verbosity "Project settings changed, reconfiguring..." -- liftIO $ createDirectoryIfMissingVerbose verbosity True distProjectCacheDirectory - projectConfigSkeleton <- phaseReadProjectConfig -- -- have to create the cache directory before configuring the compiler - let fetchCompiler = do -+ -- have to create the cache directory before configuring the compiler -+ liftIO $ createDirectoryIfMissingVerbose verbosity True distProjectCacheDirectory - (compiler, Platform arch os, _) <- configureCompiler verbosity distDirLayout ((fst $ PD.ignoreConditions projectConfigSkeleton) <> cliConfig) - pure (os, arch, compilerInfo compiler) - diff --git a/cabal-install-3.8.1.0.cabal b/cabal-install-3.10.3.0.cabal similarity index 87% rename from cabal-install-3.8.1.0.cabal rename to cabal-install-3.10.3.0.cabal index b43aa25..be84b9d 100644 --- a/cabal-install-3.8.1.0.cabal +++ b/cabal-install-3.10.3.0.cabal @@ -1,8 +1,8 @@ Cabal-Version: 2.2 Name: cabal-install -Version: 3.8.1.0 -x-revision: 3 +Version: 3.10.3.0 +x-revision: 1 Synopsis: The command-line interface for Cabal and Hackage. Description: The \'cabal\' command-line program simplifies the process of managing @@ -14,12 +14,13 @@ License: BSD-3-Clause License-File: LICENSE Author: Cabal Development Team (see AUTHORS file) Maintainer: Cabal Development Team -Copyright: 2003-2022, Cabal Development Team +Copyright: 2003-2023, Cabal Development Team Category: Distribution Build-type: Simple Extra-Source-Files: - README.md bash-completion/cabal +extra-doc-files: + README.md changelog source-repository head @@ -43,26 +44,33 @@ common warnings ghc-options: -Wall -Wcompat -Wnoncanonical-monad-instances -Wincomplete-uni-patterns -Wincomplete-record-updates if impl(ghc < 8.8) ghc-options: -Wnoncanonical-monadfail-instances - if impl(ghc >=8.10) + if impl(ghc >=9.0) + -- Warning: even though introduced with GHC 8.10, -Wunused-packages + -- gives false positives with GHC 8.10. ghc-options: -Wunused-packages common base-dep - build-depends: base >=4.10 && <4.18 + build-depends: base >=4.10 && <4.20 common cabal-dep - build-depends: Cabal ^>=3.8 + build-depends: Cabal ^>=3.10.3 common cabal-syntax-dep - build-depends: Cabal-syntax ^>=3.8 + build-depends: Cabal-syntax ^>=3.10 common cabal-install-solver-dep - build-depends: cabal-install-solver ^>=3.8 + build-depends: cabal-install-solver ^>=3.10 library import: warnings, base-dep, cabal-dep, cabal-syntax-dep, cabal-install-solver-dep default-language: Haskell2010 + default-extensions: TypeOperators hs-source-dirs: src + autogen-modules: + Paths_cabal_install + other-modules: + Paths_cabal_install exposed-modules: -- this modules are moved from Cabal -- they are needed for as long until cabal-install moves to parsec parser @@ -84,6 +92,7 @@ library Distribution.Client.CmdExec Distribution.Client.CmdFreeze Distribution.Client.CmdHaddock + Distribution.Client.CmdHaddockProject Distribution.Client.CmdInstall Distribution.Client.CmdInstall.ClientInstallFlags Distribution.Client.CmdInstall.ClientInstallTargetSelector @@ -99,8 +108,8 @@ library Distribution.Client.Compat.ExecutablePath Distribution.Client.Compat.Orphans Distribution.Client.Compat.Prelude - Distribution.Client.Compat.Process Distribution.Client.Compat.Semaphore + Distribution.Client.Compat.Tar Distribution.Client.Config Distribution.Client.Configure Distribution.Client.Dependency @@ -140,6 +149,7 @@ library Distribution.Client.InstallSymlink Distribution.Client.JobControl Distribution.Client.List + Distribution.Client.Main Distribution.Client.Manpage Distribution.Client.ManpageFlags Distribution.Client.Nix @@ -167,6 +177,7 @@ library Distribution.Client.Security.HTTP Distribution.Client.Setup Distribution.Client.SetupWrapper + Distribution.Client.Signal Distribution.Client.SolverInstallPlan Distribution.Client.SourceFiles Distribution.Client.SrcDist @@ -204,28 +215,27 @@ library array >= 0.4 && < 0.6, base16-bytestring >= 0.1.1 && < 1.1.0.0, binary >= 0.7.3 && < 0.9, - bytestring >= 0.10.6.0 && < 0.12, - containers >= 0.5.6.2 && < 0.7, + bytestring >= 0.10.6.0 && < 0.13, + containers >= 0.5.6.2 && < 0.8, cryptohash-sha256 >= 0.11 && < 0.12, - directory >= 1.2.2.0 && < 1.4, + directory >= 1.3.7.0 && < 1.4, echo >= 0.1.3 && < 0.2, edit-distance >= 0.2.2 && < 0.3, exceptions >= 0.10.4 && < 0.11, - filepath >= 1.4.0.0 && < 1.5, + filepath >= 1.4.0.0 && < 1.6, hashable >= 1.0 && < 1.5, HTTP >= 4000.1.5 && < 4000.5, - mtl >= 2.0 && < 2.3, + mtl >= 2.0 && < 2.4, network-uri >= 2.6.0.2 && < 2.7, pretty >= 1.1 && < 1.2, - -- PR #8802: process lower bound moved here from Cabal package - process >= 1.6.15.0 && < 1.7, + process >= 1.2.3.0 && < 1.7, random >= 1.2 && < 1.3, stm >= 2.0 && < 2.6, - tar >= 0.5.0.3 && < 0.6, + tar >= 0.5.0.3 && < 0.7, time >= 1.5.0.1 && < 1.13, - zlib >= 0.5.3 && < 0.7, + zlib >= 0.5.3 && < 0.8, hackage-security >= 0.6.2.0 && < 0.7, - text >= 1.2.3 && < 1.3 || >= 2.0 && < 2.1, + text >= 1.2.3 && < 1.3 || >= 2.0 && < 2.2, parsec >= 3.1.13.0 && < 3.2, regex-base >= 0.94.0.0 && <0.95, regex-posix >= 0.96.0.0 && <0.97, @@ -235,7 +245,7 @@ library if os(windows) build-depends: windns >= 0.1.0 && < 0.2 else - build-depends: resolv >= 0.1.1 && < 0.2 + build-depends: resolv >= 0.1.1 && < 0.3 if os(windows) -- newer directory for symlinks @@ -246,9 +256,13 @@ library if flag(lukko) build-depends: lukko >= 0.1 && <0.2 + -- pull in process version with fixed waitForProcess error + if impl(ghc >=8.2) + build-depends: process >= 1.6.15.0 + executable cabal - import: warnings, base-dep, cabal-dep, cabal-syntax-dep + import: warnings, base-dep main-is: Main.hs hs-source-dirs: main default-language: Haskell2010 @@ -260,15 +274,14 @@ executable cabal extra-libraries: bsd build-depends: - cabal-install, - directory, - filepath + cabal-install -- Small, fast running tests. -- test-suite unit-tests import: warnings, base-dep, cabal-dep, cabal-syntax-dep, cabal-install-solver-dep default-language: Haskell2010 + default-extensions: TypeOperators ghc-options: -rtsopts -threaded type: exitcode-stdio-1.0 @@ -325,12 +338,12 @@ test-suite unit-tests tar, time, zlib, - tasty >= 1.2.3 && <1.5, + tasty >= 1.2.3 && <1.6, tasty-golden >=2.3.1.1 && <2.4, tasty-quickcheck, tasty-hunit >= 0.10, tree-diff, - QuickCheck >= 2.14 && <2.15 + QuickCheck >= 2.14.3 && <2.15 -- Tests to run with a limited stack and heap size @@ -355,7 +368,7 @@ test-suite mem-use-tests build-depends: cabal-install, containers, - tasty >= 1.2.3 && <1.5, + tasty >= 1.2.3 && <1.6, tasty-hunit >= 0.10 @@ -375,7 +388,7 @@ test-suite integration-tests2 containers, directory, filepath, - tasty >= 1.2.3 && <1.5, + tasty >= 1.2.3 && <1.6, tasty-hunit >= 0.10, tagged @@ -411,7 +424,7 @@ test-suite long-tests network-uri >= 2.6.2.0 && <2.7, random, tagged, - tasty >= 1.2.3 && <1.5, + tasty >= 1.2.3 && <1.6, tasty-expected-failure, tasty-hunit >= 0.10, tasty-quickcheck, diff --git a/cabal-install-solver-pkgconfig-modversion.patch b/cabal-install-solver-pkgconfig-modversion.patch deleted file mode 100644 index 2ed7375..0000000 --- a/cabal-install-solver-pkgconfig-modversion.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- cabal-install-solver-3.8.1.0/src/Distribution/Solver/Types/PkgConfigDb.hs~ 2001-09-09 09:46:40.000000000 +0800 -+++ cabal-install-solver-3.8.1.0/src/Distribution/Solver/Types/PkgConfigDb.hs 2023-11-03 02:05:41.798304907 +0800 -@@ -21,7 +21,7 @@ - ) where - - import Distribution.Solver.Compat.Prelude --import Prelude () -+import Prelude (mapM) - - import Control.Exception (handle) - import qualified Data.Map as M -@@ -65,8 +65,8 @@ - -- The output of @pkg-config --list-all@ also includes a description - -- for each package, which we do not need. - let pkgNames = map (takeWhile (not . isSpace)) pkgList -- pkgVersions <- lines <$> getProgramOutput verbosity pkgConfig -- ("--modversion" : pkgNames) -+ pkgVersions <- mapM (\p -> getProgramOutput verbosity pkgConfig -+ ("--modversion" : [p])) pkgNames - (return . pkgConfigDbFromList . zip pkgNames) pkgVersions - where - -- For when pkg-config invocation fails (possibly because of a diff --git a/cabal-install.spec b/cabal-install.spec index 4b5aa5e..eb829b5 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -5,16 +5,16 @@ %global pkgver %{pkg_name}-%{version} %{?haskell_setup} -%global cabalinstallsolver cabal-install-solver-3.8.1.0 +%global cabalinstallsolver cabal-install-solver-3.10.3.0 %global subpkgs %{cabalinstallsolver} # testsuite missing deps: Cabal-QuickCheck Cabal-tree-diff tasty-golden tree-diff Cabal-described tasty-expected-failure Name: %{pkg_name} -Version: 3.8.1.0 +Version: 3.10.3.0 # can only be reset when subpkg bumped -Release: 8%{?dist} +Release: 1%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -25,13 +25,6 @@ Source1: https://hackage.haskell.org/package/%{cabalinstallsolver}/%{caba Source2: https://hackage.haskell.org/package/%{pkgver}/%{name}.cabal#/%{pkgver}.cabal # End cabal-rpm sources Source10: cabal-install.sh -# https://github.com/haskell/cabal/issues/8923 -Patch0: cabal-install-solver-pkgconfig-modversion.patch -# https://github.com/haskell/cabal/issues/8589: prevent cabal update making dist-newstyle -## https://github.com/haskell/cabal/pull/8358 -Patch1: https://patch-diff.githubusercontent.com/raw/haskell/cabal/pull/8358.patch -## https://github.com/haskell/cabal/pull/8627 -Patch2: https://patch-diff.githubusercontent.com/raw/haskell/cabal/pull/8627.patch # Begin cabal-rpm deps: BuildRequires: dos2unix @@ -191,17 +184,6 @@ This package provides the Haskell %{name} profiling library. %setup -q -a1 dos2unix -k -n %{SOURCE2} %{name}.cabal # End cabal-rpm setup -cabal-tweak-dep-ver resolv 0.2 0.3 -( -cd %{cabalinstallsolver} -cabal-tweak-dep-ver base 4.17 4.18 -) -%global pkgconf_version %(pkgconf --version) -%if v"%pkgconf_version" > v"1.9" && v"%pkgconf_version" < v"2.0" -%patch -P0 -p0 -b .orig -%endif -%patch -P1 -p2 -b .orig -%patch -P2 -p2 -b .orig %build @@ -254,6 +236,12 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Sun Jul 21 2024 Jens Petersen - 3.10.3.0-1 +- https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.1.0.md +- https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.2.0.md +- https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.2.1.md +- https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.3.0.md + * Wed Jul 17 2024 Fedora Release Engineering - 3.8.1.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild diff --git a/sources b/sources index 0ed172d..aff1f29 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (cabal-install-3.8.1.0.tar.gz) = 850267c8b255f1658beea2ff81d025e80f0a78902d32684a047fdc9347fe0893ccbdf60a00dbb5bb0339e3d1ddefb0f94e31273808c6b72de23fb1340fa74ae4 -SHA512 (cabal-install-solver-3.8.1.0.tar.gz) = be54abffc32a3b35bed0d69df5ff9394271f2746efc45a931df5677a7c1bd1e5e303118f695a942a196c2b57ecef0be973bce97b26b3e1696e46676d376f8edf +SHA512 (cabal-install-3.10.3.0.tar.gz) = e004dfc05903316c3264aa7a056d287e25f0589fa9adea2e93114e1750f3ae9774177b5d274c78fee37b6ba4bd5c03455d72437258b168607c2a81856ef06ddb +SHA512 (cabal-install-solver-3.10.3.0.tar.gz) = e8dcd0aaeb06ba5192536e3f51550bfa5239ca9377ae21c36dea377f79c28fe2c249381fb648f304d84d9a93c7b93793f44de23262ea907f710b28f7f548d13a From 07ffadc1b4fac76c5a334df46c3dfc5df3d3de3e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 13:09:44 +0000 Subject: [PATCH 07/11] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- cabal-install.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index eb829b5..1ec5512 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -14,7 +14,7 @@ Name: %{pkg_name} Version: 3.10.3.0 # can only be reset when subpkg bumped -Release: 1%{?dist} +Release: 2%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -236,6 +236,9 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 3.10.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sun Jul 21 2024 Jens Petersen - 3.10.3.0-1 - https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.1.0.md - https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.2.0.md From bc5f5a6c6d549c2e80a895d16efc59cf8a8b7f7b Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sat, 1 Feb 2025 16:39:18 +0800 Subject: [PATCH 08/11] cabal-rpm-2.2.2 --- cabal-install.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cabal-install.spec b/cabal-install.spec index 1ec5512..0e30a11 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -1,4 +1,4 @@ -# generated by cabal-rpm-2.2.1 --subpackage +# generated by cabal-rpm-2.2.2 --subpackage # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name cabal-install @@ -18,7 +18,7 @@ Release: 2%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause -Url: https://hackage.haskell.org/package/%{name} +Url: https://hackage.haskell.org/package/cabal-install # Begin cabal-rpm sources: Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz Source1: https://hackage.haskell.org/package/%{cabalinstallsolver}/%{cabalinstallsolver}.tar.gz From 1c0917c6f2f195b906a258d35c1077f2fd52382e Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sun, 23 Feb 2025 20:39:55 +0800 Subject: [PATCH 09/11] cabal-rpm-2.3.0 --- cabal-install.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cabal-install.spec b/cabal-install.spec index 0e30a11..1cb04a9 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -1,4 +1,4 @@ -# generated by cabal-rpm-2.2.2 --subpackage +# generated by cabal-rpm-2.3.0 --subpackage # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name cabal-install @@ -18,7 +18,7 @@ Release: 2%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause -Url: https://hackage.haskell.org/package/cabal-install +URL: https://hackage.haskell.org/package/cabal-install # Begin cabal-rpm sources: Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz Source1: https://hackage.haskell.org/package/%{cabalinstallsolver}/%{cabalinstallsolver}.tar.gz From e4f28b3fe0d41251e9cd638670a95321e2b47b9a Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sun, 30 Mar 2025 23:01:01 +0800 Subject: [PATCH 10/11] Bump release --- cabal-install.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index 1cb04a9..911c014 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -14,7 +14,7 @@ Name: %{pkg_name} Version: 3.10.3.0 # can only be reset when subpkg bumped -Release: 2%{?dist} +Release: 3%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -236,6 +236,9 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Sun Mar 30 2025 Jens Petersen - 3.10.3.0-3 +- Rebuild + * Thu Jan 16 2025 Fedora Release Engineering - 3.10.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 5cd21a1cab413bb457b8f05f17f24cf842ac0ff6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 18:01:27 +0000 Subject: [PATCH 11/11] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- cabal-install.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cabal-install.spec b/cabal-install.spec index 911c014..f27098f 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -14,7 +14,7 @@ Name: %{pkg_name} Version: 3.10.3.0 # can only be reset when subpkg bumped -Release: 3%{?dist} +Release: 4%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -236,6 +236,9 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 3.10.3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sun Mar 30 2025 Jens Petersen - 3.10.3.0-3 - Rebuild