packages feed

releaser 0.2.1.0 → 0.3.0.0

raw patch · 4 files changed

+32/−4 lines, 4 filesdep −regex-tdfa-text

Dependencies removed: regex-tdfa-text

Files

CHANGELOG.md view
@@ -1,5 +1,11 @@ # Revision history for releaser +## 0.3.0.0 -- 2020-05-04++* Upload to haddock support++* LTS-15 support+ ## 0.2.1.0 -- 2019-12-02  * Use cabal v2 commands to avoid compatibility issues
releaser.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.4 name: releaser synopsis: Automation of Haskell package release process-version: 0.2.1.0+version: 0.3.0.0 license: Apache-2.0 license-file: LICENSE maintainer: domen@dev.si@@ -24,7 +24,6 @@         base >=4.7 && <5,         Cabal -any,         regex-tdfa -any,-        regex-tdfa-text -any,         process -any,         pretty-terminal -any,         text -any
releaser/Main.hs view
@@ -24,3 +24,7 @@   gitPush "origin"   gitPushTags "origin"   cabalUpload tarball++  -- make haddocks and upload them+  docsTarball <- cabalMakeHaddocks "."+  cabalUploadDocs docsTarball
src/Releaser/Primitives.hs view
@@ -6,6 +6,8 @@   , cabalBumpVersion   , cabalSdist   , cabalUpload+  , cabalMakeHaddocks+  , cabalUploadDocs   -- git primitives   , gitCheckout   , gitGetTags@@ -71,7 +73,7 @@ cabalRead :: FilePath -> IO CabalInfo cabalRead dir = do   logStep $ "Looking for a cabal file in " <> dir-  cabalFile <- tryFindPackageDesc dir+  cabalFile <- tryFindPackageDesc silent dir   genericPackageDescription <- readGenericPackageDescription silent cabalFile   let pkgversion = pkgVersion $ package $ packageDescription genericPackageDescription       pkgname = pkgName $ package $ packageDescription genericPackageDescription@@ -87,7 +89,7 @@ cabalWriteVersion dir versionStr = do   if validCabalVersion versionStr   then do-    cabalFile <- tryFindPackageDesc dir+    cabalFile <- tryFindPackageDesc silent dir     cabalinfo <- cabalRead dir     cabal <- T.readFile cabalFile     let versionPrev :: T.Text@@ -124,6 +126,23 @@   let sdistTarball = "dist-newstyle/sdist/" <> name cabalinfo <> "-" <> version cabalinfo <> ".tar.gz"   logStep $ "Created " <> sdistTarball   return sdistTarball++cabalMakeHaddocks :: FilePath -> IO FilePath+cabalMakeHaddocks dir = do+  logStep "Running $ cabal haddock"+  cabalinfo <- cabalRead dir+  void $ readProcess "cabal" ["v2-haddock", "--haddock-for-hackage"] mempty+  let docsTarball = "dist-newstyle/" <> name cabalinfo <> "-" <> version cabalinfo <> "-docs.tar.gz"+  logStep $ "Created " <> docsTarball+  return docsTarball++cabalUploadDocs :: FilePath -> IO ()+cabalUploadDocs docsTarball = do+  logStep "Running $ cabal upload -d"+  -- TODO: recommend that credentials are configured via ~/cabal/config+  interactiveProcess (proc "cabal" ["upload", "-d", "--publish", docsTarball]) $ \_ -> do+    promptRetry "cabal upload -d"+    cabalUploadDocs docsTarball  cabalUpload :: FilePath -> IO () cabalUpload sdistTarball = do