From 5032ed775f2aec0ab0ee1d3c5504467bab72346b Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Tue, 18 Jul 2023 17:28:19 +0800 Subject: [PATCH 01/22] remove obsolete patch for sdist file perms --- ...69918260a7bb3f0cb0698eaeaeb6dae2c4f6.patch | 38 ------------------- cabal-install.spec | 3 -- 2 files changed, 41 deletions(-) delete mode 100644 442869918260a7bb3f0cb0698eaeaeb6dae2c4f6.patch diff --git a/442869918260a7bb3f0cb0698eaeaeb6dae2c4f6.patch b/442869918260a7bb3f0cb0698eaeaeb6dae2c4f6.patch deleted file mode 100644 index 0c4e6af..0000000 --- a/442869918260a7bb3f0cb0698eaeaeb6dae2c4f6.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 442869918260a7bb3f0cb0698eaeaeb6dae2c4f6 Mon Sep 17 00:00:00 2001 -From: Alexis Williams -Date: Sat, 21 Dec 2019 09:50:12 -0800 -Subject: [PATCH] Fix `v2-sdist` permissions - -Fixes #5813. ---- - cabal-install/Distribution/Client/CmdSdist.hs | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/cabal-install/Distribution/Client/CmdSdist.hs b/cabal-install/Distribution/Client/CmdSdist.hs -index 55d01ad24a..218da6b720 100644 ---- a/cabal-install/src/Distribution/Client/CmdSdist.hs -+++ b/cabal-install/stc/Distribution/Client/CmdSdist.hs -@@ -75,7 +75,8 @@ import Data.List - import qualified Data.Set as Set - import System.Directory - ( getCurrentDirectory, setCurrentDirectory -- , createDirectoryIfMissing, makeAbsolute ) -+ , createDirectoryIfMissing, makeAbsolute -+ , getPermissions, executable ) - import System.FilePath - ( (), (<.>), makeRelative, normalise, takeDirectory ) - -@@ -281,10 +282,11 @@ packageToSdist verbosity projectRootDir format outputFile pkg = do - Right path -> tell [Tar.directoryEntry path] - - for_ files $ \(perm, file) -> do -+ realPerm <- liftIO $ getPermissions file - let fileDir = takeDirectory (prefix file) - perm' = case perm of -- Exec -> Tar.executableFilePermissions -- NoExec -> Tar.ordinaryFilePermissions -+ Exec | executable realPerm -> Tar.executableFilePermissions -+ _ -> Tar.ordinaryFilePermissions - needsEntry <- gets (Set.notMember fileDir) - - when needsEntry $ do diff --git a/cabal-install.spec b/cabal-install.spec index 94c8063..fa8991e 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -13,8 +13,6 @@ Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-% Source1: https://hackage.haskell.org/package/%{name}-%{version}/%{name}.cabal#/%{name}-%{version}.cabal # End cabal-rpm sources Source10: cabal-install.sh -# backport sdist fix from https://github.com/haskell/cabal/issues/5813 -#Patch0: https://github.com/haskell/cabal/commit/442869918260a7bb3f0cb0698eaeaeb6dae2c4f6.patch # Begin cabal-rpm deps: BuildRequires: dos2unix @@ -78,7 +76,6 @@ installation of Haskell libraries and programs. %setup -q dos2unix -k -n %{SOURCE1} %{name}.cabal # End cabal-rpm setup -#%%patch0 -p2 -b .sdist %build From da674c2eb18240c7ff3fc1bf26520d828dcc3639 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Tue, 18 Jul 2023 17:31:10 +0800 Subject: [PATCH 02/22] Convert to %autorelease and %autochangelog [skip changelog] --- cabal-install.spec | 283 +-------------------------------------------- changelog | 280 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 282 insertions(+), 281 deletions(-) create mode 100644 changelog diff --git a/cabal-install.spec b/cabal-install.spec index fa8991e..c3d4050 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -3,7 +3,7 @@ Name: cabal-install Version: 3.6.2.0 -Release: 1%{?dist} +Release: %autorelease Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -105,283 +105,4 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog -* Sun Jan 22 2023 Jens Petersen - 3.6.2.0-1 -- https://hackage.haskell.org/package/cabal-install-3.6.2.0/changelog -- refresh to cabal-rpm-2.1.0 with SPDX migration - -* Fri Sep 16 2022 Jens Petersen - 3.2.0.0-9 -- revert recommending ghcX.Y - -* Wed Jul 20 2022 Fedora Release Engineering - 3.2.0.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Jun 17 2022 Jens Petersen - 3.2.0.0-7 -- rebuild - -* Sat Apr 30 2022 Jens Petersen - 3.2.0.0-6 -- recommend ghc or ghcX.Y - -* Thu Apr 21 2022 Jens Petersen - 3.2.0.0-5 -- drop the strict requires on ghc-compiler to allow ghcX.Y-compiler-default - -* Wed Jan 19 2022 Fedora Release Engineering - 3.2.0.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Sat Jan 08 2022 Miro Hrončok - 3.2.0.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34 - -* Thu Sep 9 2021 Jens Petersen - 3.2.0.0-2 -- recommends zlib-devel for convenience -- fix the sdist file permissions patch to compile in 3.2 - -* Thu Aug 5 2021 Jens Petersen - 3.2.0.0-1 -- update to 3.2.0.0 - -* Wed Jul 21 2021 Fedora Release Engineering - 3.0.0.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jan 26 2021 Fedora Release Engineering - 3.0.0.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Dec 12 2020 Jens Petersen - 3.0.0.0-3 -- Recommends ghc (thanks Tristan de Cacqueray,#1) - -* Mon Jul 27 2020 Fedora Release Engineering - 3.0.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 07 2020 Jens Petersen - 3.0.0.0-1 -- update to 3.0.0.0 - -* Tue Apr 14 2020 Jens Petersen - 2.4.1.0-2 -- backport new-sdist upstream fix for doc file permissions - (https://github.com/haskell/cabal/issues/5813) - -* Sun Feb 09 2020 Jens Petersen - 2.4.1.0-1 -- update to 2.4.1.0 - -* Tue Jan 28 2020 Fedora Release Engineering - 2.4.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Jul 25 2019 Jens Petersen - 2.4.1.0-1 -- update to 2.4.1.0 - -* Wed Jul 24 2019 Fedora Release Engineering - 2.2.0.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu May 9 2019 fedora-toolbox - 2.2.0.0-3 -- rebuild - -* Tue Apr 9 2019 Jens Petersen - 2.2.0.0-2 -- resolv is now packaged - -* Thu Feb 21 2019 Jens Petersen - 2.2.0.0-1 -- update to 2.2.0.0 -- subpackage resolv dep -- install bash-completion file under datadir (Chris King-Parra, #1683879) - -* Sun Feb 17 2019 Jens Petersen - 2.0.0.1-12 -- refresh to cabal-rpm-0.13 - -* Thu Jan 31 2019 Fedora Release Engineering - 2.0.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Dec 14 2018 Jens Petersen - 2.0.0.1-10 -- drop the rpmlint whitelist of ghc-Cabal-devel again since no longer Requires - -* Thu Nov 22 2018 Jens Petersen - 2.0.0.1-9 -- require bind-utils for nslookup used for secure mirror dns lookup - -* Wed Nov 21 2018 Jens Petersen - 2.0.0.1-8 -- no longer requires ghc-Cabal-devel - -* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-7 -- rebuild - -* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-6 -- link cabal statically to its Haskell deps for ghc modules portability - -* Sat Jul 28 2018 Jens Petersen - 2.0.0.1-5 -- revise .cabal - -* Thu Jul 12 2018 Fedora Release Engineering - 2.0.0.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Feb 23 2018 Jens Petersen - 2.0.0.1-3 -- unbundle echo library - -* Wed Feb 07 2018 Fedora Release Engineering - 2.0.0.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Wed Jan 24 2018 Jens Petersen - 2.0.0.1-1 -- update to 2.0.0.1 -- subpackage new echo dep - -* Sat Oct 21 2017 Jens Petersen - 1.24.0.2-6 -- the bundled libraries are now packaged in Fedora - -* Wed Aug 02 2017 Fedora Release Engineering - 1.24.0.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1.24.0.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Wed May 24 2017 Jens Petersen - 1.24.0.2-3 -- set manpage permission to 0644 - -* Wed Apr 26 2017 Jens Petersen - 1.24.0.2-2 -- requires ghc-Cabal-devel (Matej Smid, #1445210) - -* Wed Feb 22 2017 Jens Petersen - 1.24.0.2-1 -- update to 1.24.0.2 - -* Fri Feb 10 2017 Fedora Release Engineering - 1.22.9.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Sat Jan 21 2017 Jens Petersen - 1.22.9.0-2 -- drop static and common subpackages - -* Sun Jun 26 2016 Jens Petersen - 1.22.9.0-1 -- update to 1.22.9.0 - -* Mon Jun 6 2016 Jens Petersen - 1.22.6.0-1 -- update to 1.22.6.0 - -* Wed Feb 03 2016 Fedora Release Engineering - 1.18.1.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Jun 17 2015 Fedora Release Engineering - 1.18.1.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Wed May 13 2015 Jens Petersen - 1.18.1.0-1 -- security version update for upload command - -* Thu Apr 2 2015 Jens Petersen - 1.18.0.8-1 -- update to 1.18.0.8 - -* Thu Aug 7 2014 Jens Petersen - 1.18.0.5-1 -- update to 1.18.0.5 -- obsolete cabal-dev -- add static and common subpackages - -* Tue Jul 8 2014 Jens Petersen - 1.16.0.2-35 -- f21 rebuild - -* Fri Apr 18 2014 Jens Petersen - 1.16.0.2-34 -- bump release over haskell-platform - -* Thu Apr 17 2014 Jens Petersen - 1.16.0.2-32 -- mark bash_completion.d and profile.d files as config (#1069062) -- require filesystem and setup to own the sysconfig dirs (#1069062) - -* Mon Feb 24 2014 Jens Petersen - 1.16.0.2-31 -- update to 1.16.0.2 -- split out of haskell-platform (#1069062) -- only show cabal-install upgrade notice for verbose - -* Tue May 8 2012 Jens Petersen - 0.14.0-1 -- update to 0.14.0 release - -* Tue Mar 20 2012 Jens Petersen - 0.13.3-0.1 -- update to latest darcs - -* Thu Jan 12 2012 Fedora Release Engineering - 0.10.2-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Wed Dec 28 2011 Jens Petersen - 0.10.2-6 -- rebuild for haskell-platform-2011.4.0.0 - -* Fri Dec 16 2011 Jens Petersen - 0.10.2-5 -- bring back requires ghc-compiler (Stanislav Ochotnicky, #760461) - -* Thu Oct 20 2011 Marcela Mašláňová - 0.10.2-4.2 -- rebuild with new gmp without compat lib - -* Mon Oct 10 2011 Peter Schiffer - 0.10.2-4.1 -- rebuild with new gmp - -* Tue Jun 21 2011 Jens Petersen - 0.10.2-4 -- ghc_arches replaces ghc_excluded_archs - -* Mon Jun 20 2011 Jens Petersen - 0.10.2-3 -- BR ghc-Cabal-devel and use ghc_excluded_archs -- drop ghc requires to allow local ghc - -* Wed May 25 2011 Jens Petersen - 0.10.2-2 -- add ppc64 - -* Fri Mar 11 2011 Jens Petersen - 0.10.2-1 -- update to 0.10.2 - -* Thu Mar 10 2011 Fabio M. Di Nitto - 0.9.6-0.2 -- Enable build on sparcv9 - -* Tue Feb 15 2011 Jens Petersen - 0.9.6-0.1 -- update to 0.9.6 pre snapshot - -* Tue Feb 15 2011 Jens Petersen - 0.9.5-0.5 -- rebuild for haskell-platform-2011.1 updates - -* Tue Feb 08 2011 Fedora Release Engineering - 0.9.5-0.4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Sun Jan 23 2011 Jens Petersen - 0.9.5-0.3 -- update to cabal2spec-0.22.4 -- BR ghc-devel - -* Sun Dec 5 2010 Jens Petersen - 0.9.5-0.2 -- rebuild with HTTP-4000.1.1 - -* Thu Nov 25 2010 Jens Petersen - 0.9.5-0.1 -- update to current 0.9.5 snapshot - -* Fri Jul 16 2010 Jens Petersen - 0.8.2-1 -- update to 0.8.2 for haskell-platform-2010.2.0.0 - -* Sun Jun 27 2010 Jens Petersen - 0.8.0-5 -- sync cabal2spec-0.22.1 - -* Wed May 19 2010 Jens Petersen - 0.8.0-4 -- append ~/.cabal/bin to PATH (if dir exists) with new - /etc/profile.d/cabal-install.sh (#509699) - -* Tue Apr 27 2010 Jens Petersen - 0.8.0-3 -- rebuild against ghc-6.12.2 - -* Tue Mar 23 2010 Jens Petersen - 0.8.0-2 -- rebuild against HTTP-4000.0.9 for haskell-platform-2010.1.0.0 - -* Mon Jan 11 2010 Jens Petersen - 0.8.0-1 -- update to 0.8.0 for ghc-6.12.1 -- add dynamic bcond -- drop redundant buildroot and its install cleaning - -* Wed Sep 16 2009 Jens Petersen - 0.6.2-6 -- really rebuild - -* Fri Jul 24 2009 Fedora Release Engineering - 0.6.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Sun May 17 2009 Jens Petersen - 0.6.2-4 -- buildrequires ghc-rpm-macros (cabal-0.16) - -* Sun Apr 26 2009 Jens Petersen - 0.6.2-3 -- rebuild against ghc-6.10.2 - -* Fri Feb 27 2009 Jens Petersen - 0.6.2-2 -- update for cabal2spec-0.11: -- use global -- fix source url -- add ix86 and alpha archs - -* Mon Feb 23 2009 Jens Petersen - 0.6.2-1 -- update to 0.6.2 release - -* Mon Feb 9 2009 Jens Petersen - 0.6.0-3 -- fix source url - -* Wed Jan 7 2009 Jens Petersen - 0.6.0-2 -- add bash completion file -- update cabal build macro - -* Tue Nov 11 2008 Jens Petersen - 0.6.0-1 -- initial package for Fedora +%autochangelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..3c90f50 --- /dev/null +++ b/changelog @@ -0,0 +1,280 @@ +* Sun Jan 22 2023 Jens Petersen - 3.6.2.0-1 +- https://hackage.haskell.org/package/cabal-install-3.6.2.0/changelog +- refresh to cabal-rpm-2.1.0 with SPDX migration + +* Fri Sep 16 2022 Jens Petersen - 3.2.0.0-9 +- revert recommending ghcX.Y + +* Wed Jul 20 2022 Fedora Release Engineering - 3.2.0.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Fri Jun 17 2022 Jens Petersen - 3.2.0.0-7 +- rebuild + +* Sat Apr 30 2022 Jens Petersen - 3.2.0.0-6 +- recommend ghc or ghcX.Y + +* Thu Apr 21 2022 Jens Petersen - 3.2.0.0-5 +- drop the strict requires on ghc-compiler to allow ghcX.Y-compiler-default + +* Wed Jan 19 2022 Fedora Release Engineering - 3.2.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Sat Jan 08 2022 Miro Hrončok - 3.2.0.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34 + +* Thu Sep 9 2021 Jens Petersen - 3.2.0.0-2 +- recommends zlib-devel for convenience +- fix the sdist file permissions patch to compile in 3.2 + +* Thu Aug 5 2021 Jens Petersen - 3.2.0.0-1 +- update to 3.2.0.0 + +* Wed Jul 21 2021 Fedora Release Engineering - 3.0.0.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 3.0.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Dec 12 2020 Jens Petersen - 3.0.0.0-3 +- Recommends ghc (thanks Tristan de Cacqueray,#1) + +* Mon Jul 27 2020 Fedora Release Engineering - 3.0.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 07 2020 Jens Petersen - 3.0.0.0-1 +- update to 3.0.0.0 + +* Tue Apr 14 2020 Jens Petersen - 2.4.1.0-2 +- backport new-sdist upstream fix for doc file permissions + (https://github.com/haskell/cabal/issues/5813) + +* Sun Feb 09 2020 Jens Petersen - 2.4.1.0-1 +- update to 2.4.1.0 + +* Tue Jan 28 2020 Fedora Release Engineering - 2.4.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Jul 25 2019 Jens Petersen - 2.4.1.0-1 +- update to 2.4.1.0 + +* Wed Jul 24 2019 Fedora Release Engineering - 2.2.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu May 9 2019 fedora-toolbox - 2.2.0.0-3 +- rebuild + +* Tue Apr 9 2019 Jens Petersen - 2.2.0.0-2 +- resolv is now packaged + +* Thu Feb 21 2019 Jens Petersen - 2.2.0.0-1 +- update to 2.2.0.0 +- subpackage resolv dep +- install bash-completion file under datadir (Chris King-Parra, #1683879) + +* Sun Feb 17 2019 Jens Petersen - 2.0.0.1-12 +- refresh to cabal-rpm-0.13 + +* Thu Jan 31 2019 Fedora Release Engineering - 2.0.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Dec 14 2018 Jens Petersen - 2.0.0.1-10 +- drop the rpmlint whitelist of ghc-Cabal-devel again since no longer Requires + +* Thu Nov 22 2018 Jens Petersen - 2.0.0.1-9 +- require bind-utils for nslookup used for secure mirror dns lookup + +* Wed Nov 21 2018 Jens Petersen - 2.0.0.1-8 +- no longer requires ghc-Cabal-devel + +* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-7 +- rebuild + +* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-6 +- link cabal statically to its Haskell deps for ghc modules portability + +* Sat Jul 28 2018 Jens Petersen - 2.0.0.1-5 +- revise .cabal + +* Thu Jul 12 2018 Fedora Release Engineering - 2.0.0.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 23 2018 Jens Petersen - 2.0.0.1-3 +- unbundle echo library + +* Wed Feb 07 2018 Fedora Release Engineering - 2.0.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Jan 24 2018 Jens Petersen - 2.0.0.1-1 +- update to 2.0.0.1 +- subpackage new echo dep + +* Sat Oct 21 2017 Jens Petersen - 1.24.0.2-6 +- the bundled libraries are now packaged in Fedora + +* Wed Aug 02 2017 Fedora Release Engineering - 1.24.0.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.24.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed May 24 2017 Jens Petersen - 1.24.0.2-3 +- set manpage permission to 0644 + +* Wed Apr 26 2017 Jens Petersen - 1.24.0.2-2 +- requires ghc-Cabal-devel (Matej Smid, #1445210) + +* Wed Feb 22 2017 Jens Petersen - 1.24.0.2-1 +- update to 1.24.0.2 + +* Fri Feb 10 2017 Fedora Release Engineering - 1.22.9.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Sat Jan 21 2017 Jens Petersen - 1.22.9.0-2 +- drop static and common subpackages + +* Sun Jun 26 2016 Jens Petersen - 1.22.9.0-1 +- update to 1.22.9.0 + +* Mon Jun 6 2016 Jens Petersen - 1.22.6.0-1 +- update to 1.22.6.0 + +* Wed Feb 03 2016 Fedora Release Engineering - 1.18.1.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 1.18.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed May 13 2015 Jens Petersen - 1.18.1.0-1 +- security version update for upload command + +* Thu Apr 2 2015 Jens Petersen - 1.18.0.8-1 +- update to 1.18.0.8 + +* Thu Aug 7 2014 Jens Petersen - 1.18.0.5-1 +- update to 1.18.0.5 +- obsolete cabal-dev +- add static and common subpackages + +* Tue Jul 8 2014 Jens Petersen - 1.16.0.2-35 +- f21 rebuild + +* Fri Apr 18 2014 Jens Petersen - 1.16.0.2-34 +- bump release over haskell-platform + +* Thu Apr 17 2014 Jens Petersen - 1.16.0.2-32 +- mark bash_completion.d and profile.d files as config (#1069062) +- require filesystem and setup to own the sysconfig dirs (#1069062) + +* Mon Feb 24 2014 Jens Petersen - 1.16.0.2-31 +- update to 1.16.0.2 +- split out of haskell-platform (#1069062) +- only show cabal-install upgrade notice for verbose + +* Tue May 8 2012 Jens Petersen - 0.14.0-1 +- update to 0.14.0 release + +* Tue Mar 20 2012 Jens Petersen - 0.13.3-0.1 +- update to latest darcs + +* Thu Jan 12 2012 Fedora Release Engineering - 0.10.2-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Wed Dec 28 2011 Jens Petersen - 0.10.2-6 +- rebuild for haskell-platform-2011.4.0.0 + +* Fri Dec 16 2011 Jens Petersen - 0.10.2-5 +- bring back requires ghc-compiler (Stanislav Ochotnicky, #760461) + +* Thu Oct 20 2011 Marcela Mašláňová - 0.10.2-4.2 +- rebuild with new gmp without compat lib + +* Mon Oct 10 2011 Peter Schiffer - 0.10.2-4.1 +- rebuild with new gmp + +* Tue Jun 21 2011 Jens Petersen - 0.10.2-4 +- ghc_arches replaces ghc_excluded_archs + +* Mon Jun 20 2011 Jens Petersen - 0.10.2-3 +- BR ghc-Cabal-devel and use ghc_excluded_archs +- drop ghc requires to allow local ghc + +* Wed May 25 2011 Jens Petersen - 0.10.2-2 +- add ppc64 + +* Fri Mar 11 2011 Jens Petersen - 0.10.2-1 +- update to 0.10.2 + +* Thu Mar 10 2011 Fabio M. Di Nitto - 0.9.6-0.2 +- Enable build on sparcv9 + +* Tue Feb 15 2011 Jens Petersen - 0.9.6-0.1 +- update to 0.9.6 pre snapshot + +* Tue Feb 15 2011 Jens Petersen - 0.9.5-0.5 +- rebuild for haskell-platform-2011.1 updates + +* Tue Feb 08 2011 Fedora Release Engineering - 0.9.5-0.4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sun Jan 23 2011 Jens Petersen - 0.9.5-0.3 +- update to cabal2spec-0.22.4 +- BR ghc-devel + +* Sun Dec 5 2010 Jens Petersen - 0.9.5-0.2 +- rebuild with HTTP-4000.1.1 + +* Thu Nov 25 2010 Jens Petersen - 0.9.5-0.1 +- update to current 0.9.5 snapshot + +* Fri Jul 16 2010 Jens Petersen - 0.8.2-1 +- update to 0.8.2 for haskell-platform-2010.2.0.0 + +* Sun Jun 27 2010 Jens Petersen - 0.8.0-5 +- sync cabal2spec-0.22.1 + +* Wed May 19 2010 Jens Petersen - 0.8.0-4 +- append ~/.cabal/bin to PATH (if dir exists) with new + /etc/profile.d/cabal-install.sh (#509699) + +* Tue Apr 27 2010 Jens Petersen - 0.8.0-3 +- rebuild against ghc-6.12.2 + +* Tue Mar 23 2010 Jens Petersen - 0.8.0-2 +- rebuild against HTTP-4000.0.9 for haskell-platform-2010.1.0.0 + +* Mon Jan 11 2010 Jens Petersen - 0.8.0-1 +- update to 0.8.0 for ghc-6.12.1 +- add dynamic bcond +- drop redundant buildroot and its install cleaning + +* Wed Sep 16 2009 Jens Petersen - 0.6.2-6 +- really rebuild + +* Fri Jul 24 2009 Fedora Release Engineering - 0.6.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sun May 17 2009 Jens Petersen - 0.6.2-4 +- buildrequires ghc-rpm-macros (cabal-0.16) + +* Sun Apr 26 2009 Jens Petersen - 0.6.2-3 +- rebuild against ghc-6.10.2 + +* Fri Feb 27 2009 Jens Petersen - 0.6.2-2 +- update for cabal2spec-0.11: +- use global +- fix source url +- add ix86 and alpha archs + +* Mon Feb 23 2009 Jens Petersen - 0.6.2-1 +- update to 0.6.2 release + +* Mon Feb 9 2009 Jens Petersen - 0.6.0-3 +- fix source url + +* Wed Jan 7 2009 Jens Petersen - 0.6.0-2 +- add bash completion file +- update cabal build macro + +* Tue Nov 11 2008 Jens Petersen - 0.6.0-1 +- initial package for Fedora From c594a52d249b84311a5fa8364926538c2ca2ca79 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sun, 23 Jul 2023 14:57:46 +0800 Subject: [PATCH 03/22] https://hackage.haskell.org/package/cabal-install-3.8.1.0/changelog --- .gitignore | 1 + ...6.2.0.cabal => cabal-install-3.8.1.0.cabal | 355 +++++++++++------- cabal-install.spec | 2 +- sources | 2 +- 4 files changed, 225 insertions(+), 135 deletions(-) rename cabal-install-3.6.2.0.cabal => cabal-install-3.8.1.0.cabal (50%) diff --git a/.gitignore b/.gitignore index 2c86045..7733d71 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ cabal-install-0.8.2.tar.gz /cabal-install-3.0.0.0.tar.gz /cabal-install-3.2.0.0.tar.gz /cabal-install-3.6.2.0.tar.gz +/cabal-install-3.8.1.0.tar.gz diff --git a/cabal-install-3.6.2.0.cabal b/cabal-install-3.8.1.0.cabal similarity index 50% rename from cabal-install-3.6.2.0.cabal rename to cabal-install-3.8.1.0.cabal index 832e164..b43aa25 100644 --- a/cabal-install-3.6.2.0.cabal +++ b/cabal-install-3.8.1.0.cabal @@ -1,11 +1,8 @@ -Cabal-Version: >= 1.10 --- NOTE: This file is autogenerated from 'cabal-install.cabal.pp'. --- DO NOT EDIT MANUALLY. --- To update this file, edit 'cabal-install.cabal.pp' and run --- 'make cabal-install-prod' in the project's root folder. +Cabal-Version: 2.2 + Name: cabal-install -Version: 3.6.2.0 -x-revision: 2 +Version: 3.8.1.0 +x-revision: 3 Synopsis: The command-line interface for Cabal and Hackage. Description: The \'cabal\' command-line program simplifies the process of managing @@ -13,15 +10,17 @@ Description: and installation of Haskell libraries and programs. homepage: http://www.haskell.org/cabal/ bug-reports: https://github.com/haskell/cabal/issues -License: BSD3 +License: BSD-3-Clause License-File: LICENSE Author: Cabal Development Team (see AUTHORS file) Maintainer: Cabal Development Team -Copyright: 2003-2020, Cabal Development Team +Copyright: 2003-2022, Cabal Development Team Category: Distribution Build-type: Simple Extra-Source-Files: - README.md bash-completion/cabal changelog + README.md + bash-completion/cabal + changelog source-repository head type: git @@ -29,52 +28,42 @@ source-repository head subdir: cabal-install Flag native-dns - description: Enable use of the [resolv](https://hackage.haskell.org/package/resolv) & [windns](https://hackage.haskell.org/package/windns) packages for performing DNS lookups + description: + Enable use of the [resolv](https://hackage.haskell.org/package/resolv) + & [windns](https://hackage.haskell.org/package/windns) packages for performing DNS lookups default: True manual: True -Flag debug-expensive-assertions - description: Enable expensive assertions for testing or debugging - default: False - manual: True - -Flag debug-conflict-sets - description: Add additional information to ConflictSets - default: False - manual: True - -Flag debug-tracetree - description: Compile in support for tracetree (used to debug the solver) - default: False - manual: True - Flag lukko description: Use @lukko@ for file-locking default: True manual: True -executable cabal - main-is: Main.hs - hs-source-dirs: main +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) + ghc-options: -Wunused-packages + +common base-dep + build-depends: base >=4.10 && <4.18 + +common cabal-dep + build-depends: Cabal ^>=3.8 + +common cabal-syntax-dep + build-depends: Cabal-syntax ^>=3.8 + +common cabal-install-solver-dep + build-depends: cabal-install-solver ^>=3.8 + +library + import: warnings, base-dep, cabal-dep, cabal-syntax-dep, cabal-install-solver-dep default-language: Haskell2010 - ghc-options: -Wall -fwarn-tabs -fwarn-incomplete-uni-patterns -fwarn-incomplete-record-updates - if impl(ghc >= 8.0) - ghc-options: -Wcompat - -Wnoncanonical-monad-instances - if impl(ghc < 8.8) - ghc-options: -Wnoncanonical-monadfail-instances - if impl(ghc >=8.10) - ghc-options: -Wunused-packages - - - ghc-options: -rtsopts -threaded - - -- On AIX, some legacy BSD operations such as flock(2) are provided by libbsd.a - if os(aix) - extra-libraries: bsd - hs-source-dirs: src - other-modules: + hs-source-dirs: src + exposed-modules: -- this modules are moved from Cabal -- they are needed for as long until cabal-install moves to parsec parser Distribution.Deprecated.ParseUtils @@ -100,6 +89,7 @@ executable cabal Distribution.Client.CmdInstall.ClientInstallTargetSelector Distribution.Client.CmdLegacy Distribution.Client.CmdListBin + Distribution.Client.CmdOutdated Distribution.Client.CmdRepl Distribution.Client.CmdRun Distribution.Client.CmdSdist @@ -107,7 +97,6 @@ executable cabal Distribution.Client.CmdUpdate Distribution.Client.Compat.Directory Distribution.Client.Compat.ExecutablePath - Distribution.Client.Compat.FilePerms Distribution.Client.Compat.Orphans Distribution.Client.Compat.Prelude Distribution.Client.Compat.Process @@ -134,12 +123,16 @@ executable cabal Distribution.Client.IndexUtils.IndexState Distribution.Client.IndexUtils.Timestamp Distribution.Client.Init - Distribution.Client.Init.Command Distribution.Client.Init.Defaults Distribution.Client.Init.FileCreators - Distribution.Client.Init.Heuristics + Distribution.Client.Init.FlagExtractors + Distribution.Client.Init.Format + Distribution.Client.Init.Interactive.Command + Distribution.Client.Init.NonInteractive.Command + Distribution.Client.Init.NonInteractive.Heuristics Distribution.Client.Init.Licenses Distribution.Client.Init.Prompt + Distribution.Client.Init.Simple Distribution.Client.Init.Types Distribution.Client.Init.Utils Distribution.Client.Install @@ -151,7 +144,6 @@ executable cabal Distribution.Client.ManpageFlags Distribution.Client.Nix Distribution.Client.NixStyleOptions - Distribution.Client.Outdated Distribution.Client.PackageHash Distribution.Client.ParseUtils Distribution.Client.ProjectBuilding @@ -170,6 +162,7 @@ executable cabal Distribution.Client.Sandbox Distribution.Client.Sandbox.PackageEnvironment Distribution.Client.SavedFlags + Distribution.Client.ScriptUtils Distribution.Client.Security.DNS Distribution.Client.Security.HTTP Distribution.Client.Setup @@ -203,103 +196,40 @@ executable cabal Distribution.Client.Utils.Json Distribution.Client.Utils.Parsec Distribution.Client.VCS + Distribution.Client.Version Distribution.Client.Win32SelfUpgrade - Distribution.Client.World - - hs-source-dirs: cabal-install-solver/src-assertion - other-modules: - Distribution.Client.Utils.Assertion - - hs-source-dirs: cabal-install-solver/src - other-modules: - Distribution.Solver.Compat.Prelude - Distribution.Solver.Modular - Distribution.Solver.Modular.Assignment - Distribution.Solver.Modular.Builder - Distribution.Solver.Modular.Configured - Distribution.Solver.Modular.ConfiguredConversion - Distribution.Solver.Modular.ConflictSet - Distribution.Solver.Modular.Cycles - Distribution.Solver.Modular.Dependency - Distribution.Solver.Modular.Explore - Distribution.Solver.Modular.Flag - Distribution.Solver.Modular.Index - Distribution.Solver.Modular.IndexConversion - Distribution.Solver.Modular.LabeledGraph - Distribution.Solver.Modular.Linking - Distribution.Solver.Modular.Log - Distribution.Solver.Modular.Message - Distribution.Solver.Modular.PSQ - Distribution.Solver.Modular.Package - Distribution.Solver.Modular.Preference - Distribution.Solver.Modular.RetryLog - Distribution.Solver.Modular.Solver - Distribution.Solver.Modular.Tree - Distribution.Solver.Modular.Validate - Distribution.Solver.Modular.Var - Distribution.Solver.Modular.Version - Distribution.Solver.Modular.WeightedPSQ - Distribution.Solver.Types.ComponentDeps - Distribution.Solver.Types.ConstraintSource - Distribution.Solver.Types.DependencyResolver - Distribution.Solver.Types.Flag - Distribution.Solver.Types.InstSolverPackage - Distribution.Solver.Types.InstalledPreference - Distribution.Solver.Types.LabeledPackageConstraint - Distribution.Solver.Types.OptionalStanza - Distribution.Solver.Types.PackageConstraint - Distribution.Solver.Types.PackageFixedDeps - Distribution.Solver.Types.PackageIndex - Distribution.Solver.Types.PackagePath - Distribution.Solver.Types.PackagePreferences - Distribution.Solver.Types.PkgConfigDb - Distribution.Solver.Types.Progress - Distribution.Solver.Types.ResolverPackage - Distribution.Solver.Types.Settings - Distribution.Solver.Types.SolverId - Distribution.Solver.Types.SolverPackage - Distribution.Solver.Types.SourcePackage - Distribution.Solver.Types.Variable - - other-modules: - Paths_cabal_install build-depends: async >= 2.0 && < 2.3, array >= 0.4 && < 0.6, - base >= 4.8 && < 4.17, base16-bytestring >= 0.1.1 && < 1.1.0.0, binary >= 0.7.3 && < 0.9, bytestring >= 0.10.6.0 && < 0.12, - Cabal >= 3.6.1.0 && < 3.7, containers >= 0.5.6.2 && < 0.7, cryptohash-sha256 >= 0.11 && < 0.12, - deepseq >= 1.4.1.1 && < 1.5, directory >= 1.2.2.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, hashable >= 1.0 && < 1.5, HTTP >= 4000.1.5 && < 4000.5, mtl >= 2.0 && < 2.3, network-uri >= 2.6.0.2 && < 2.7, pretty >= 1.1 && < 1.2, - process >= 1.2.3.0 && < 1.7, + -- PR #8802: process lower bound moved here from Cabal package + process >= 1.6.15.0 && < 1.7, random >= 1.2 && < 1.3, stm >= 2.0 && < 2.6, tar >= 0.5.0.3 && < 0.6, - time >= 1.5.0.1 && < 1.12, - transformers >= 0.4.2.0 && < 0.6, + time >= 1.5.0.1 && < 1.13, zlib >= 0.5.3 && < 0.7, - hackage-security >= 0.6.0.1 && < 0.7, - text >= 1.2.3 && < 1.3, + hackage-security >= 0.6.2.0 && < 0.7, + text >= 1.2.3 && < 1.3 || >= 2.0 && < 2.1, parsec >= 3.1.13.0 && < 3.2, regex-base >= 0.94.0.0 && <0.95, - regex-posix >= 0.96.0.0 && <0.97 - - if !impl(ghc >= 8.0) - build-depends: fail == 4.9.* - build-depends: semigroups >= 0.18.3 && <0.20 + regex-posix >= 0.96.0.0 && <0.97, + safe-exceptions >= 0.1.7.0 && < 0.2 if flag(native-dns) if os(windows) @@ -309,22 +239,181 @@ executable cabal if os(windows) -- newer directory for symlinks - build-depends: Win32 >= 2 && < 2.8, directory >=1.3.1.0 + build-depends: Win32 >= 2.8 && < 3, directory >=1.3.1.0 else build-depends: unix >= 2.5 && < 2.9 if flag(lukko) build-depends: lukko >= 0.1 && <0.2 - else - build-depends: base >= 4.10 - if flag(debug-expensive-assertions) - cpp-options: -DDEBUG_EXPENSIVE_ASSERTIONS - if flag(debug-conflict-sets) - cpp-options: -DDEBUG_CONFLICT_SETS - build-depends: base >= 4.8 +executable cabal + import: warnings, base-dep, cabal-dep, cabal-syntax-dep + main-is: Main.hs + hs-source-dirs: main + default-language: Haskell2010 - if flag(debug-tracetree) - cpp-options: -DDEBUG_TRACETREE - build-depends: tracetree >= 0.1 && < 0.2 + ghc-options: -rtsopts -threaded + + -- On AIX, some legacy BSD operations such as flock(2) are provided by libbsd.a + if os(aix) + extra-libraries: bsd + + build-depends: + cabal-install, + directory, + filepath + +-- Small, fast running tests. +-- +test-suite unit-tests + import: warnings, base-dep, cabal-dep, cabal-syntax-dep, cabal-install-solver-dep + default-language: Haskell2010 + ghc-options: -rtsopts -threaded + + type: exitcode-stdio-1.0 + main-is: UnitTests.hs + hs-source-dirs: tests + other-modules: + UnitTests.Distribution.Client.ArbitraryInstances + UnitTests.Distribution.Client.BuildReport + UnitTests.Distribution.Client.Configure + UnitTests.Distribution.Client.FetchUtils + UnitTests.Distribution.Client.Get + UnitTests.Distribution.Client.Glob + UnitTests.Distribution.Client.GZipUtils + UnitTests.Distribution.Client.IndexUtils + UnitTests.Distribution.Client.IndexUtils.Timestamp + UnitTests.Distribution.Client.Init + UnitTests.Distribution.Client.Init.Golden + UnitTests.Distribution.Client.Init.Interactive + UnitTests.Distribution.Client.Init.NonInteractive + UnitTests.Distribution.Client.Init.Simple + UnitTests.Distribution.Client.Init.Utils + UnitTests.Distribution.Client.Init.FileCreators + UnitTests.Distribution.Client.InstallPlan + UnitTests.Distribution.Client.JobControl + UnitTests.Distribution.Client.ProjectConfig + UnitTests.Distribution.Client.ProjectPlanning + UnitTests.Distribution.Client.Store + UnitTests.Distribution.Client.Tar + UnitTests.Distribution.Client.Targets + UnitTests.Distribution.Client.TreeDiffInstances + UnitTests.Distribution.Client.UserConfig + UnitTests.Distribution.Solver.Modular.Builder + UnitTests.Distribution.Solver.Modular.RetryLog + UnitTests.Distribution.Solver.Modular.Solver + UnitTests.Distribution.Solver.Modular.DSL + UnitTests.Distribution.Solver.Modular.DSL.TestCaseUtils + UnitTests.Distribution.Solver.Modular.WeightedPSQ + UnitTests.Distribution.Solver.Types.OptionalStanza + UnitTests.Options + UnitTests.TempTestDir + + build-depends: + array, + bytestring, + cabal-install, + Cabal-tree-diff, + Cabal-QuickCheck, + containers, + directory, + filepath, + mtl, + network-uri >= 2.6.2.0 && <2.7, + random, + tar, + time, + zlib, + tasty >= 1.2.3 && <1.5, + tasty-golden >=2.3.1.1 && <2.4, + tasty-quickcheck, + tasty-hunit >= 0.10, + tree-diff, + QuickCheck >= 2.14 && <2.15 + + +-- Tests to run with a limited stack and heap size +-- The test suite name must be keep short cause a longer one +-- could make the build generating paths which exceeds the windows +-- max path limit (still a problem for some ghc versions) +test-suite mem-use-tests + import: warnings, base-dep, cabal-dep, cabal-syntax-dep, cabal-install-solver-dep + type: exitcode-stdio-1.0 + main-is: MemoryUsageTests.hs + hs-source-dirs: tests + default-language: Haskell2010 + + ghc-options: -threaded -rtsopts "-with-rtsopts=-M16M -K1K" + + other-modules: + UnitTests.Distribution.Solver.Modular.DSL + UnitTests.Distribution.Solver.Modular.DSL.TestCaseUtils + UnitTests.Distribution.Solver.Modular.MemoryUsage + UnitTests.Options + + build-depends: + cabal-install, + containers, + tasty >= 1.2.3 && <1.5, + tasty-hunit >= 0.10 + + +-- Integration tests that use the cabal-install code directly +-- but still build whole projects +test-suite integration-tests2 + import: warnings, base-dep, cabal-dep, cabal-syntax-dep, cabal-install-solver-dep + ghc-options: -rtsopts -threaded + type: exitcode-stdio-1.0 + main-is: IntegrationTests2.hs + hs-source-dirs: tests + default-language: Haskell2010 + + build-depends: + bytestring, + cabal-install, + containers, + directory, + filepath, + tasty >= 1.2.3 && <1.5, + tasty-hunit >= 0.10, + tagged + +test-suite long-tests + import: warnings, base-dep, cabal-dep, cabal-syntax-dep, cabal-install-solver-dep + ghc-options: -rtsopts -threaded + type: exitcode-stdio-1.0 + hs-source-dirs: tests + main-is: LongTests.hs + default-language: Haskell2010 + + other-modules: + UnitTests.Distribution.Client.ArbitraryInstances + UnitTests.Distribution.Client.Described + UnitTests.Distribution.Client.DescribedInstances + UnitTests.Distribution.Client.FileMonitor + UnitTests.Distribution.Client.VCS + UnitTests.Distribution.Solver.Modular.DSL + UnitTests.Distribution.Solver.Modular.QuickCheck + UnitTests.Distribution.Solver.Modular.QuickCheck.Utils + UnitTests.Options + UnitTests.TempTestDir + + build-depends: + Cabal-QuickCheck, + Cabal-described, + cabal-install, + containers, + directory, + filepath, + hashable, + mtl, + network-uri >= 2.6.2.0 && <2.7, + random, + tagged, + tasty >= 1.2.3 && <1.5, + tasty-expected-failure, + tasty-hunit >= 0.10, + tasty-quickcheck, + QuickCheck >= 2.14 && <2.15, + pretty-show >= 1.6.15 diff --git a/cabal-install.spec b/cabal-install.spec index c3d4050..914654f 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -2,7 +2,7 @@ # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ Name: cabal-install -Version: 3.6.2.0 +Version: 3.8.1.0 Release: %autorelease Summary: The command-line interface for Cabal and Hackage diff --git a/sources b/sources index 20d6f97..d65f17f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (cabal-install-3.6.2.0.tar.gz) = a02d72fd7d0bf7778b1d4f2925e0b78f6c321cb29d59d559da758bfa6a0cd17fc776bd64911db8d28a208189b35db50aceae109782a1011e059446c4c2d77ad3 +SHA512 (cabal-install-3.8.1.0.tar.gz) = 850267c8b255f1658beea2ff81d025e80f0a78902d32684a047fdc9347fe0893ccbdf60a00dbb5bb0339e3d1ddefb0f94e31273808c6b72de23fb1340fa74ae4 From bd380cacb5af680dcf6c155525fcfdd82f9a8d60 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Wed, 26 Jul 2023 10:08:48 +0800 Subject: [PATCH 04/22] Revert "Convert to %autorelease and %autochangelog" This reverts commit da674c2eb18240c7ff3fc1bf26520d828dcc3639. --- cabal-install.spec | 286 ++++++++++++++++++++++++++++++++++++++++++++- changelog | 280 -------------------------------------------- 2 files changed, 284 insertions(+), 282 deletions(-) delete mode 100644 changelog diff --git a/cabal-install.spec b/cabal-install.spec index 914654f..861a359 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -3,7 +3,7 @@ Name: cabal-install Version: 3.8.1.0 -Release: %autorelease +Release: 1%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -105,4 +105,286 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog -%autochangelog +* Wed Jul 26 2023 Jens Petersen - 3.8.1.0-1 +- https://hackage.haskell.org/package/cabal-install-3.8.1.0/changelog + +* Sun Jan 22 2023 Jens Petersen - 3.6.2.0-1 +- https://hackage.haskell.org/package/cabal-install-3.6.2.0/changelog +- refresh to cabal-rpm-2.1.0 with SPDX migration + +* Fri Sep 16 2022 Jens Petersen - 3.2.0.0-9 +- revert recommending ghcX.Y + +* Wed Jul 20 2022 Fedora Release Engineering - 3.2.0.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Fri Jun 17 2022 Jens Petersen - 3.2.0.0-7 +- rebuild + +* Sat Apr 30 2022 Jens Petersen - 3.2.0.0-6 +- recommend ghc or ghcX.Y + +* Thu Apr 21 2022 Jens Petersen - 3.2.0.0-5 +- drop the strict requires on ghc-compiler to allow ghcX.Y-compiler-default + +* Wed Jan 19 2022 Fedora Release Engineering - 3.2.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Sat Jan 08 2022 Miro Hrončok - 3.2.0.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34 + +* Thu Sep 9 2021 Jens Petersen - 3.2.0.0-2 +- recommends zlib-devel for convenience +- fix the sdist file permissions patch to compile in 3.2 + +* Thu Aug 5 2021 Jens Petersen - 3.2.0.0-1 +- update to 3.2.0.0 + +* Wed Jul 21 2021 Fedora Release Engineering - 3.0.0.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 3.0.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Dec 12 2020 Jens Petersen - 3.0.0.0-3 +- Recommends ghc (thanks Tristan de Cacqueray,#1) + +* Mon Jul 27 2020 Fedora Release Engineering - 3.0.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 07 2020 Jens Petersen - 3.0.0.0-1 +- update to 3.0.0.0 + +* Tue Apr 14 2020 Jens Petersen - 2.4.1.0-2 +- backport new-sdist upstream fix for doc file permissions + (https://github.com/haskell/cabal/issues/5813) + +* Sun Feb 09 2020 Jens Petersen - 2.4.1.0-1 +- update to 2.4.1.0 + +* Tue Jan 28 2020 Fedora Release Engineering - 2.4.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Jul 25 2019 Jens Petersen - 2.4.1.0-1 +- update to 2.4.1.0 + +* Wed Jul 24 2019 Fedora Release Engineering - 2.2.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu May 9 2019 fedora-toolbox - 2.2.0.0-3 +- rebuild + +* Tue Apr 9 2019 Jens Petersen - 2.2.0.0-2 +- resolv is now packaged + +* Thu Feb 21 2019 Jens Petersen - 2.2.0.0-1 +- update to 2.2.0.0 +- subpackage resolv dep +- install bash-completion file under datadir (Chris King-Parra, #1683879) + +* Sun Feb 17 2019 Jens Petersen - 2.0.0.1-12 +- refresh to cabal-rpm-0.13 + +* Thu Jan 31 2019 Fedora Release Engineering - 2.0.0.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Dec 14 2018 Jens Petersen - 2.0.0.1-10 +- drop the rpmlint whitelist of ghc-Cabal-devel again since no longer Requires + +* Thu Nov 22 2018 Jens Petersen - 2.0.0.1-9 +- require bind-utils for nslookup used for secure mirror dns lookup + +* Wed Nov 21 2018 Jens Petersen - 2.0.0.1-8 +- no longer requires ghc-Cabal-devel + +* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-7 +- rebuild + +* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-6 +- link cabal statically to its Haskell deps for ghc modules portability + +* Sat Jul 28 2018 Jens Petersen - 2.0.0.1-5 +- revise .cabal + +* Thu Jul 12 2018 Fedora Release Engineering - 2.0.0.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 23 2018 Jens Petersen - 2.0.0.1-3 +- unbundle echo library + +* Wed Feb 07 2018 Fedora Release Engineering - 2.0.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Jan 24 2018 Jens Petersen - 2.0.0.1-1 +- update to 2.0.0.1 +- subpackage new echo dep + +* Sat Oct 21 2017 Jens Petersen - 1.24.0.2-6 +- the bundled libraries are now packaged in Fedora + +* Wed Aug 02 2017 Fedora Release Engineering - 1.24.0.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.24.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed May 24 2017 Jens Petersen - 1.24.0.2-3 +- set manpage permission to 0644 + +* Wed Apr 26 2017 Jens Petersen - 1.24.0.2-2 +- requires ghc-Cabal-devel (Matej Smid, #1445210) + +* Wed Feb 22 2017 Jens Petersen - 1.24.0.2-1 +- update to 1.24.0.2 + +* Fri Feb 10 2017 Fedora Release Engineering - 1.22.9.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Sat Jan 21 2017 Jens Petersen - 1.22.9.0-2 +- drop static and common subpackages + +* Sun Jun 26 2016 Jens Petersen - 1.22.9.0-1 +- update to 1.22.9.0 + +* Mon Jun 6 2016 Jens Petersen - 1.22.6.0-1 +- update to 1.22.6.0 + +* Wed Feb 03 2016 Fedora Release Engineering - 1.18.1.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 1.18.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed May 13 2015 Jens Petersen - 1.18.1.0-1 +- security version update for upload command + +* Thu Apr 2 2015 Jens Petersen - 1.18.0.8-1 +- update to 1.18.0.8 + +* Thu Aug 7 2014 Jens Petersen - 1.18.0.5-1 +- update to 1.18.0.5 +- obsolete cabal-dev +- add static and common subpackages + +* Tue Jul 8 2014 Jens Petersen - 1.16.0.2-35 +- f21 rebuild + +* Fri Apr 18 2014 Jens Petersen - 1.16.0.2-34 +- bump release over haskell-platform + +* Thu Apr 17 2014 Jens Petersen - 1.16.0.2-32 +- mark bash_completion.d and profile.d files as config (#1069062) +- require filesystem and setup to own the sysconfig dirs (#1069062) + +* Mon Feb 24 2014 Jens Petersen - 1.16.0.2-31 +- update to 1.16.0.2 +- split out of haskell-platform (#1069062) +- only show cabal-install upgrade notice for verbose + +* Tue May 8 2012 Jens Petersen - 0.14.0-1 +- update to 0.14.0 release + +* Tue Mar 20 2012 Jens Petersen - 0.13.3-0.1 +- update to latest darcs + +* Thu Jan 12 2012 Fedora Release Engineering - 0.10.2-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Wed Dec 28 2011 Jens Petersen - 0.10.2-6 +- rebuild for haskell-platform-2011.4.0.0 + +* Fri Dec 16 2011 Jens Petersen - 0.10.2-5 +- bring back requires ghc-compiler (Stanislav Ochotnicky, #760461) + +* Thu Oct 20 2011 Marcela Mašláňová - 0.10.2-4.2 +- rebuild with new gmp without compat lib + +* Mon Oct 10 2011 Peter Schiffer - 0.10.2-4.1 +- rebuild with new gmp + +* Tue Jun 21 2011 Jens Petersen - 0.10.2-4 +- ghc_arches replaces ghc_excluded_archs + +* Mon Jun 20 2011 Jens Petersen - 0.10.2-3 +- BR ghc-Cabal-devel and use ghc_excluded_archs +- drop ghc requires to allow local ghc + +* Wed May 25 2011 Jens Petersen - 0.10.2-2 +- add ppc64 + +* Fri Mar 11 2011 Jens Petersen - 0.10.2-1 +- update to 0.10.2 + +* Thu Mar 10 2011 Fabio M. Di Nitto - 0.9.6-0.2 +- Enable build on sparcv9 + +* Tue Feb 15 2011 Jens Petersen - 0.9.6-0.1 +- update to 0.9.6 pre snapshot + +* Tue Feb 15 2011 Jens Petersen - 0.9.5-0.5 +- rebuild for haskell-platform-2011.1 updates + +* Tue Feb 08 2011 Fedora Release Engineering - 0.9.5-0.4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sun Jan 23 2011 Jens Petersen - 0.9.5-0.3 +- update to cabal2spec-0.22.4 +- BR ghc-devel + +* Sun Dec 5 2010 Jens Petersen - 0.9.5-0.2 +- rebuild with HTTP-4000.1.1 + +* Thu Nov 25 2010 Jens Petersen - 0.9.5-0.1 +- update to current 0.9.5 snapshot + +* Fri Jul 16 2010 Jens Petersen - 0.8.2-1 +- update to 0.8.2 for haskell-platform-2010.2.0.0 + +* Sun Jun 27 2010 Jens Petersen - 0.8.0-5 +- sync cabal2spec-0.22.1 + +* Wed May 19 2010 Jens Petersen - 0.8.0-4 +- append ~/.cabal/bin to PATH (if dir exists) with new + /etc/profile.d/cabal-install.sh (#509699) + +* Tue Apr 27 2010 Jens Petersen - 0.8.0-3 +- rebuild against ghc-6.12.2 + +* Tue Mar 23 2010 Jens Petersen - 0.8.0-2 +- rebuild against HTTP-4000.0.9 for haskell-platform-2010.1.0.0 + +* Mon Jan 11 2010 Jens Petersen - 0.8.0-1 +- update to 0.8.0 for ghc-6.12.1 +- add dynamic bcond +- drop redundant buildroot and its install cleaning + +* Wed Sep 16 2009 Jens Petersen - 0.6.2-6 +- really rebuild + +* Fri Jul 24 2009 Fedora Release Engineering - 0.6.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sun May 17 2009 Jens Petersen - 0.6.2-4 +- buildrequires ghc-rpm-macros (cabal-0.16) + +* Sun Apr 26 2009 Jens Petersen - 0.6.2-3 +- rebuild against ghc-6.10.2 + +* Fri Feb 27 2009 Jens Petersen - 0.6.2-2 +- update for cabal2spec-0.11: +- use global +- fix source url +- add ix86 and alpha archs + +* Mon Feb 23 2009 Jens Petersen - 0.6.2-1 +- update to 0.6.2 release + +* Mon Feb 9 2009 Jens Petersen - 0.6.0-3 +- fix source url + +* Wed Jan 7 2009 Jens Petersen - 0.6.0-2 +- add bash completion file +- update cabal build macro + +* Tue Nov 11 2008 Jens Petersen - 0.6.0-1 +- initial package for Fedora diff --git a/changelog b/changelog deleted file mode 100644 index 3c90f50..0000000 --- a/changelog +++ /dev/null @@ -1,280 +0,0 @@ -* Sun Jan 22 2023 Jens Petersen - 3.6.2.0-1 -- https://hackage.haskell.org/package/cabal-install-3.6.2.0/changelog -- refresh to cabal-rpm-2.1.0 with SPDX migration - -* Fri Sep 16 2022 Jens Petersen - 3.2.0.0-9 -- revert recommending ghcX.Y - -* Wed Jul 20 2022 Fedora Release Engineering - 3.2.0.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri Jun 17 2022 Jens Petersen - 3.2.0.0-7 -- rebuild - -* Sat Apr 30 2022 Jens Petersen - 3.2.0.0-6 -- recommend ghc or ghcX.Y - -* Thu Apr 21 2022 Jens Petersen - 3.2.0.0-5 -- drop the strict requires on ghc-compiler to allow ghcX.Y-compiler-default - -* Wed Jan 19 2022 Fedora Release Engineering - 3.2.0.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Sat Jan 08 2022 Miro Hrončok - 3.2.0.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34 - -* Thu Sep 9 2021 Jens Petersen - 3.2.0.0-2 -- recommends zlib-devel for convenience -- fix the sdist file permissions patch to compile in 3.2 - -* Thu Aug 5 2021 Jens Petersen - 3.2.0.0-1 -- update to 3.2.0.0 - -* Wed Jul 21 2021 Fedora Release Engineering - 3.0.0.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jan 26 2021 Fedora Release Engineering - 3.0.0.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Dec 12 2020 Jens Petersen - 3.0.0.0-3 -- Recommends ghc (thanks Tristan de Cacqueray,#1) - -* Mon Jul 27 2020 Fedora Release Engineering - 3.0.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 07 2020 Jens Petersen - 3.0.0.0-1 -- update to 3.0.0.0 - -* Tue Apr 14 2020 Jens Petersen - 2.4.1.0-2 -- backport new-sdist upstream fix for doc file permissions - (https://github.com/haskell/cabal/issues/5813) - -* Sun Feb 09 2020 Jens Petersen - 2.4.1.0-1 -- update to 2.4.1.0 - -* Tue Jan 28 2020 Fedora Release Engineering - 2.4.0.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Jul 25 2019 Jens Petersen - 2.4.1.0-1 -- update to 2.4.1.0 - -* Wed Jul 24 2019 Fedora Release Engineering - 2.2.0.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu May 9 2019 fedora-toolbox - 2.2.0.0-3 -- rebuild - -* Tue Apr 9 2019 Jens Petersen - 2.2.0.0-2 -- resolv is now packaged - -* Thu Feb 21 2019 Jens Petersen - 2.2.0.0-1 -- update to 2.2.0.0 -- subpackage resolv dep -- install bash-completion file under datadir (Chris King-Parra, #1683879) - -* Sun Feb 17 2019 Jens Petersen - 2.0.0.1-12 -- refresh to cabal-rpm-0.13 - -* Thu Jan 31 2019 Fedora Release Engineering - 2.0.0.1-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Dec 14 2018 Jens Petersen - 2.0.0.1-10 -- drop the rpmlint whitelist of ghc-Cabal-devel again since no longer Requires - -* Thu Nov 22 2018 Jens Petersen - 2.0.0.1-9 -- require bind-utils for nslookup used for secure mirror dns lookup - -* Wed Nov 21 2018 Jens Petersen - 2.0.0.1-8 -- no longer requires ghc-Cabal-devel - -* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-7 -- rebuild - -* Fri Oct 5 2018 Jens Petersen - 2.0.0.1-6 -- link cabal statically to its Haskell deps for ghc modules portability - -* Sat Jul 28 2018 Jens Petersen - 2.0.0.1-5 -- revise .cabal - -* Thu Jul 12 2018 Fedora Release Engineering - 2.0.0.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Feb 23 2018 Jens Petersen - 2.0.0.1-3 -- unbundle echo library - -* Wed Feb 07 2018 Fedora Release Engineering - 2.0.0.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Wed Jan 24 2018 Jens Petersen - 2.0.0.1-1 -- update to 2.0.0.1 -- subpackage new echo dep - -* Sat Oct 21 2017 Jens Petersen - 1.24.0.2-6 -- the bundled libraries are now packaged in Fedora - -* Wed Aug 02 2017 Fedora Release Engineering - 1.24.0.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1.24.0.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Wed May 24 2017 Jens Petersen - 1.24.0.2-3 -- set manpage permission to 0644 - -* Wed Apr 26 2017 Jens Petersen - 1.24.0.2-2 -- requires ghc-Cabal-devel (Matej Smid, #1445210) - -* Wed Feb 22 2017 Jens Petersen - 1.24.0.2-1 -- update to 1.24.0.2 - -* Fri Feb 10 2017 Fedora Release Engineering - 1.22.9.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Sat Jan 21 2017 Jens Petersen - 1.22.9.0-2 -- drop static and common subpackages - -* Sun Jun 26 2016 Jens Petersen - 1.22.9.0-1 -- update to 1.22.9.0 - -* Mon Jun 6 2016 Jens Petersen - 1.22.6.0-1 -- update to 1.22.6.0 - -* Wed Feb 03 2016 Fedora Release Engineering - 1.18.1.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Jun 17 2015 Fedora Release Engineering - 1.18.1.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Wed May 13 2015 Jens Petersen - 1.18.1.0-1 -- security version update for upload command - -* Thu Apr 2 2015 Jens Petersen - 1.18.0.8-1 -- update to 1.18.0.8 - -* Thu Aug 7 2014 Jens Petersen - 1.18.0.5-1 -- update to 1.18.0.5 -- obsolete cabal-dev -- add static and common subpackages - -* Tue Jul 8 2014 Jens Petersen - 1.16.0.2-35 -- f21 rebuild - -* Fri Apr 18 2014 Jens Petersen - 1.16.0.2-34 -- bump release over haskell-platform - -* Thu Apr 17 2014 Jens Petersen - 1.16.0.2-32 -- mark bash_completion.d and profile.d files as config (#1069062) -- require filesystem and setup to own the sysconfig dirs (#1069062) - -* Mon Feb 24 2014 Jens Petersen - 1.16.0.2-31 -- update to 1.16.0.2 -- split out of haskell-platform (#1069062) -- only show cabal-install upgrade notice for verbose - -* Tue May 8 2012 Jens Petersen - 0.14.0-1 -- update to 0.14.0 release - -* Tue Mar 20 2012 Jens Petersen - 0.13.3-0.1 -- update to latest darcs - -* Thu Jan 12 2012 Fedora Release Engineering - 0.10.2-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Wed Dec 28 2011 Jens Petersen - 0.10.2-6 -- rebuild for haskell-platform-2011.4.0.0 - -* Fri Dec 16 2011 Jens Petersen - 0.10.2-5 -- bring back requires ghc-compiler (Stanislav Ochotnicky, #760461) - -* Thu Oct 20 2011 Marcela Mašláňová - 0.10.2-4.2 -- rebuild with new gmp without compat lib - -* Mon Oct 10 2011 Peter Schiffer - 0.10.2-4.1 -- rebuild with new gmp - -* Tue Jun 21 2011 Jens Petersen - 0.10.2-4 -- ghc_arches replaces ghc_excluded_archs - -* Mon Jun 20 2011 Jens Petersen - 0.10.2-3 -- BR ghc-Cabal-devel and use ghc_excluded_archs -- drop ghc requires to allow local ghc - -* Wed May 25 2011 Jens Petersen - 0.10.2-2 -- add ppc64 - -* Fri Mar 11 2011 Jens Petersen - 0.10.2-1 -- update to 0.10.2 - -* Thu Mar 10 2011 Fabio M. Di Nitto - 0.9.6-0.2 -- Enable build on sparcv9 - -* Tue Feb 15 2011 Jens Petersen - 0.9.6-0.1 -- update to 0.9.6 pre snapshot - -* Tue Feb 15 2011 Jens Petersen - 0.9.5-0.5 -- rebuild for haskell-platform-2011.1 updates - -* Tue Feb 08 2011 Fedora Release Engineering - 0.9.5-0.4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Sun Jan 23 2011 Jens Petersen - 0.9.5-0.3 -- update to cabal2spec-0.22.4 -- BR ghc-devel - -* Sun Dec 5 2010 Jens Petersen - 0.9.5-0.2 -- rebuild with HTTP-4000.1.1 - -* Thu Nov 25 2010 Jens Petersen - 0.9.5-0.1 -- update to current 0.9.5 snapshot - -* Fri Jul 16 2010 Jens Petersen - 0.8.2-1 -- update to 0.8.2 for haskell-platform-2010.2.0.0 - -* Sun Jun 27 2010 Jens Petersen - 0.8.0-5 -- sync cabal2spec-0.22.1 - -* Wed May 19 2010 Jens Petersen - 0.8.0-4 -- append ~/.cabal/bin to PATH (if dir exists) with new - /etc/profile.d/cabal-install.sh (#509699) - -* Tue Apr 27 2010 Jens Petersen - 0.8.0-3 -- rebuild against ghc-6.12.2 - -* Tue Mar 23 2010 Jens Petersen - 0.8.0-2 -- rebuild against HTTP-4000.0.9 for haskell-platform-2010.1.0.0 - -* Mon Jan 11 2010 Jens Petersen - 0.8.0-1 -- update to 0.8.0 for ghc-6.12.1 -- add dynamic bcond -- drop redundant buildroot and its install cleaning - -* Wed Sep 16 2009 Jens Petersen - 0.6.2-6 -- really rebuild - -* Fri Jul 24 2009 Fedora Release Engineering - 0.6.2-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Sun May 17 2009 Jens Petersen - 0.6.2-4 -- buildrequires ghc-rpm-macros (cabal-0.16) - -* Sun Apr 26 2009 Jens Petersen - 0.6.2-3 -- rebuild against ghc-6.10.2 - -* Fri Feb 27 2009 Jens Petersen - 0.6.2-2 -- update for cabal2spec-0.11: -- use global -- fix source url -- add ix86 and alpha archs - -* Mon Feb 23 2009 Jens Petersen - 0.6.2-1 -- update to 0.6.2 release - -* Mon Feb 9 2009 Jens Petersen - 0.6.0-3 -- fix source url - -* Wed Jan 7 2009 Jens Petersen - 0.6.0-2 -- add bash completion file -- update cabal build macro - -* Tue Nov 11 2008 Jens Petersen - 0.6.0-1 -- initial package for Fedora From d219f80be24e0b0aaceae3844085921389b2f86b Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Wed, 26 Jul 2023 10:10:39 +0800 Subject: [PATCH 05/22] package library and subpackage cabal-install-resolver --- .gitignore | 1 + cabal-install.spec | 157 +++++++++++++++++++++++++++++++++++++++++---- sources | 1 + 3 files changed, 148 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index 7733d71..6b2af0a 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ cabal-install-0.8.2.tar.gz /cabal-install-3.2.0.0.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 diff --git a/cabal-install.spec b/cabal-install.spec index 861a359..e58f657 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -1,23 +1,34 @@ -# generated by cabal-rpm-2.1.0 +# generated by cabal-rpm-2.1.2 --subpackage # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ -Name: cabal-install +%global pkg_name cabal-install +%global pkgver %{pkg_name}-%{version} + +%global cabalinstallsolver cabal-install-solver-3.8.1.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 +# can only be reset when all subpkgs bumped Release: 1%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause Url: https://hackage.haskell.org/package/%{name} # Begin cabal-rpm sources: -Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.tar.gz -Source1: https://hackage.haskell.org/package/%{name}-%{version}/%{name}.cabal#/%{name}-%{version}.cabal +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +Source1: https://hackage.haskell.org/package/%{cabalinstallsolver}/%{cabalinstallsolver}.tar.gz +Source2: https://hackage.haskell.org/package/%{pkgver}/%{name}.cabal#/%{pkgver}.cabal # End cabal-rpm sources Source10: cabal-install.sh # Begin cabal-rpm deps: BuildRequires: dos2unix -BuildRequires: ghc-rpm-macros +BuildRequires: ghc-rpm-macros-extra BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-Cabal-syntax-devel BuildRequires: ghc-HTTP-devel BuildRequires: ghc-array-devel BuildRequires: ghc-async-devel @@ -25,12 +36,13 @@ BuildRequires: ghc-base-devel BuildRequires: ghc-base16-bytestring-devel BuildRequires: ghc-binary-devel BuildRequires: ghc-bytestring-devel +#BuildRequires: ghc-cabal-install-solver-devel BuildRequires: ghc-containers-devel BuildRequires: ghc-cryptohash-sha256-devel -BuildRequires: ghc-deepseq-devel BuildRequires: ghc-directory-devel BuildRequires: ghc-echo-devel BuildRequires: ghc-edit-distance-devel +BuildRequires: ghc-exceptions-devel BuildRequires: ghc-filepath-devel BuildRequires: ghc-hackage-security-devel BuildRequires: ghc-hashable-devel @@ -44,13 +56,56 @@ BuildRequires: ghc-random-devel BuildRequires: ghc-regex-base-devel BuildRequires: ghc-regex-posix-devel BuildRequires: ghc-resolv-devel +BuildRequires: ghc-safe-exceptions-devel BuildRequires: ghc-stm-devel BuildRequires: ghc-tar-devel BuildRequires: ghc-text-devel BuildRequires: ghc-time-devel -BuildRequires: ghc-transformers-devel BuildRequires: ghc-unix-devel BuildRequires: ghc-zlib-devel +%if %{with ghc_prof} +BuildRequires: ghc-Cabal-prof +BuildRequires: ghc-Cabal-syntax-prof +BuildRequires: ghc-HTTP-prof +BuildRequires: ghc-array-prof +BuildRequires: ghc-async-prof +BuildRequires: ghc-base-prof +BuildRequires: ghc-base16-bytestring-prof +BuildRequires: ghc-binary-prof +BuildRequires: ghc-bytestring-prof +#BuildRequires: ghc-cabal-install-solver-prof +BuildRequires: ghc-containers-prof +BuildRequires: ghc-cryptohash-sha256-prof +BuildRequires: ghc-directory-prof +BuildRequires: ghc-echo-prof +BuildRequires: ghc-edit-distance-prof +BuildRequires: ghc-exceptions-prof +BuildRequires: ghc-filepath-prof +BuildRequires: ghc-hackage-security-prof +BuildRequires: ghc-hashable-prof +BuildRequires: ghc-lukko-prof +BuildRequires: ghc-mtl-prof +BuildRequires: ghc-network-uri-prof +BuildRequires: ghc-parsec-prof +BuildRequires: ghc-pretty-prof +BuildRequires: ghc-process-prof +BuildRequires: ghc-random-prof +BuildRequires: ghc-regex-base-prof +BuildRequires: ghc-regex-posix-prof +BuildRequires: ghc-resolv-prof +BuildRequires: ghc-safe-exceptions-prof +BuildRequires: ghc-stm-prof +BuildRequires: ghc-tar-prof +BuildRequires: ghc-text-prof +BuildRequires: ghc-time-prof +BuildRequires: ghc-unix-prof +BuildRequires: ghc-zlib-prof +%endif +# for missing dep 'cabal-install-solver': +BuildRequires: ghc-transformers-devel +%if %{with ghc_prof} +BuildRequires: ghc-transformers-prof +%endif # End cabal-rpm deps # for /etc/bash_completion.d/ @@ -71,22 +126,80 @@ software by automating the fetching, configuration, compilation and installation of Haskell libraries and programs. +%package -n ghc-%{name} +Summary: Haskell %{name} library + +%description -n ghc-%{name} +This package provides the Haskell %{name} shared library. + + +%package -n ghc-%{name}-devel +Summary: Haskell %{name} library development files +Provides: ghc-%{name}-static = %{version}-%{release} +Provides: ghc-%{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: ghc-%{name}%{?_isa} = %{version}-%{release} + +%description -n ghc-%{name}-devel +This package provides the Haskell %{name} library development files. + + +%if %{with haddock} +%package -n ghc-%{name}-doc +Summary: Haskell %{name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description -n ghc-%{name}-doc +This package provides the Haskell %{name} library documentation. +%endif + + +%if %{with ghc_prof} +%package -n ghc-%{name}-prof +Summary: Haskell %{name} profiling library +Requires: ghc-%{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (ghc-%{name}-devel and ghc-prof) + +%description -n ghc-%{name}-prof +This package provides the Haskell %{name} profiling library. +%endif + + +%global main_version %{version} + +%if %{defined ghclibdir} +%ghc_lib_subpackage %{cabalinstallsolver} +%endif + +%global version %{main_version} + + %prep # Begin cabal-rpm setup: -%setup -q -dos2unix -k -n %{SOURCE1} %{name}.cabal +%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 +) %build # Begin cabal-rpm build: -%ghc_bin_build +%ghc_libs_build %{subpkgs} +%ghc_lib_build # End cabal-rpm build %install # Begin cabal-rpm install -%ghc_bin_install +%ghc_libs_install %{subpkgs} +%ghc_lib_install # End cabal-rpm install install -pm 644 -D -t %{buildroot}%{_datadir}/bash-completion/completions/ bash-completion/cabal @@ -104,9 +217,31 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %{_datadir}/bash-completion/completions/cabal +%files -n ghc-%{name} -f ghc-%{name}.files +# Begin cabal-rpm files: +%license LICENSE +# End cabal-rpm files + + +%files -n ghc-%{name}-devel -f ghc-%{name}-devel.files +%doc README.md changelog + + +%if %{with haddock} +%files -n ghc-%{name}-doc -f ghc-%{name}-doc.files +%license LICENSE +%endif + + +%if %{with ghc_prof} +%files -n ghc-%{name}-prof -f ghc-%{name}-prof.files +%endif + + %changelog * Wed Jul 26 2023 Jens Petersen - 3.8.1.0-1 - https://hackage.haskell.org/package/cabal-install-3.8.1.0/changelog +- package library and subpackage cabal-install-resolver * Sun Jan 22 2023 Jens Petersen - 3.6.2.0-1 - https://hackage.haskell.org/package/cabal-install-3.6.2.0/changelog diff --git a/sources b/sources index d65f17f..0ed172d 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (cabal-install-3.8.1.0.tar.gz) = 850267c8b255f1658beea2ff81d025e80f0a78902d32684a047fdc9347fe0893ccbdf60a00dbb5bb0339e3d1ddefb0f94e31273808c6b72de23fb1340fa74ae4 +SHA512 (cabal-install-solver-3.8.1.0.tar.gz) = be54abffc32a3b35bed0d69df5ff9394271f2746efc45a931df5677a7c1bd1e5e303118f695a942a196c2b57ecef0be973bce97b26b3e1696e46676d376f8edf From 9de367cde0237841285188e5fa4739f060f03e11 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Fri, 3 Nov 2023 02:17:57 +0800 Subject: [PATCH 06/22] fix pkgconfig-depends failing completely with pkgconf-1.9 Due to change of behaviour of --modversion Behavior is reverted in pkgconf-2.0 cabal-install-solver: pkgconf-1.9 --modversion ignores multiple packages --- ...-install-solver-pkgconfig-modversion.patch | 22 +++++++++++++++++++ cabal-install.spec | 11 +++++++++- 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 cabal-install-solver-pkgconfig-modversion.patch diff --git a/cabal-install-solver-pkgconfig-modversion.patch b/cabal-install-solver-pkgconfig-modversion.patch new file mode 100644 index 0000000..2ed7375 --- /dev/null +++ b/cabal-install-solver-pkgconfig-modversion.patch @@ -0,0 +1,22 @@ +--- 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 e58f657..201c4a9 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 -Release: 1%{?dist} +Release: 2%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -23,6 +23,8 @@ 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 # Begin cabal-rpm deps: BuildRequires: dos2unix @@ -180,6 +182,10 @@ This package provides the Haskell %{name} profiling library. %prep # Begin cabal-rpm setup: %setup -q -a1 +%global pkgconf_version %(pkgconf --version) +%if v"%pkgconf_version" > v"1.9" && v"%pkgconf_version" < v"2.0" +%patch -P0 -p0 -b .orig +%endif dos2unix -k -n %{SOURCE2} %{name}.cabal # End cabal-rpm setup cabal-tweak-dep-ver resolv 0.2 0.3 @@ -239,6 +245,9 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Fri Nov 3 2023 Jens Petersen - 3.8.1.0-2 +- fix pkgconfig-depends detection failing with pkgconf-1.9 + * Wed Jul 26 2023 Jens Petersen - 3.8.1.0-1 - https://hackage.haskell.org/package/cabal-install-3.8.1.0/changelog - package library and subpackage cabal-install-resolver From 3f63b56d1c287ad5ed9303ccdf165134b4ecc85a Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sat, 6 Jan 2024 13:46:18 +0800 Subject: [PATCH 07/22] refresh to cabal-rpm-2.1.5 --- cabal-install.spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cabal-install.spec b/cabal-install.spec index 201c4a9..a9306cb 100644 --- a/cabal-install.spec +++ b/cabal-install.spec @@ -1,10 +1,11 @@ -# generated by cabal-rpm-2.1.2 --subpackage +# generated by cabal-rpm-2.1.5 --subpackage # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name cabal-install %global pkgver %{pkg_name}-%{version} %global cabalinstallsolver cabal-install-solver-3.8.1.0 + %global subpkgs %{cabalinstallsolver} # testsuite missing deps: Cabal-QuickCheck Cabal-tree-diff tasty-golden tree-diff Cabal-described tasty-expected-failure @@ -173,7 +174,7 @@ This package provides the Haskell %{name} profiling library. %global main_version %{version} %if %{defined ghclibdir} -%ghc_lib_subpackage %{cabalinstallsolver} +%ghc_lib_subpackage -l BSD-3-Clause %{cabalinstallsolver} %endif %global version %{main_version} From 39d3b731bd6af0761afa5a036477f4fdde5ac315 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sat, 6 Jan 2024 13:48:51 +0800 Subject: [PATCH 08/22] backport #8627: prevent cabal update creating dist-newstyle/ --- cabal-install-3.8-dist-newstyle-8627.patch | 80 ++++++++++++++++++++++ cabal-install.spec | 18 +++-- 2 files changed, 93 insertions(+), 5 deletions(-) create mode 100644 cabal-install-3.8-dist-newstyle-8627.patch diff --git a/cabal-install-3.8-dist-newstyle-8627.patch b/cabal-install-3.8-dist-newstyle-8627.patch new file mode 100644 index 0000000..cb2a15f --- /dev/null +++ b/cabal-install-3.8-dist-newstyle-8627.patch @@ -0,0 +1,80 @@ +diff -up cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs.orig cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs +--- cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs.orig 2001-09-09 09:46:40.000000000 +0800 ++++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs 2024-01-06 13:44:58.774052370 +0800 +@@ -7,6 +7,7 @@ module Distribution.Client.ProjectConfig + -- Project config skeletons + ProjectConfigSkeleton, + parseProjectSkeleton, ++ instantiateProjectConfigSkeletonFetchingCompiler, + instantiateProjectConfigSkeleton, + singletonProjectConfigSkeleton, + projectSkeletonImports, +@@ -44,7 +45,7 @@ import Distribution.Client.CmdInstall.Cl + ( 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,6 +136,30 @@ type ProjectConfigImport = String + singletonProjectConfigSkeleton :: ProjectConfig -> ProjectConfigSkeleton + singletonProjectConfigSkeleton x = CondNode x mempty mempty + ++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 ++ [ProjectConfigImport] ++ ProjectConfig ++ -> ProjectConfig ++ go (CondNode l _imps ts) = ++ let branches = concatMap processBranch ts ++ in l <> mconcat branches ++ processBranch (CondBranch cnd t mf) = case cnd of ++ (Lit True) -> [go t] ++ (Lit False) -> maybe ([]) ((:[]) . go) mf ++ _ -> error $ "unable to process condition: " ++ show cnd -- TODO it would be nice if there were a pretty printer ++ + instantiateProjectConfigSkeleton :: OS -> Arch -> CompilerInfo -> FlagAssignment -> ProjectConfigSkeleton -> ProjectConfig + instantiateProjectConfigSkeleton os arch impl _flags skel = go $ mapTreeConds (fst . simplifyWithSysParams os arch impl) skel + where +diff -up cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs.orig cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs +--- cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs.orig 2001-09-09 09:46:40.000000000 +0800 ++++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs 2024-01-06 13:40:57.480462863 +0800 +@@ -332,9 +332,13 @@ rebuildProjectConfig verbosity + liftIO $ info verbosity "Project settings changed, reconfiguring..." + 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 ++ -- 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) ++ ++ projectConfig <- instantiateProjectConfigSkeletonFetchingCompiler fetchCompiler mempty projectConfigSkeleton + localPackages <- phaseReadLocalPackages (projectConfig <> cliConfig) + return (projectConfig, localPackages) + diff --git a/cabal-install.spec b/cabal-install.spec index a9306cb..536f585 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: 2%{?dist} +Release: 3%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -26,6 +26,9 @@ Source2: https://hackage.haskell.org/package/%{pkgver}/%{name}.cabal#/%{p 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 +# backport of https://github.com/haskell/cabal/pull/8627 +Patch1: cabal-install-3.8-dist-newstyle-8627.patch # Begin cabal-rpm deps: BuildRequires: dos2unix @@ -183,10 +186,6 @@ This package provides the Haskell %{name} profiling library. %prep # Begin cabal-rpm setup: %setup -q -a1 -%global pkgconf_version %(pkgconf --version) -%if v"%pkgconf_version" > v"1.9" && v"%pkgconf_version" < v"2.0" -%patch -P0 -p0 -b .orig -%endif dos2unix -k -n %{SOURCE2} %{name}.cabal # End cabal-rpm setup cabal-tweak-dep-ver resolv 0.2 0.3 @@ -194,6 +193,11 @@ 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 -p1 -b .orig %build @@ -246,6 +250,10 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Sat Jan 6 2024 Jens Petersen - 3.8.1.0-3 +- backport fix to prevent dist-newstyle/ directory creation on cabal update + https://github.com/haskell/cabal/issues/8589 + * Fri Nov 3 2023 Jens Petersen - 3.8.1.0-2 - fix pkgconfig-depends detection failing with pkgconf-1.9 From 79b745317fa78bfd033a806a3a4fab6cf89bb507 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sat, 6 Jan 2024 15:04:25 +0800 Subject: [PATCH 09/22] fixup! backport #8627: prevent cabal update creating dist-newstyle/ --- cabal-install-3.8-dist-newstyle-8627.patch | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/cabal-install-3.8-dist-newstyle-8627.patch b/cabal-install-3.8-dist-newstyle-8627.patch index cb2a15f..0dfec5b 100644 --- a/cabal-install-3.8-dist-newstyle-8627.patch +++ b/cabal-install-3.8-dist-newstyle-8627.patch @@ -1,6 +1,6 @@ diff -up cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs.orig cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs --- cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs.orig 2001-09-09 09:46:40.000000000 +0800 -+++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs 2024-01-06 13:44:58.774052370 +0800 ++++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs 2024-01-06 14:58:33.025245561 +0800 @@ -7,6 +7,7 @@ module Distribution.Client.ProjectConfig -- Project config skeletons ProjectConfigSkeleton, @@ -60,10 +60,12 @@ diff -up cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs.o where diff -up cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs.orig cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs --- cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs.orig 2001-09-09 09:46:40.000000000 +0800 -+++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs 2024-01-06 13:40:57.480462863 +0800 -@@ -332,9 +332,13 @@ rebuildProjectConfig verbosity ++++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs 2024-01-06 14:59:00.032454205 +0800 +@@ -330,11 +330,14 @@ rebuildProjectConfig verbosity + fileMonitorProjectConfigKey -- todo check deps too? + $ do liftIO $ info verbosity "Project settings changed, reconfiguring..." - liftIO $ createDirectoryIfMissingVerbose verbosity True distProjectCacheDirectory +- 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) From d9213885b1b96223c32aae88b6a0f3ef5eb3e6dc Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sat, 6 Jan 2024 15:26:06 +0800 Subject: [PATCH 10/22] dist-newstyle fix: use #8358 and #8627 instead of minimal backport --- 8358.patch | 165 +++++++++++++++++++++ 8627.patch | 27 ++++ cabal-install-3.8-dist-newstyle-8627.patch | 82 ---------- cabal-install.spec | 18 ++- 4 files changed, 204 insertions(+), 88 deletions(-) create mode 100644 8358.patch create mode 100644 8627.patch delete mode 100644 cabal-install-3.8-dist-newstyle-8627.patch diff --git a/8358.patch b/8358.patch new file mode 100644 index 0000000..4418487 --- /dev/null +++ b/8358.patch @@ -0,0 +1,165 @@ +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 new file mode 100644 index 0000000..df7b387 --- /dev/null +++ b/8627.patch @@ -0,0 +1,27 @@ +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-dist-newstyle-8627.patch b/cabal-install-3.8-dist-newstyle-8627.patch deleted file mode 100644 index 0dfec5b..0000000 --- a/cabal-install-3.8-dist-newstyle-8627.patch +++ /dev/null @@ -1,82 +0,0 @@ -diff -up cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs.orig cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs ---- cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs.orig 2001-09-09 09:46:40.000000000 +0800 -+++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectConfig/Legacy.hs 2024-01-06 14:58:33.025245561 +0800 -@@ -7,6 +7,7 @@ module Distribution.Client.ProjectConfig - -- Project config skeletons - ProjectConfigSkeleton, - parseProjectSkeleton, -+ instantiateProjectConfigSkeletonFetchingCompiler, - instantiateProjectConfigSkeleton, - singletonProjectConfigSkeleton, - projectSkeletonImports, -@@ -44,7 +45,7 @@ import Distribution.Client.CmdInstall.Cl - ( 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,6 +136,30 @@ type ProjectConfigImport = String - singletonProjectConfigSkeleton :: ProjectConfig -> ProjectConfigSkeleton - singletonProjectConfigSkeleton x = CondNode x mempty mempty - -+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 -+ [ProjectConfigImport] -+ ProjectConfig -+ -> ProjectConfig -+ go (CondNode l _imps ts) = -+ let branches = concatMap processBranch ts -+ in l <> mconcat branches -+ processBranch (CondBranch cnd t mf) = case cnd of -+ (Lit True) -> [go t] -+ (Lit False) -> maybe ([]) ((:[]) . go) mf -+ _ -> error $ "unable to process condition: " ++ show cnd -- TODO it would be nice if there were a pretty printer -+ - instantiateProjectConfigSkeleton :: OS -> Arch -> CompilerInfo -> FlagAssignment -> ProjectConfigSkeleton -> ProjectConfig - instantiateProjectConfigSkeleton os arch impl _flags skel = go $ mapTreeConds (fst . simplifyWithSysParams os arch impl) skel - where -diff -up cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs.orig cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs ---- cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs.orig 2001-09-09 09:46:40.000000000 +0800 -+++ cabal-install-3.8.1.0/src/Distribution/Client/ProjectPlanning.hs 2024-01-06 14:59:00.032454205 +0800 -@@ -330,11 +330,14 @@ 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 -- (compiler, Platform arch os, _) <- configureCompiler verbosity distDirLayout ((fst $ PD.ignoreConditions projectConfigSkeleton) <> cliConfig) -- let projectConfig = instantiateProjectConfigSkeleton os arch (compilerInfo compiler) mempty projectConfigSkeleton -+ 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) -+ -+ projectConfig <- instantiateProjectConfigSkeletonFetchingCompiler fetchCompiler mempty projectConfigSkeleton - localPackages <- phaseReadLocalPackages (projectConfig <> cliConfig) - return (projectConfig, localPackages) - diff --git a/cabal-install.spec b/cabal-install.spec index 536f585..e5ab702 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: 3%{?dist} +Release: 4%{?dist} Summary: The command-line interface for Cabal and Hackage License: BSD-3-Clause @@ -26,9 +26,11 @@ Source2: https://hackage.haskell.org/package/%{pkgver}/%{name}.cabal#/%{p 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 -# backport of https://github.com/haskell/cabal/pull/8627 -Patch1: cabal-install-3.8-dist-newstyle-8627.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 @@ -197,7 +199,8 @@ cabal-tweak-dep-ver base 4.17 4.18 %if v"%pkgconf_version" > v"1.9" && v"%pkgconf_version" < v"2.0" %patch -P0 -p0 -b .orig %endif -%patch -P1 -p1 -b .orig +%patch -P1 -p2 -b .orig +%patch -P2 -p2 -b .orig %build @@ -250,8 +253,11 @@ install -pm 644 -D -t %{buildroot}%{_sysconfdir}/profile.d/ %{SOURCE10} %changelog +* Sat Jan 6 2024 Jens Petersen - 3.8.1.0-4 +- just use #8358 and #8627 to prevent redundant dist-newstyle/ + * Sat Jan 6 2024 Jens Petersen - 3.8.1.0-3 -- backport fix to prevent dist-newstyle/ directory creation on cabal update +- prevent dist-newstyle/ directory creation for cabal update https://github.com/haskell/cabal/issues/8589 * Fri Nov 3 2023 Jens Petersen - 3.8.1.0-2 From fcc101b06ca70d334b08c53fe94155ce55feaa26 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 14:55:44 +0000 Subject: [PATCH 11/22] 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 e5ab702..734f2c0 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: 4%{?dist} +Release: 5%{?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 +* Fri Jan 19 2024 Fedora Release Engineering - 3.8.1.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sat Jan 6 2024 Jens Petersen - 3.8.1.0-4 - just use #8358 and #8627 to prevent redundant dist-newstyle/ From 1da05e57d60bc99bd644b14ae0d74dec21d4bcab Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 23 Jan 2024 01:05:01 +0000 Subject: [PATCH 12/22] 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 13/22] 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 14/22] 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 15/22] 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 16/22] 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 17/22] 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 18/22] 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 19/22] 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 20/22] 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 21/22] 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 22/22] 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