hackage-cli 0.1.0.2 → 0.1.0.3
raw patch · 6 files changed
+65/−21 lines, 6 filesdep ~Cabaldep ~optparse-applicative
Dependency ranges changed: Cabal, optparse-applicative
Files
- CHANGELOG.md +8/−0
- hackage-cli.cabal +8/−6
- src/Main.hs +32/−13
- stack-9.10.yaml +7/−0
- stack-9.6.yaml +5/−1
- stack-9.8.yaml +5/−1
CHANGELOG.md view
@@ -1,5 +1,13 @@ # Changelog for hackage-cli +## 0.1.0.3++_Andreas Abel, 2025-06-04_++- Fix for `Cabal-3.14.*`.++Builds with `Cabal 3.4 - 3.14` and `GHC 8.2 - 9.12`.+ ## 0.1.0.2 _Andreas Abel, 2024-07-02_
hackage-cli.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.4 name: hackage-cli-version: 0.1.0.2+version: 0.1.0.3 synopsis: CLI tool for Hackage description:@@ -18,9 +18,10 @@ -- Supported GHC versions when building with cabal: tested-with: -- Keep in descending order.- GHC == 9.10.1- GHC == 9.8.2- GHC == 9.6.5+ GHC == 9.12.2+ GHC == 9.10.2+ GHC == 9.8.4+ GHC == 9.6.7 GHC == 9.4.8 GHC == 9.2.8 GHC == 9.0.2@@ -38,6 +39,7 @@ fixtures/*.diff fixtures/*.cabal -- Supported GHC versions when building with stack:+ stack-9.10.yaml stack-9.8.yaml stack-9.6.yaml @@ -54,7 +56,7 @@ build-depends: , base >= 4.10.0.0 && < 5 , bytestring >= 0.10.4.0 && < 0.13- , Cabal >= 3.4 && < 3.13+ , Cabal >= 3.4 && < 3.15 , containers >= 0.5.0.0 && < 0.8 , mtl >= 2.2.2 && < 2.3 || >= 2.3.1 && < 2.4 , pretty ^>= 1.1.2@@ -124,7 +126,7 @@ , microlens-mtl >= 0.1.11.1 && < 0.3 , microlens-th >= 0.4.1.3 && < 0.5 , netrc ^>= 0.2.0.0- , optparse-applicative >= 0.14 && < 0.19+ , optparse-applicative >= 0.14 && < 1 , process-extras ^>= 0.7.4 , semigroups >= 0.18.3 && < 0.21 , stringsearch ^>= 0.3.6
src/Main.hs view
@@ -52,6 +52,9 @@ #if MIN_VERSION_Cabal(3,7,0) import qualified Distribution.Simple.PackageDescription as C #endif+#if MIN_VERSION_Cabal(3,14,0)+import Distribution.Utils.Path (makeSymbolicPath)+#endif import Lens.Micro import Lens.Micro.Mtl@@ -79,9 +82,9 @@ -- import Cabal -import Distribution.Server.Util.CabalRevisions-import IndexShaSum-import CabalEdit+import Distribution.Server.Util.CabalRevisions ( diffCabalRevisions, Change(Change) )+import IndexShaSum ( IndexShaSumOptions(IndexShaSumOptions), run )+import CabalEdit ( PkgRev, cabalEditXRev ) type PkgName = ByteString type PkgVer = ByteString@@ -623,9 +626,9 @@ mainWithOptions opts mainWithOptions :: Options -> IO ()-mainWithOptions Options {..} = do+mainWithOptions Options{ optHost, optCommand } = do case optCommand of- PullCabal (PullCOptions {..}) -> do+ PullCabal (PullCOptions{ optPlCPkgName, optPlCIncrRev, optPlCForce, optPlCPkgVers }) -> do let pkgn = optPlCPkgName cs <- runHConn (fetchAllCabalFiles pkgn (fromMaybe C.anyVersion optPlCPkgVers))@@ -652,8 +655,16 @@ return () - SyncCabal (SyncCOptions {..}) -> do- (pkgn,pkgv,xrev) <- pkgDescToPkgIdXrev <$> C.readGenericPackageDescription C.deafening optSyCFile+ SyncCabal (SyncCOptions{ optSyCFile, optSyCIncrRev, optSyCForce }) -> do+ (pkgn,pkgv,xrev) <- pkgDescToPkgIdXrev <$>+ C.readGenericPackageDescription+ C.deafening+#if MIN_VERSION_Cabal(3,14,0)+ Nothing+ (makeSymbolicPath optSyCFile)+#else+ optSyCFile+#endif cab0 <- BS.readFile optSyCFile BS8.putStrLn $ mconcat [ "local : "@@ -702,12 +713,12 @@ BS.writeFile optSyCFile cab' BS8.putStrLn $ mconcat [ "local : "- , pkgn, "-", pkgv, "-r", BS8.pack (show $ xrev')+ , pkgn, "-", pkgv, "-r", BS8.pack (show xrev') , " ('", BS8.pack optSyCFile, "')" ] - ListCabal (ListCOptions {..}) -> do+ ListCabal (ListCOptions{ optLCPkgName, optNoAnn, optRevUrls }) -> do let pkgn = optLCPkgName vs <- runHConn (fetchVersions pkgn)@@ -731,12 +742,20 @@ BS8.putStrLn $ status <> pkgn <> "-" <> v return () - PushCabal (PushCOptions {..}) -> do+ PushCabal (PushCOptions{ optPsCIncrRev, optPsCPublish, optPsCFiles }) -> do (username,password) <- maybe (fail "missing Hackage credentials") return =<< getHackageCreds putStrLn $ "Using Hackage credentials for username " ++ show username forM_ optPsCFiles $ \fn -> do- (pkgn, pkgv, xrev0) <- pkgDescToPkgIdXrev <$> C.readGenericPackageDescription C.deafening fn+ (pkgn, pkgv, xrev0) <- pkgDescToPkgIdXrev <$>+ C.readGenericPackageDescription+ C.deafening+#if MIN_VERSION_Cabal(3,14,0)+ Nothing+ (makeSymbolicPath fn)+#else+ fn+#endif let xrev = applyWhen optPsCIncrRev (+1) xrev0 putStrLn $ concat [ "Pushing ", show fn@@ -754,7 +773,7 @@ BS8.putStrLn (tidyHtml tmp) putStrLn (replicate 80 '=') - PushCandidate (PushPCOptions {..}) -> do+ PushCandidate (PushPCOptions{ optPPCFiles }) -> do (username,password) <- maybe (fail "missing Hackage credentials") return =<< getHackageCreds putStrLn $ "Using Hackage credentials for username " ++ show username @@ -770,7 +789,7 @@ putStrLn (replicate 80 '=') - CheckRevision (CheckROptions {..}) -> do+ CheckRevision (CheckROptions{ optCRNew, optCROrig }) -> do old <- BS.readFile optCROrig new <- BS.readFile optCRNew
+ stack-9.10.yaml view
@@ -0,0 +1,7 @@+resolver: nightly-2025-05-28+compiler: ghc-9.10.2+compiler-check: match-exact++flags:+ HsOpenSSL:+ use-pkg-config: true
stack-9.6.yaml view
@@ -1,1 +1,5 @@-resolver: lts-22.27+resolver: lts-22.44++flags:+ HsOpenSSL:+ use-pkg-config: true
stack-9.8.yaml view
@@ -1,1 +1,5 @@-resolver: nightly-2024-07-01+resolver: lts-23.24++flags:+ HsOpenSSL:+ use-pkg-config: true