commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2020-08-28 21:40:01 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.3399 (New) Package is "ghc-turtle" Fri Aug 28 21:40:01 2020 rev:13 rq:829462 version:1.5.21 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2020-06-19 17:20:13.427344048 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.3399/ghc-turtle.changes 2020-08-28 21:40:03.336856764 +0200 @@ -1,0 +2,22 @@ +Tue Aug 18 10:46:23 UTC 2020 - Peter Simons + +- Replace %setup -q with the more modern %autosetup macro. + +--- +Sun Aug 16 02:01:46 UTC 2020 - psim...@suse.com + +- Update turtle to version 1.5.21. + 1.5.21 + + * Build against `optparse-applicative-0.16.0.0` + +--- +Wed Aug 12 02:00:40 UTC 2020 - psim...@suse.com + +- Update turtle to version 1.5.20. + 1.5.20 + + * Build against `doctest-0.17` + * Only depend on `semigroups` for GHC < 8.0 + +--- Old: turtle-1.5.19.tar.gz turtle.cabal New: turtle-1.5.21.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.SIzQHb/_old 2020-08-28 21:40:05.036857570 +0200 +++ /var/tmp/diff_new_pack.SIzQHb/_new 2020-08-28 21:40:05.040857572 +0200 @@ -19,13 +19,12 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.5.19 +Version:1.5.21 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz -Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel @@ -41,7 +40,6 @@ BuildRequires: ghc-optparse-applicative-devel BuildRequires: ghc-process-devel BuildRequires: ghc-rpm-macros -BuildRequires: ghc-semigroups-devel BuildRequires: ghc-stm-devel BuildRequires: ghc-streaming-commons-devel BuildRequires: ghc-system-fileio-devel @@ -54,7 +52,6 @@ BuildRequires: ghc-unix-devel %if %{with tests} BuildRequires: ghc-doctest-devel -BuildRequires: ghc-fail-devel %endif %description @@ -98,8 +95,7 @@ This package provides the Haskell %{pkg_name} library development files. %prep -%setup -q -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal +%autosetup -n %{pkg_name}-%{version} %build %ghc_lib_build ++ turtle-1.5.19.tar.gz -> turtle-1.5.21.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.19/CHANGELOG.md new/turtle-1.5.21/CHANGELOG.md --- old/turtle-1.5.19/CHANGELOG.md 2001-09-09 03:46:40.0 +0200 +++ new/turtle-1.5.21/CHANGELOG.md 2020-08-15 07:54:22.0 +0200 @@ -1,3 +1,12 @@ +1.5.21 + +* Build against `optparse-applicative-0.16.0.0` + +1.5.20 + +* Build against `doctest-0.17` +* Only depend on `semigroups` for GHC < 8.0 + 1.5.19 * Add pattern synonyms for `Size` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.19/src/Turtle/Options.hs new/turtle-1.5.21/src/Turtle/Options.hs --- old/turtle-1.5.19/src/Turtle/Options.hs 2001-09-09 03:46:40.0 +0200 +++ new/turtle-1.5.21/src/Turtle/Options.hs 2020-08-15 07:54:22.0 +0200 @@ -284,7 +284,7 @@ s <- Opts.readerAsk case f (Text.pack s) of Just a -> return a -Nothing -> Opts.readerAbort Opts.ShowHelpText +Nothing -> Opts.readerAbort (Opts.ShowHelpText Nothing) {-| Create a sub-command that parses `CommandName` and then parses the rest of the command-line arguments diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.19/src/Turtle/Prelude.hs new/turtle-1.5.21/src/Turtle/Prelude.hs --- old/turtle-1.5.19/src/Turtle/Prelude.hs 2001-09-09 03:46:40.0 +0200 +++ new/turtle-1.5.21/src/Turtle/Prelude.hs 2020-08-15 07:54:22.0 +0200 @@ -896,7 +896,11 @@ arguments = liftIO (fmap (map pack) getArgs) #if __GLASGOW_HASKELL__ >= 710 --- | Set or modify an environment variable +{-| Set or modify an environment variable + +Note: This will change the current environment for all of your program's +threads since this modifies the global state of the proces
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2020-06-19 17:20:11 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.3606 (New) Package is "ghc-turtle" Fri Jun 19 17:20:11 2020 rev:12 rq:815201 version:1.5.19 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2020-05-11 13:36:39.264526515 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.3606/ghc-turtle.changes 2020-06-19 17:20:13.427344048 +0200 @@ -1,0 +2,5 @@ +Tue Jun 16 11:14:45 UTC 2020 - Peter Simons + +- Re-generate file with latest version of spec-cleaner. + +--- New: turtle.cabal Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.WtmBO8/_old 2020-06-19 17:20:14.275346277 +0200 +++ /var/tmp/diff_new_pack.WtmBO8/_new 2020-06-19 17:20:14.279346287 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-turtle # -# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -25,6 +25,7 @@ License:BSD-3-Clause URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel @@ -98,6 +99,7 @@ %prep %setup -q -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++ turtle.cabal ++ Name: turtle Version: 1.5.19 x-revision: 1 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 License-File: LICENSE Copyright: 2015 Gabriel Gonzalez Author: Gabriel Gonzalez Maintainer: gabriel...@gmail.com Bug-Reports: https://github.com/Gabriel439/Haskell-Turtle-Library/issues Synopsis: Shell programming, Haskell-style Description: @turtle@ is a reimplementation of the Unix command line environment in Haskell so that you can use Haskell as both a shell and a scripting language. . Features include: . * Batteries included: Command an extended suite of predefined utilities . * Interoperability: You can still run external shell commands . * Portability: Works on Windows, OS X, and Linux . * Exception safety: Safely acquire and release resources . * Streaming: Transform or fold command output in constant space . * Patterns: Use typed regular expressions that can parse structured values . * Formatting: Type-safe @printf@-style text formatting . * Modern: Supports @text@ and @system-filepath@ . Read "Turtle.Tutorial" for a detailed tutorial or "Turtle.Prelude" for a quick-start guide . @turtle@ is designed to be beginner-friendly, but as a result lacks certain features, like tracing commands. If you feel comfortable using @turtle@ then you should also check out the @Shelly@ library which provides similar functionality. Category: System Extra-Source-Files: CHANGELOG.md Source-Repository head Type: git Location: https://github.com/Gabriel439/Haskell-Turtle-Library Library HS-Source-Dirs: src Build-Depends: base >= 4.6 && < 5 , ansi-wl-pprint >= 0.6 && < 0.7 , async>= 2.0.0.0 && < 2.3 , bytestring >= 0.9.1.8 && < 0.11, clock>= 0.4.1.2 && < 0.9 , containers >= 0.5.0.0 && < 0.7 , directory>= 1.3.1.0 && < 1.4 , exceptions >= 0.4 && < 0.11, foldl>= 1.1 && < 1.5 , hostname < 1.1 , managed >= 1.0.3 && < 1.1 , process >= 1.0.1.1 && < 1.7 , semigroups >= 0.5.0 && < 0.20, system-filepath >= 0.3.1 && < 0.5 , system-fileio>= 0.2.1 && < 0.4 , stm< 2.6 , streaming-commons < 0.3 , temporary < 1.4 , text >= 1.0.0 && < 1.3 , time < 1.10, transformers >= 0.2.0.0 && < 0.6 , optparse-applicative >= 0.13&& < 0.16, optional-args>= 1.0 && < 2.0 , unix-compat >= 0.4 && < 0.6
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2020-05-11 13:36:35 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.2738 (New) Package is "ghc-turtle" Mon May 11 13:36:35 2020 rev:11 rq:801059 version:1.5.19 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2020-03-09 14:17:09.454655860 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.2738/ghc-turtle.changes 2020-05-11 13:36:39.264526515 +0200 @@ -1,0 +2,18 @@ +Wed May 6 06:52:11 UTC 2020 - psim...@suse.com + +- Update turtle to version 1.5.19. + 1.5.19 + + * Add pattern synonyms for `Size` + + 1.5.18 + + * Fix space leak + + 1.5.17 + + * Add `optionsExt`: Extended version of `options` with header, footer, +porgram-description and version information in `--help` flag + * Add `readlink` + +--- Old: turtle-1.5.16.tar.gz New: turtle-1.5.19.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.AF7bpF/_old 2020-05-11 13:36:40.076528216 +0200 +++ /var/tmp/diff_new_pack.AF7bpF/_new 2020-05-11 13:36:40.080528225 +0200 @@ -19,7 +19,7 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.5.16 +Version:1.5.19 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause ++ turtle-1.5.16.tar.gz -> turtle-1.5.19.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.16/CHANGELOG.md new/turtle-1.5.19/CHANGELOG.md --- old/turtle-1.5.16/CHANGELOG.md 2020-01-20 18:52:57.0 +0100 +++ new/turtle-1.5.19/CHANGELOG.md 2001-09-09 03:46:40.0 +0200 @@ -1,3 +1,17 @@ +1.5.19 + +* Add pattern synonyms for `Size` + +1.5.18 + +* Fix space leak + +1.5.17 + +* Add `optionsExt`: Extended version of `options` with header, footer, + porgram-description and version information in `--help` flag +* Add `readlink` + 1.5.16 * Add `cptreeL` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.16/src/Turtle/Options.hs new/turtle-1.5.19/src/Turtle/Options.hs --- old/turtle-1.5.16/src/Turtle/Options.hs 2020-01-20 18:52:57.0 +0100 +++ new/turtle-1.5.19/src/Turtle/Options.hs 2001-09-09 03:46:40.0 +0200 @@ -71,6 +71,7 @@ , subcommand , subcommandGroup , options +, optionsExt ) where @@ -107,6 +108,30 @@ prefs = Opts.showHelpOnError #endif +{-| Parse the given options from the command line and add additional information + +Extended version of @options@ with program version header and footer information +-} +optionsExt :: MonadIO io => Header -> Footer -> Description -> Version -> Parser a -> io a +optionsExt header footer desc version parser = liftIO +$ Opts.customExecParser (Opts.prefs prefs) +$ Opts.info (Opts.helper <*> versionOption <*> parser) +(Opts.headerDoc (Just (getHeader header)) <> + Opts.footerDoc (Just (getFooter footer)) <> + Opts.progDescDoc (Just (getDescription desc))) + where +versionOption = + Opts.infoOption +(Text.unpack version) +(Opts.long "version" <> Opts.help "Show version") +prefs :: Opts.PrefsMod +#if MIN_VERSION_optparse_applicative(0,13,0) +prefs = Opts.showHelpOnError <> Opts.showHelpOnEmpty +#else +prefs = Opts.showHelpOnError +#endif + + {-| The name of a command-line argument This is used to infer the long name and metavariable for the command line @@ -135,6 +160,21 @@ newtype Description = Description { getDescription :: Doc } deriving (IsString) +{-| Header of the program + +This description will appear in the header of the @--help@ output +-} +newtype Header = Header { getHeader :: Doc } +deriving (IsString) +{-| Footer of the program + +This description will appear in the footer of the @--help@ output +-} +newtype Footer = Fotter { getFooter :: Doc } +deriving (IsString) + +-- | Program Version +type Version = Text {-| A helpful message explaining what a flag does This will appear in the @--help@ output diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.16/src/Turtle/Prelude.hs new/turtle-1.5.19/src/Turtle/Prelude.hs --- old/turtle-1.5.16/src/Turtle/Prelude.hs 2020-01-20 18:52:57.0 +0100 +++ new/turtle-1.5.19/src/Turtle/Prelude.hs 2001-09-09 03:46:40.0 +0200 @@ -4,6 +4,8 @@ {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2020-03-09 14:17:07 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.26092 (New) Package is "ghc-turtle" Mon Mar 9 14:17:07 2020 rev:10 rq:780039 version:1.5.16 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2019-12-27 13:58:42.848813285 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.26092/ghc-turtle.changes 2020-03-09 14:17:09.454655860 +0100 @@ -1,0 +2,8 @@ +Tue Jan 21 03:08:25 UTC 2020 - psim...@suse.com + +- Update turtle to version 1.5.16. + 1.5.16 + + * Add `cptreeL` + +--- Old: turtle-1.5.15.tar.gz turtle.cabal New: turtle-1.5.16.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.fDaCYb/_old 2020-03-09 14:17:10.462656525 +0100 +++ /var/tmp/diff_new_pack.fDaCYb/_new 2020-03-09 14:17:10.470656530 +0100 @@ -1,7 +1,7 @@ # # spec file for package ghc-turtle # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,13 +19,12 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.5.15 +Version:1.5.16 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz -Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel @@ -99,7 +98,6 @@ %prep %setup -q -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++ turtle-1.5.15.tar.gz -> turtle-1.5.16.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.15/CHANGELOG.md new/turtle-1.5.16/CHANGELOG.md --- old/turtle-1.5.15/CHANGELOG.md 2019-09-19 15:36:21.0 +0200 +++ new/turtle-1.5.16/CHANGELOG.md 2020-01-20 18:52:57.0 +0100 @@ -1,3 +1,7 @@ +1.5.16 + +* Add `cptreeL` + 1.5.15 * Add `toLines` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.15/src/Turtle/Bytes.hs new/turtle-1.5.16/src/Turtle/Bytes.hs --- old/turtle-1.5.15/src/Turtle/Bytes.hs 2019-09-19 15:36:21.0 +0200 +++ new/turtle-1.5.16/src/Turtle/Bytes.hs 2020-01-20 18:52:57.0 +0100 @@ -49,6 +49,7 @@ import Control.Monad.IO.Class (MonadIO(..)) import Control.Monad.Managed (MonadManaged(..)) import Data.ByteString (ByteString) +import Data.Monoid import Data.Streaming.Zlib (Inflate, Popper, PopperRes(..), WindowBits(..)) import Data.Text (Text) import Data.Text.Encoding (Decoding(..)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.15/src/Turtle/Prelude.hs new/turtle-1.5.16/src/Turtle/Prelude.hs --- old/turtle-1.5.15/src/Turtle/Prelude.hs 2019-09-19 15:36:21.0 +0200 +++ new/turtle-1.5.16/src/Turtle/Prelude.hs 2020-01-20 18:52:57.0 +0100 @@ -127,6 +127,7 @@ , mktree , cp , cptree +, cptreeL #if !defined(mingw32_HOST_OS) , symlink #endif @@ -1108,7 +1109,7 @@ isNotSymbolicLink :: MonadIO io => FilePath -> io Bool isNotSymbolicLink = fmap (not . PosixCompat.isSymbolicLink) . lstat --- | Copy a directory tree +-- | Copy a directory tree and preserve symbolic links cptree :: MonadIO io => FilePath -> FilePath -> io () cptree oldTree newTree = sh (do oldPath <- lsif isNotSymbolicLink oldTree @@ -1140,6 +1141,18 @@ else do mktree newPath ) +-- | Copy a directory tree and dereference symbolic links +cptreeL :: MonadIO io => FilePath -> FilePath -> io () +cptreeL oldTree newTree = sh (do +oldPath <- lstree oldTree +Just suffix <- return (Filesystem.stripPrefix (oldTree "") oldPath) +let newPath = newTree suffix +isFile <- testfile oldPath +if isFile +then mktree (Filesystem.directory newPath) >> cp oldPath newPath +else mktree newPath ) + + -- | Remove a file rm :: MonadIO io => FilePath -> io () rm path = liftIO (Filesystem.removeFile path) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exc
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2019-12-27 13:58:37 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.6675 (New) Package is "ghc-turtle" Fri Dec 27 13:58:37 2019 rev:9 rq:759544 version:1.5.15 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2019-10-18 14:35:18.455946537 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.6675/ghc-turtle.changes 2019-12-27 13:58:42.848813285 +0100 @@ -1,0 +2,5 @@ +Fri Nov 8 16:15:04 UTC 2019 - Peter Simons + +- Drop obsolete group attributes. + +--- Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.s6nmSc/_old 2019-12-27 13:58:43.736813714 +0100 +++ /var/tmp/diff_new_pack.s6nmSc/_new 2019-12-27 13:58:43.740813716 +0100 @@ -23,7 +23,6 @@ Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause -Group: Development/Libraries/Haskell URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal @@ -90,7 +89,6 @@ %package devel Summary:Haskell %{pkg_name} library development files -Group: Development/Libraries/Haskell Requires: %{name} = %{version}-%{release} Requires: ghc-compiler = %{ghc_version} Requires(post): ghc-compiler = %{ghc_version}
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2019-10-18 14:35:17 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.2352 (New) Package is "ghc-turtle" Fri Oct 18 14:35:17 2019 rev:8 rq:737224 version:1.5.15 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2019-07-29 17:30:05.722219943 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.2352/ghc-turtle.changes 2019-10-18 14:35:18.455946537 +0200 @@ -1,0 +2,12 @@ +Fri Sep 20 02:02:13 UTC 2019 - psim...@suse.com + +- Update turtle to version 1.5.15. + 1.5.15 + + * Add `toLines` + * Add `Turtle.Bytes.{fromUTF8,toUTF8}` + * Add `Turtle.Bytes.{compress,decompress}` + * Always expose a `MonadFail` instance, relying on the `fail` package +where needed. Related GHC 8.8 preparedness. + +--- Old: turtle-1.5.14.tar.gz New: turtle-1.5.15.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.QhBuQ8/_old 2019-10-18 14:35:19.091944880 +0200 +++ /var/tmp/diff_new_pack.QhBuQ8/_new 2019-10-18 14:35:19.095944870 +0200 @@ -19,14 +19,14 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.5.14 +Version:1.5.15 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause Group: Development/Libraries/Haskell URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz -Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/3.cabal#/%{pkg_name}.cabal +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel @@ -44,6 +44,7 @@ BuildRequires: ghc-rpm-macros BuildRequires: ghc-semigroups-devel BuildRequires: ghc-stm-devel +BuildRequires: ghc-streaming-commons-devel BuildRequires: ghc-system-fileio-devel BuildRequires: ghc-system-filepath-devel BuildRequires: ghc-temporary-devel @@ -54,6 +55,7 @@ BuildRequires: ghc-unix-devel %if %{with tests} BuildRequires: ghc-doctest-devel +BuildRequires: ghc-fail-devel %endif %description ++ turtle-1.5.14.tar.gz -> turtle-1.5.15.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.14/CHANGELOG.md new/turtle-1.5.15/CHANGELOG.md --- old/turtle-1.5.14/CHANGELOG.md 2019-04-18 19:54:21.0 +0200 +++ new/turtle-1.5.15/CHANGELOG.md 2019-09-19 15:36:21.0 +0200 @@ -1,3 +1,11 @@ +1.5.15 + +* Add `toLines` +* Add `Turtle.Bytes.{fromUTF8,toUTF8}` +* Add `Turtle.Bytes.{compress,decompress}` +* Always expose a `MonadFail` instance, relying on the `fail` package + where needed. Related GHC 8.8 preparedness. + 1.5.14 * Fix `cptree` to copy symlinks instead of descending into them diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.14/src/Turtle/Bytes.hs new/turtle-1.5.15/src/Turtle/Bytes.hs --- old/turtle-1.5.14/src/Turtle/Bytes.hs 2019-04-18 19:54:20.0 +0200 +++ new/turtle-1.5.15/src/Turtle/Bytes.hs 2019-09-19 15:36:21.0 +0200 @@ -16,6 +16,12 @@ , append , stderr , strict +, compress +, decompress +, WindowBits(..) +, Zlib.defaultWindowBits +, fromUTF8 +, toUTF8 -- * Subprocess management , proc @@ -43,7 +49,9 @@ import Control.Monad.IO.Class (MonadIO(..)) import Control.Monad.Managed (MonadManaged(..)) import Data.ByteString (ByteString) +import Data.Streaming.Zlib (Inflate, Popper, PopperRes(..), WindowBits(..)) import Data.Text (Text) +import Data.Text.Encoding (Decoding(..)) import Filesystem.Path (FilePath) import Prelude hiding (FilePath) import System.Exit (ExitCode(..)) @@ -61,7 +69,10 @@ import qualified Control.Monad import qualified Control.Monad.Managed as Managed import qualified Data.ByteString +import qualified Data.Streaming.Zlib as Zlib import qualified Data.Text +import qualified Data.Text.Encodingas Encoding +import qualified Data.Text.Encoding.Error as Encoding.Error import qualified Foreign import qualified System.IO import qualified System.Processas Process @@ -657,3 +668,136 @@ -> Shell (Either ByteString ByteString) -- ^ Chunks of either output (`Right`) or error (`Left`) inshellWithErr cmd = streamWithEr
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2019-07-29 17:30:01 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.4126 (New) Package is "ghc-turtle" Mon Jul 29 17:30:01 2019 rev:7 rq:719373 version:1.5.14 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2019-05-17 23:44:20.865873777 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.4126/ghc-turtle.changes 2019-07-29 17:30:05.722219943 +0200 @@ -1,0 +2,5 @@ +Sun Jul 28 08:15:57 UTC 2019 - Peter Simons + +- Update Cabal file for more accurate build dependencies. + +--- Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.8ilsmC/_old 2019-07-29 17:30:07.286219364 +0200 +++ /var/tmp/diff_new_pack.8ilsmC/_new 2019-07-29 17:30:07.290219362 +0200 @@ -26,7 +26,7 @@ Group: Development/Libraries/Haskell URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz -Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/2.cabal#/%{pkg_name}.cabal +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/3.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel ++ turtle.cabal ++ --- /var/tmp/diff_new_pack.8ilsmC/_old 2019-07-29 17:30:07.490219288 +0200 +++ /var/tmp/diff_new_pack.8ilsmC/_new 2019-07-29 17:30:07.506219282 +0200 @@ -1,6 +1,6 @@ Name: turtle Version: 1.5.14 -x-revision: 2 +x-revision: 3 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 @@ -70,7 +70,7 @@ text < 1.3 , time < 1.9 , transformers >= 0.2.0.0 && < 0.6 , -optparse-applicative >= 0.13&& < 0.15, +optparse-applicative >= 0.13&& < 0.16, optional-args>= 1.0 && < 2.0 , unix-compat >= 0.4 && < 0.6 if os(windows)
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2019-05-17 23:44:19 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.5148 (New) Package is "ghc-turtle" Fri May 17 23:44:19 2019 rev:6 rq:703665 version:1.5.14 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2019-05-05 21:21:50.573346414 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.5148/ghc-turtle.changes 2019-05-17 23:44:20.865873777 +0200 @@ -1,0 +2,5 @@ +Fri May 17 08:26:56 UTC 2019 - Peter Simons + +- Update Cabal file for more accurate build dependencies. + +--- Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.3cdon3/_old 2019-05-17 23:44:22.097873101 +0200 +++ /var/tmp/diff_new_pack.3cdon3/_new 2019-05-17 23:44:22.097873101 +0200 @@ -26,7 +26,7 @@ Group: Development/Libraries/Haskell URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz -Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/2.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel ++ turtle.cabal ++ --- /var/tmp/diff_new_pack.3cdon3/_old 2019-05-17 23:44:22.145873075 +0200 +++ /var/tmp/diff_new_pack.3cdon3/_new 2019-05-17 23:44:22.145873075 +0200 @@ -1,6 +1,6 @@ Name: turtle Version: 1.5.14 -x-revision: 1 +x-revision: 2 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 @@ -62,7 +62,7 @@ hostname < 1.1 , managed >= 1.0.3 && < 1.1 , process >= 1.0.1.1 && < 1.7 , -semigroups >= 0.5.0 && < 0.19, +semigroups >= 0.5.0 && < 0.20, system-filepath >= 0.3.1 && < 0.5 , system-fileio>= 0.2.1 && < 0.4 , stm< 2.6 ,
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2019-05-05 21:21:49 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.5148 (New) Package is "ghc-turtle" Sun May 5 21:21:49 2019 rev:5 rq:700478 version:1.5.14 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2019-04-28 20:14:02.106396789 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.5148/ghc-turtle.changes 2019-05-05 21:21:50.573346414 +0200 @@ -1,0 +2,5 @@ +Fri May 3 19:02:57 UTC 2019 - Peter Simons + +- Update Cabal build instructions for more accurate dependencies. + +--- New: turtle.cabal Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.2nwk8W/_old 2019-05-05 21:21:51.753349628 +0200 +++ /var/tmp/diff_new_pack.2nwk8W/_new 2019-05-05 21:21:51.785349715 +0200 @@ -26,6 +26,7 @@ Group: Development/Libraries/Haskell URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel @@ -98,6 +99,7 @@ %prep %setup -q -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++ turtle.cabal ++ Name: turtle Version: 1.5.14 x-revision: 1 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 License-File: LICENSE Copyright: 2015 Gabriel Gonzalez Author: Gabriel Gonzalez Maintainer: gabriel...@gmail.com Tested-With: GHC == 7.10.2, GHC == 8.0.1 Bug-Reports: https://github.com/Gabriel439/Haskell-Turtle-Library/issues Synopsis: Shell programming, Haskell-style Description: @turtle@ is a reimplementation of the Unix command line environment in Haskell so that you can use Haskell as both a shell and a scripting language. . Features include: . * Batteries included: Command an extended suite of predefined utilities . * Interoperability: You can still run external shell commands . * Portability: Works on Windows, OS X, and Linux . * Exception safety: Safely acquire and release resources . * Streaming: Transform or fold command output in constant space . * Patterns: Use typed regular expressions that can parse structured values . * Formatting: Type-safe @printf@-style text formatting . * Modern: Supports @text@ and @system-filepath@ . Read "Turtle.Tutorial" for a detailed tutorial or "Turtle.Prelude" for a quick-start guide . @turtle@ is designed to be beginner-friendly, but as a result lacks certain features, like tracing commands. If you feel comfortable using @turtle@ then you should also check out the @Shelly@ library which provides similar functionality. Category: System Extra-Source-Files: CHANGELOG.md Source-Repository head Type: git Location: https://github.com/Gabriel439/Haskell-Turtle-Library Library HS-Source-Dirs: src Build-Depends: base >= 4.6 && < 5 , ansi-wl-pprint >= 0.6 && < 0.7 , async>= 2.0.0.0 && < 2.3 , bytestring >= 0.9.1.8 && < 0.11, clock>= 0.4.1.2 && < 0.9 , containers >= 0.5.0.0 && < 0.7 , directory>= 1.0.7 && < 1.4 , exceptions >= 0.4 && < 0.11, foldl>= 1.1 && < 1.5 , hostname < 1.1 , managed >= 1.0.3 && < 1.1 , process >= 1.0.1.1 && < 1.7 , semigroups >= 0.5.0 && < 0.19, system-filepath >= 0.3.1 && < 0.5 , system-fileio>= 0.2.1 && < 0.4 , stm< 2.6 , temporary < 1.4 , text < 1.3 , time < 1.9 , transformers >= 0.2.0.0 && < 0.6 , optparse-applicative >= 0.13&& < 0.15, optional-args>= 1.0 && < 2.0 , unix-compat >= 0.4 && < 0.6 if os(windows) Build-Depends: Win32 >= 2.2.0.1 && < 2.9 else Build-Depends: unix >= 2.5.1.0 && < 2.8 Exposed-Modules: Turtle, Turtle.Bytes, Turtle.Format, Turtle.Pattern, Turtle.Shell, Turtle.Options,
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2019-04-28 20:14:01 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.5536 (New) Package is "ghc-turtle" Sun Apr 28 20:14:01 2019 rev:4 rq:698564 version:1.5.14 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2018-12-28 12:35:30.287955810 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.5536/ghc-turtle.changes 2019-04-28 20:14:02.106396789 +0200 @@ -1,0 +2,10 @@ +Sat Apr 20 09:17:06 UTC 2019 - psim...@suse.com + +- Update turtle to version 1.5.14. + 1.5.14 + + * Fix `cptree` to copy symlinks instead of descending into them + * See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/344 + * Build against newer versions of `Win32` package + +--- Old: turtle-1.5.13.tar.gz New: turtle-1.5.14.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.1m5ncw/_old 2019-04-28 20:14:02.918396285 +0200 +++ /var/tmp/diff_new_pack.1m5ncw/_new 2019-04-28 20:14:02.918396285 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-turtle # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,7 +19,7 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.5.13 +Version:1.5.14 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause ++ turtle-1.5.13.tar.gz -> turtle-1.5.14.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.13/CHANGELOG.md new/turtle-1.5.14/CHANGELOG.md --- old/turtle-1.5.13/CHANGELOG.md 2018-12-20 17:51:10.0 +0100 +++ new/turtle-1.5.14/CHANGELOG.md 2019-04-18 19:54:21.0 +0200 @@ -1,3 +1,9 @@ +1.5.14 + +* Fix `cptree` to copy symlinks instead of descending into them +* See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/344 +* Build against newer versions of `Win32` package + 1.5.13 * Fix `chmod` bug diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.13/src/Turtle/Prelude.hs new/turtle-1.5.14/src/Turtle/Prelude.hs --- old/turtle-1.5.13/src/Turtle/Prelude.hs 2018-12-20 17:51:10.0 +0100 +++ new/turtle-1.5.14/src/Turtle/Prelude.hs 2019-04-18 19:54:20.0 +0200 @@ -130,6 +130,7 @@ #if !defined(mingw32_HOST_OS) , symlink #endif +, isNotSymbolicLink , rm , rmdir , rmtree @@ -1095,20 +1096,46 @@ #endif +{-| Returns `True` if the given `FilePath` is not a symbolic link + +This comes in handy in conjunction with `lsif`: + +> lsif isNotSymbolicLink +-} +isNotSymbolicLink :: MonadIO io => FilePath -> io Bool +isNotSymbolicLink = fmap (not . PosixCompat.isSymbolicLink) . lstat + -- | Copy a directory tree cptree :: MonadIO io => FilePath -> FilePath -> io () cptree oldTree newTree = sh (do -oldPath <- lstree oldTree +oldPath <- lsif isNotSymbolicLink oldTree + -- The `system-filepath` library treats a path like "/tmp" as a file and not -- a directory and fails to strip it as a prefix from `/tmp/foo`. Adding -- `( "")` to the end of the path makes clear that the path is a -- directory Just suffix <- return (Filesystem.stripPrefix (oldTree "") oldPath) + let newPath = newTree suffix + isFile <- testfile oldPath -if isFile -then mktree (Filesystem.directory newPath) >> cp oldPath newPath -else mktree newPath ) + +fileStatus <- lstat oldPath + +if PosixCompat.isSymbolicLink fileStatus +then do +oldTarget <- liftIO (PosixCompat.readSymbolicLink (Filesystem.encodeString oldPath)) + +mktree (Filesystem.directory newPath) + +liftIO (PosixCompat.createSymbolicLink oldTarget (Filesystem.encodeString newPath)) +else if isFile +then do +mktree (Filesystem.directory newPath) + +cp oldPath newPath +else do +mktree newPath ) -- | Remove a file rm :: MonadIO io => FilePath -> io () diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.13/turtle.cabal new/turtle-1.5.14/turtle.cabal --- old/turtle-1.5.13/turtle.cabal 2018-12-20 17:51:10.0 +0100 +++ new/turtle-1.5.14/turtle.cabal 2
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2018-12-28 12:35:21 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new.28833 (New) Package is "ghc-turtle" Fri Dec 28 12:35:21 2018 rev:3 rq:661502 version:1.5.13 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2018-10-25 08:19:09.919996448 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new.28833/ghc-turtle.changes 2018-12-28 12:35:30.287955810 +0100 @@ -1,0 +2,11 @@ +Fri Dec 21 03:02:51 UTC 2018 - psim...@suse.com + +- Update turtle to version 1.5.13. + 1.5.13 + + * Fix `chmod` bug + * See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/337 + * Add `reduce` and re-export `(<&>)` + * See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/332 + +--- Old: turtle-1.5.12.tar.gz New: turtle-1.5.13.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.BXFFe6/_old 2018-12-28 12:35:30.791955457 +0100 +++ /var/tmp/diff_new_pack.BXFFe6/_new 2018-12-28 12:35:30.791955457 +0100 @@ -19,7 +19,7 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.5.12 +Version:1.5.13 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause ++ turtle-1.5.12.tar.gz -> turtle-1.5.13.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.12/CHANGELOG.md new/turtle-1.5.13/CHANGELOG.md --- old/turtle-1.5.12/CHANGELOG.md 2018-10-04 01:19:27.0 +0200 +++ new/turtle-1.5.13/CHANGELOG.md 2018-12-20 17:51:10.0 +0100 @@ -1,3 +1,10 @@ +1.5.13 + +* Fix `chmod` bug +* See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/337 +* Add `reduce` and re-export `(<&>)` +* See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/332 + 1.5.12 * Increase upper bound on `containers` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.12/src/Turtle/Prelude.hs new/turtle-1.5.13/src/Turtle/Prelude.hs --- old/turtle-1.5.12/src/Turtle/Prelude.hs 2018-10-04 01:19:27.0 +0200 +++ new/turtle-1.5.13/src/Turtle/Prelude.hs 2018-12-20 17:51:10.0 +0100 @@ -1253,9 +1253,9 @@ let permissions' = fromSystemDirectoryPermissions permissions let permissions'' = modifyPermissions permissions' changed = permissions' /= permissions'' -let permissions''' = toSystemDirectoryPermissions permissions' +let permissions''' = toSystemDirectoryPermissions permissions'' when changed (Directory.setPermissions path' permissions''') -return permissions' ) +return permissions'' ) -- | Get a file or directory's user permissions getmod :: MonadIO io => FilePath -> io Permissions diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.12/src/Turtle/Shell.hs new/turtle-1.5.13/src/Turtle/Shell.hs --- old/turtle-1.5.12/src/Turtle/Shell.hs 2018-10-04 01:19:27.0 +0200 +++ new/turtle-1.5.13/src/Turtle/Shell.hs 2018-12-20 17:51:10.0 +0100 @@ -66,6 +66,7 @@ , foldIO , foldShell , fold +, reduce , sh , view @@ -143,6 +144,16 @@ fold :: MonadIO io => Shell a -> Fold a b -> io b fold s f = foldIO s (Foldl.generalize f) +-- | Flipped version of 'fold'. Useful for reducing a stream of data +-- +-- __Example__ +-- Sum a `Shell` of numbers: +-- +-- >>> select [1, 2, 3] & reduce Fold.sum +-- 6 +reduce :: MonadIO io => Fold a b -> Shell a -> io b +reduce = flip fold + -- | Run a `Shell` to completion, discarding any unused values sh :: MonadIO io => Shell a -> io () sh s = fold s (pure ()) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.12/src/Turtle.hs new/turtle-1.5.13/src/Turtle.hs --- old/turtle-1.5.12/src/Turtle.hs 2018-10-04 01:19:27.0 +0200 +++ new/turtle-1.5.13/src/Turtle.hs 2018-12-20 17:51:10.0 +0100 @@ -87,6 +87,7 @@ , ExitCode(..) , IsString(..) , (&) +, (<&>) ) where import Turtle.Format @@ -163,3 +164,32 @@ (&) :: a -> (a -> b) -> b x & f = f x #endif + +#if __GLASGOW_HASKELL__ >= 821 +import Data.Functor ((<&>)) +#else +-- | Flipped version of '<$>'. +-- +-- @ +-- ('<&>') = 'flip' 'fmap' +-- @ +-- +-- @since 4.11.0.0 +-- +-- __Examples__ +-- Apply @(+1)@ to a list, a 'Data.Maybe.Just' and a 'Data.Either.Right': +-- +-- >>> Just 2 <&> (+1) +-- Just 3 +-- +--
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2018-10-25 08:19:07 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Thu Oct 25 08:19:07 2018 rev:2 rq:642900 version:1.5.12 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2018-07-25 16:10:05.281564704 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2018-10-25 08:19:09.919996448 +0200 @@ -1,0 +2,17 @@ +Thu Oct 4 09:42:52 UTC 2018 - psim...@suse.com + +- Update turtle to version 1.5.12. + 1.5.12 + + * Increase upper bound on `containers` + + 1.5.11 + + * Don't forward broken pipe exceptions when using `inproc` + * See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/321 + * Increase upper bound on `stm` + * See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/321 + * Tutorial improvements: + * See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/322 + +--- Old: turtle-1.5.10.tar.gz New: turtle-1.5.12.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.qG1KI3/_old 2018-10-25 08:19:10.671996115 +0200 +++ /var/tmp/diff_new_pack.qG1KI3/_new 2018-10-25 08:19:10.675996114 +0200 @@ -12,14 +12,14 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.5.10 +Version:1.5.12 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause ++ turtle-1.5.10.tar.gz -> turtle-1.5.12.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.10/CHANGELOG.md new/turtle-1.5.12/CHANGELOG.md --- old/turtle-1.5.10/CHANGELOG.md 2018-07-04 04:54:31.0 +0200 +++ new/turtle-1.5.12/CHANGELOG.md 2018-10-04 01:19:27.0 +0200 @@ -1,3 +1,16 @@ +1.5.12 + +* Increase upper bound on `containers` + +1.5.11 + +* Don't forward broken pipe exceptions when using `inproc` +* See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/321 +* Increase upper bound on `stm` +* See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/321 +* Tutorial improvements: +* See: https://github.com/Gabriel439/Haskell-Turtle-Library/pull/322 + 1.5.10 * Increase upper bound on `doctest` and `criterion` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.5.10/src/Turtle/Bytes.hs new/turtle-1.5.12/src/Turtle/Bytes.hs --- old/turtle-1.5.10/src/Turtle/Bytes.hs 2018-07-04 04:54:31.0 +0200 +++ new/turtle-1.5.12/src/Turtle/Bytes.hs 2018-10-04 01:19:27.0 +0200 @@ -519,15 +519,15 @@ mvar <- liftIO (MVar.newMVar False) let close handle = do MVar.modifyMVar_ mvar (\finalized -> do -Control.Monad.unless finalized (System.IO.hClose handle) +Control.Monad.unless finalized (ignoreSIGPIPE (System.IO.hClose handle)) return True ) (hIn, hOut, ph) <- using (Managed.managed (Exception.bracket open (\(hIn, _, ph) -> close hIn >> Process.terminateProcess ph))) let feedIn :: (forall a. IO a -> IO a) -> IO () feedIn restore = -restore (sh (do +restore (ignoreSIGPIPE (sh (do bytes <- s -liftIO (Data.ByteString.hPut hIn bytes) ) ) +liftIO (Data.ByteString.hPut hIn bytes) ) ) ) `Exception.finally` close hIn a <- using @@ -565,15 +565,15 @@ mvar <- liftIO (MVar.newMVar False) let close handle = do MVar.modifyMVar_ mvar (\finalized -> do -Control.Monad.unless finalized (System.IO.hClose handle) +Control.Monad.unless finalized (ignoreSIGPIPE (System.IO.hClose handle)) return True ) (hIn, hOut, hErr, ph) <- using (Managed.managed (Exception.bracket open (\(hIn, _, _, ph) -> close hIn >> Process.terminateProcess ph))) let feedIn :: (forall a. IO a -> IO a) -> IO () feedIn restore = -restore (sh (do +restore (ignoreSIGPIPE (sh (do bytes <- s -liftIO (Data.ByteString.hPut hIn bytes) ) ) +liftIO (Data.ByteString.hPut hIn bytes) ) ) ) `Exception.
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2017-09-15 22:20:24 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Fri Sep 15 22:20:24 2017 rev:11 rq:525571 version:1.3.6 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2017-07-06 00:01:13.408692118 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2017-09-15 22:20:25.815436423 +0200 @@ -1,0 +2,5 @@ +Thu Aug 3 15:38:38 UTC 2017 - psim...@suse.com + +- Updated with latest spec-cleaner version 0.9.8-8-geadfbbf. + +--- Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.e1KkZt/_old 2017-09-15 22:20:26.891284884 +0200 +++ /var/tmp/diff_new_pack.e1KkZt/_new 2017-09-15 22:20:26.895284321 +0200 @@ -23,8 +23,8 @@ Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause -Group: Development/Languages/Other -Url:https://hackage.haskell.org/package/%{pkg_name} +Group: Development/Libraries/Haskell +URL:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz BuildRequires: ghc-Cabal-devel BuildRequires: ghc-ansi-wl-pprint-devel @@ -49,7 +49,6 @@ BuildRequires: ghc-transformers-devel BuildRequires: ghc-unix-compat-devel BuildRequires: ghc-unix-devel -BuildRoot: %{_tmppath}/%{name}-%{version}-build %if %{with tests} BuildRequires: ghc-doctest-devel %endif @@ -86,7 +85,7 @@ %package devel Summary:Haskell %{pkg_name} library development files -Group: Development/Libraries/Other +Group: Development/Libraries/Haskell Requires: %{name} = %{version}-%{release} Requires: ghc-compiler = %{ghc_version} Requires(post): ghc-compiler = %{ghc_version} @@ -114,11 +113,9 @@ %ghc_pkg_recache %files -f %{name}.files -%defattr(-,root,root,-) %doc LICENSE %files devel -f %{name}-devel.files -%defattr(-,root,root,-) %doc CHANGELOG.md %changelog
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2017-07-06 00:01:13 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Thu Jul 6 00:01:13 2017 rev:10 rq:506998 version:1.3.6 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2017-06-22 10:39:24.449959303 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2017-07-06 00:01:13.408692118 +0200 @@ -1,0 +2,5 @@ +Mon Jun 19 20:51:53 UTC 2017 - psim...@suse.com + +- Update to version 1.3.6. + +--- Old: turtle-1.3.5.tar.gz New: turtle-1.3.6.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.efuQye/_old 2017-07-06 00:01:14.112592956 +0200 +++ /var/tmp/diff_new_pack.efuQye/_new 2017-07-06 00:01:14.112592956 +0200 @@ -19,7 +19,7 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.3.5 +Version:1.3.6 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause ++ turtle-1.3.5.tar.gz -> turtle-1.3.6.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.5/turtle.cabal new/turtle-1.3.6/turtle.cabal --- old/turtle-1.3.5/turtle.cabal 2017-05-31 23:49:57.0 +0200 +++ new/turtle-1.3.6/turtle.cabal 2017-06-11 23:39:33.0 +0200 @@ -1,5 +1,5 @@ Name: turtle -Version: 1.3.5 +Version: 1.3.6 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 @@ -58,16 +58,16 @@ foldl>= 1.1 && < 1.4 , hostname < 1.1 , managed >= 1.0.3 && < 1.1 , -process >= 1.0.1.1 && < 1.5 , +process >= 1.0.1.1 && < 1.7 , semigroups >= 0.5.0 && < 0.19, system-filepath >= 0.3.1 && < 0.5 , system-fileio>= 0.2.1 && < 0.4 , stm< 2.5 , temporary < 1.3 , text < 1.3 , -time < 1.7 , +time < 1.9 , transformers >= 0.2.0.0 && < 0.6 , -optparse-applicative >= 0.13&& < 0.14, +optparse-applicative >= 0.13&& < 0.15, optional-args>= 1.0 && < 2.0 , unix-compat >= 0.4 && < 0.5 if os(windows)
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2017-06-22 10:39:22 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Thu Jun 22 10:39:22 2017 rev:9 rq:504114 version:1.3.5 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2017-06-04 01:55:47.466428035 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2017-06-22 10:39:24.449959303 +0200 @@ -1,0 +2,10 @@ +Thu Jun 8 11:08:23 UTC 2017 - psim...@suse.com + +- Update to version 1.3.5. + +--- +Wed May 31 14:05:43 UTC 2017 - psim...@suse.com + +- Update to version 1.3.4. + +--- Old: turtle-1.3.3.tar.gz New: turtle-1.3.5.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.xohuSJ/_old 2017-06-22 10:39:25.017879234 +0200 +++ /var/tmp/diff_new_pack.xohuSJ/_new 2017-06-22 10:39:25.021878671 +0200 @@ -19,7 +19,7 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.3.3 +Version:1.3.5 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause ++ turtle-1.3.3.tar.gz -> turtle-1.3.5.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.3/CHANGELOG.md new/turtle-1.3.5/CHANGELOG.md --- old/turtle-1.3.3/CHANGELOG.md 2017-04-29 23:11:56.0 +0200 +++ new/turtle-1.3.5/CHANGELOG.md 2017-05-31 23:49:57.0 +0200 @@ -1,3 +1,13 @@ +1.3.5 + +* Increase upper bound on `foldl` + +1.3.4 + +* Bug fix: `cptree` now correctly copies files instead of creating directories + of the same name +* Increase upper bound on `criterion` + 1.3.3 * Bug fix: Change `textToLines` to behave like `Data.Text.splitOn "\n"` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.3/src/Turtle/Prelude.hs new/turtle-1.3.5/src/Turtle/Prelude.hs --- old/turtle-1.3.3/src/Turtle/Prelude.hs 2017-04-29 23:11:56.0 +0200 +++ new/turtle-1.3.5/src/Turtle/Prelude.hs 2017-05-31 23:49:57.0 +0200 @@ -1034,9 +1034,9 @@ -- directory Just suffix <- return (Filesystem.stripPrefix (oldTree "") oldPath) let newPath = newTree suffix -isFile <- testfile newPath +isFile <- testfile oldPath if isFile -then cp oldPath newPath +then mktree (Filesystem.directory newPath) >> cp oldPath newPath else mktree newPath ) -- | Remove a file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.3/test/cptree.hs new/turtle-1.3.5/test/cptree.hs --- old/turtle-1.3.3/test/cptree.hs 1970-01-01 01:00:00.0 +0100 +++ new/turtle-1.3.5/test/cptree.hs 2017-05-31 23:49:57.0 +0200 @@ -0,0 +1,26 @@ +{-# LANGUAGE OverloadedStrings #-} + +import Turtle +import Filesystem.Path.CurrentOS () +import System.IO.Temp (withSystemTempDirectory) +import Control.Monad (unless) + +check :: String -> Bool-> IO () +check errorMessage successs = unless successs $ fail errorMessage + +main :: IO () +main = withSystemTempDirectory "tempDir" (runTest . fromString) + +runTest :: Turtle.FilePath -> IO () +runTest tempDir = do + let srcDirectory = tempDir "src" + + mktree $ srcDirectory "directory" + touch $ srcDirectory "directory" "file" + + let destDirectory = tempDir "dest" + + cptree srcDirectory destDirectory + + testdir (destDirectory "directory") >>= check "cptree did not preserve directory" + testfile (destDirectory "directory" "file") >>= check "cptree did not preserve directory" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.3/turtle.cabal new/turtle-1.3.5/turtle.cabal --- old/turtle-1.3.3/turtle.cabal 2017-04-29 23:11:56.0 +0200 +++ new/turtle-1.3.5/turtle.cabal 2017-05-31 23:49:57.0 +0200 @@ -1,5 +1,5 @@ Name: turtle -Version: 1.3.3 +Version: 1.3.5 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 @@ -55,7 +55,7 @@ bytestring >= 0.9.1.8 && < 0.11, clock>= 0.4.1.2 && < 0.8 , directory>= 1.0.7 && < 1.4 , -foldl>= 1.1 && < 1.3 , +foldl>= 1.1 && < 1.4 , hostname < 1.1 , managed >= 1.0.3 && < 1.1 , process >= 1.0.1.1 && < 1.5 , @@ -119,6 +119,18
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2017-06-04 01:55:46 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Sun Jun 4 01:55:46 2017 rev:8 rq:494197 version:1.3.3 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2017-04-11 09:43:52.356019761 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2017-06-04 01:55:47.466428035 +0200 @@ -1,0 +2,5 @@ +Wed May 3 08:24:05 UTC 2017 - psim...@suse.com + +- Update to version 1.3.3 with cabal2obs. + +--- Old: turtle-1.3.2.tar.gz New: turtle-1.3.3.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.yJjBZp/_old 2017-06-04 01:55:48.406295251 +0200 +++ /var/tmp/diff_new_pack.yJjBZp/_new 2017-06-04 01:55:48.410294686 +0200 @@ -19,7 +19,7 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.3.2 +Version:1.3.3 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause @@ -39,6 +39,7 @@ BuildRequires: ghc-optparse-applicative-devel BuildRequires: ghc-process-devel BuildRequires: ghc-rpm-macros +BuildRequires: ghc-semigroups-devel BuildRequires: ghc-stm-devel BuildRequires: ghc-system-fileio-devel BuildRequires: ghc-system-filepath-devel ++ turtle-1.3.2.tar.gz -> turtle-1.3.3.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.2/CHANGELOG.md new/turtle-1.3.3/CHANGELOG.md --- old/turtle-1.3.2/CHANGELOG.md 2017-03-12 22:21:52.0 +0100 +++ new/turtle-1.3.3/CHANGELOG.md 2017-04-29 23:11:56.0 +0200 @@ -1,3 +1,14 @@ +1.3.3 + +* Bug fix: Change `textToLines` to behave like `Data.Text.splitOn "\n"` + instead of `Data.Text.unlines` +* This fixes weird behavior around handling empty strings. `splitOn` does + the right thing, but `unlines` does not. For example, this indirectly + fixes a regression in `sed`, which would discard empty lines +* Bug fix: `which`/`whichAll` now behave correctly on Windows +* Add new `cptree`/`single` utilities +* Documentation fixes + 1.3.2 * Fix bugs in subprocess management diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.2/src/Turtle/Bytes.hs new/turtle-1.3.3/src/Turtle/Bytes.hs --- old/turtle-1.3.2/src/Turtle/Bytes.hs2017-03-12 22:21:52.0 +0100 +++ new/turtle-1.3.3/src/Turtle/Bytes.hs2017-04-29 23:11:56.0 +0200 @@ -20,7 +20,6 @@ -- * Subprocess management , proc , shell -, system , procs , shells , inproc @@ -31,6 +30,12 @@ , shellStrict , procStrictWithErr , shellStrictWithErr + +, system +, stream +, streamWithErr +, systemStrict +, systemStrictWithErr ) where import Control.Applicative @@ -357,6 +362,10 @@ Exception.bracket open close' handle ) +{-| `systemStrict` generalizes `shellStrict` and `procStrict` by allowing you to +supply your own custom `CreateProcess`. This is for advanced users who feel +comfortable using the lower-level @process@ API +-} systemStrict :: MonadIO io => Process.CreateProcess @@ -397,6 +406,11 @@ restore (Process.waitForProcess ph) <* halt a ) )) (Data.ByteString.hGetContents hOut) ) ) +{-| `systemStrictWithErr` generalizes `shellStrictWithErr` and +`procStrictWithErr` by allowing you to supply your own custom +`CreateProcess`. This is for advanced users who feel comfortable using +the lower-level @process@ API +-} systemStrictWithErr :: MonadIO io => Process.CreateProcess @@ -471,6 +485,10 @@ -- ^ Chunks of bytes read from process output inshell cmd = stream (Process.shell (Data.Text.unpack cmd)) +{-| `stream` generalizes `inproc` and `inshell` by allowing you to supply your +own custom `CreateProcess`. This is for advanced users who feel comfortable +using the lower-level @process@ API +-} stream :: Process.CreateProcess -- ^ Command @@ -511,6 +529,10 @@ Async.withAsync (feedIn restore) k ) )) inhandle hOut <|> (liftIO (Process.waitForProcess ph *> halt a) *> empty) +{-| `streamWithErr` generalizes `inprocWithErr` and `inshellWithErr` by allowing +you to supply your own custom `CreateProcess`. This is for advanced users +who feel comfortable using the lower-level @process@ API +-} streamWithErr :: Process.CreateP
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2017-04-11 09:43:51 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Tue Apr 11 09:43:51 2017 rev:7 rq:485167 version:1.3.2 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2017-03-16 09:36:03.969216074 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2017-04-11 09:43:52.356019761 +0200 @@ -1,0 +2,5 @@ +Mon Mar 27 12:39:21 UTC 2017 - psim...@suse.com + +- Update to version 1.3.2 with cabal2obs. + +--- Old: turtle-1.3.1.tar.gz New: turtle-1.3.2.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.Aq1xML/_old 2017-04-11 09:43:53.947794902 +0200 +++ /var/tmp/diff_new_pack.Aq1xML/_new 2017-04-11 09:43:53.947794902 +0200 @@ -19,7 +19,7 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.3.1 +Version:1.3.2 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause ++ turtle-1.3.1.tar.gz -> turtle-1.3.2.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.1/CHANGELOG.md new/turtle-1.3.2/CHANGELOG.md --- old/turtle-1.3.1/CHANGELOG.md 2017-01-13 22:26:05.0 +0100 +++ new/turtle-1.3.2/CHANGELOG.md 2017-03-12 22:21:52.0 +0100 @@ -1,3 +1,9 @@ +1.3.2 + +* Fix bugs in subprocess management +* Generalize type of `repr` to return any type that implements `IsString` +* Add `optLine`, `argLine`, and `l` utilities to simplify working with `Line`s + 1.3.1 * `find` no longer follows symlinks diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.1/LICENSE new/turtle-1.3.2/LICENSE --- old/turtle-1.3.1/LICENSE2016-08-21 20:27:22.0 +0200 +++ new/turtle-1.3.2/LICENSE2017-03-12 22:21:52.0 +0100 @@ -1,4 +1,4 @@ -Copyright (c) 2015 Gabriel Gonzalez +Copyright (c) 2017 Gabriel Gonzalez All rights reserved. Redistribution and use in source and binary forms, with or without modification, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.3.1/src/Turtle/Bytes.hs new/turtle-1.3.2/src/Turtle/Bytes.hs --- old/turtle-1.3.1/src/Turtle/Bytes.hs2016-11-30 18:27:29.0 +0100 +++ new/turtle-1.3.2/src/Turtle/Bytes.hs2017-03-12 22:21:52.0 +0100 @@ -349,7 +349,9 @@ feedIn restore = restore (ignoreSIGPIPE (outhandle hIn s)) `Exception.finally` close hIn -Exception.mask_ (Async.withAsyncWithUnmask feedIn (\a -> Process.waitForProcess ph <* halt a) ) +Exception.mask (\restore -> +Async.withAsync (feedIn restore) (\a -> +restore (Process.waitForProcess ph) <* halt a ) ) handle (Nothing , ph) = do Process.waitForProcess ph @@ -390,7 +392,9 @@ `Exception.finally` close hIn Async.concurrently -(Exception.mask_ (Async.withAsyncWithUnmask feedIn (\a -> liftIO (Process.waitForProcess ph) <* halt a))) +(Exception.mask (\restore -> +Async.withAsync (feedIn restore) (\a -> +restore (Process.waitForProcess ph) <* halt a ) )) (Data.ByteString.hGetContents hOut) ) ) systemStrictWithErr @@ -428,7 +432,9 @@ `Exception.finally` close hIn runConcurrently $ (,,) -<$> Concurrently (Exception.mask_ (Async.withAsyncWithUnmask feedIn (\a -> liftIO (Process.waitForProcess ph) <* halt a))) +<$> Concurrently (Exception.mask (\restore -> +Async.withAsync (feedIn restore) (\a -> +restore (Process.waitForProcess ph) <* halt a ) )) <*> Concurrently (Data.ByteString.hGetContents hOut) <*> Concurrently (Data.ByteString.hGetContents hErr) ) ) @@ -499,7 +505,10 @@ liftIO (Data.ByteString.hPut hIn bytes) ) ) `Exception.finally` close hIn -a <- using (Managed.managed (Exception.mask_ . Async.withAsyncWithUnmask feedIn)) +a <- using +(Managed.managed (\k -> +Exception.mask (\restore -> +Async.withAsync (feedIn restore) k ) )) inhandle hOut <|> (liftIO (Process.waitForProcess ph *> halt a) *> empty) streamWithErr @@ -563,9 +572,18 @@ x1 <- loop x0 (0 :: Int)
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2017-03-16 09:36:03 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Thu Mar 16 09:36:03 2017 rev:6 rq:461688 version:1.3.1 Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2016-07-20 09:23:28.0 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2017-03-16 09:36:03.969216074 +0100 @@ -1,0 +2,5 @@ +Sun Feb 12 14:17:27 UTC 2017 - psim...@suse.com + +- Update to version 1.3.1 with cabal2obs. + +--- Old: turtle-1.2.8.tar.gz New: turtle-1.3.1.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.2SKhVO/_old 2017-03-16 09:36:04.581129430 +0100 +++ /var/tmp/diff_new_pack.2SKhVO/_new 2017-03-16 09:36:04.585128864 +0100 @@ -1,7 +1,7 @@ # # spec file for package ghc-turtle # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,16 +19,17 @@ %global pkg_name turtle %bcond_with tests Name: ghc-%{pkg_name} -Version:1.2.8 +Version:1.3.1 Release:0 Summary:Shell programming, Haskell-style License:BSD-3-Clause -Group: System/Libraries +Group: Development/Languages/Other Url:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz BuildRequires: ghc-Cabal-devel -# Begin cabal-rpm deps: +BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-async-devel +BuildRequires: ghc-bytestring-devel BuildRequires: ghc-clock-devel BuildRequires: ghc-directory-devel BuildRequires: ghc-foldl-devel @@ -45,12 +46,12 @@ BuildRequires: ghc-text-devel BuildRequires: ghc-time-devel BuildRequires: ghc-transformers-devel +BuildRequires: ghc-unix-compat-devel BuildRequires: ghc-unix-devel BuildRoot: %{_tmppath}/%{name}-%{version}-build %if %{with tests} BuildRequires: ghc-doctest-devel %endif -# End cabal-rpm deps %description 'turtle' is a reimplementation of the Unix command line environment in Haskell @@ -96,20 +97,14 @@ %prep %setup -q -n %{pkg_name}-%{version} - %build %ghc_lib_build - %install %ghc_lib_install - %check -%if %{with tests} -%{cabal} test -%endif - +%cabal_test %post devel %ghc_pkg_recache @@ -123,5 +118,6 @@ %files devel -f %{name}-devel.files %defattr(-,root,root,-) +%doc CHANGELOG.md %changelog ++ turtle-1.2.8.tar.gz -> turtle-1.3.1.tar.gz ++ 2293 lines of diff (skipped)
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2016-07-20 09:23:22 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2016-05-31 12:25:09.0 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2016-07-20 09:23:28.0 +0200 @@ -1,0 +2,5 @@ +Sun Jul 10 16:57:00 UTC 2016 - psim...@suse.com + +- Update to version 1.2.8 revision 0 with cabal2obs. + +--- Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.2bpcFj/_old 2016-07-20 09:23:29.0 +0200 +++ /var/tmp/diff_new_pack.2bpcFj/_new 2016-07-20 09:23:29.0 +0200 @@ -15,23 +15,18 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -%global pkg_name turtle +%global pkg_name turtle %bcond_with tests - -Name: ghc-turtle +Name: ghc-%{pkg_name} Version:1.2.8 Release:0 Summary:Shell programming, Haskell-style -Group: System/Libraries - License:BSD-3-Clause +Group: System/Libraries Url:https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-build - BuildRequires: ghc-Cabal-devel -BuildRequires: ghc-rpm-macros # Begin cabal-rpm deps: BuildRequires: ghc-async-devel BuildRequires: ghc-clock-devel @@ -42,6 +37,7 @@ BuildRequires: ghc-optional-args-devel BuildRequires: ghc-optparse-applicative-devel BuildRequires: ghc-process-devel +BuildRequires: ghc-rpm-macros BuildRequires: ghc-stm-devel BuildRequires: ghc-system-fileio-devel BuildRequires: ghc-system-filepath-devel @@ -50,6 +46,7 @@ BuildRequires: ghc-time-devel BuildRequires: ghc-transformers-devel BuildRequires: ghc-unix-devel +BuildRoot: %{_tmppath}/%{name}-%{version}-build %if %{with tests} BuildRequires: ghc-doctest-devel %endif @@ -85,19 +82,17 @@ you should also check out the 'Shelly' library which provides similar functionality. - %package devel Summary:Haskell %{pkg_name} library development files Group: Development/Libraries/Other +Requires: %{name} = %{version}-%{release} Requires: ghc-compiler = %{ghc_version} Requires(post): ghc-compiler = %{ghc_version} Requires(postun): ghc-compiler = %{ghc_version} -Requires: %{name} = %{version}-%{release} %description devel This package provides the Haskell %{pkg_name} library development files. - %prep %setup -q -n %{pkg_name}-%{version} @@ -112,25 +107,21 @@ %check %if %{with tests} -%cabal test +%{cabal} test %endif %post devel %ghc_pkg_recache - %postun devel %ghc_pkg_recache - %files -f %{name}.files %defattr(-,root,root,-) %doc LICENSE - %files devel -f %{name}-devel.files %defattr(-,root,root,-) - %changelog
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2016-05-31 12:25:08 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2016-04-30 23:30:43.0 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2016-05-31 12:25:09.0 +0200 @@ -1,0 +2,5 @@ +Mon May 30 09:59:57 UTC 2016 - mimi...@gmail.com + +- update to 1.2.8 + +--- Old: turtle-1.2.7.tar.gz New: turtle-1.2.8.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.Gcx2Vm/_old 2016-05-31 12:25:10.0 +0200 +++ /var/tmp/diff_new_pack.Gcx2Vm/_new 2016-05-31 12:25:10.0 +0200 @@ -20,7 +20,7 @@ %bcond_with tests Name: ghc-turtle -Version:1.2.7 +Version:1.2.8 Release:0 Summary:Shell programming, Haskell-style Group: System/Libraries ++ turtle-1.2.7.tar.gz -> turtle-1.2.8.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.2.7/src/Turtle/Options.hs new/turtle-1.2.8/src/Turtle/Options.hs --- old/turtle-1.2.7/src/Turtle/Options.hs 2016-03-28 01:16:25.0 +0200 +++ new/turtle-1.2.8/src/Turtle/Options.hs 2016-05-28 19:42:58.0 +0200 @@ -37,11 +37,11 @@ module Turtle.Options ( -- * Types Parser -, ArgName -, CommandName +, ArgName(..) +, CommandName(..) , ShortName -, Description -, HelpMessage +, Description(..) +, HelpMessage(..) -- * Flag-based option parsers , switch diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.2.7/src/Turtle/Prelude.hs new/turtle-1.2.8/src/Turtle/Prelude.hs --- old/turtle-1.2.7/src/Turtle/Prelude.hs 2016-03-28 00:38:05.0 +0200 +++ new/turtle-1.2.8/src/Turtle/Prelude.hs 2016-05-28 19:46:34.0 +0200 @@ -1481,7 +1481,7 @@ The `Num` instance for `Size` interprets numeric literals as bytes -} -newtype Size = Size { _bytes :: Integer } deriving (Num) +newtype Size = Size { _bytes :: Integer } deriving (Eq, Ord, Num) instance Show Size where show = show . _bytes diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.2.7/turtle.cabal new/turtle-1.2.8/turtle.cabal --- old/turtle-1.2.7/turtle.cabal 2016-04-25 02:54:40.0 +0200 +++ new/turtle-1.2.8/turtle.cabal 2016-05-29 03:00:44.0 +0200 @@ -1,5 +1,5 @@ Name: turtle -Version: 1.2.7 +Version: 1.2.8 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 @@ -7,6 +7,7 @@ Copyright: 2015 Gabriel Gonzalez Author: Gabriel Gonzalez Maintainer: gabriel...@gmail.com +Tested-With: GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.2, GHC == 8.0.1 Bug-Reports: https://github.com/Gabriel439/Haskell-Turtle-Library/issues Synopsis: Shell programming, Haskell-style Description: @turtle@ is a reimplementation of the Unix command line environment @@ -46,7 +47,7 @@ Library HS-Source-Dirs: src Build-Depends: -base >= 4.5 && < 5 , +base >= 4.6 && < 5 , async>= 2.0.0.0 && < 2.2, clock>= 0.4.1.2 && < 0.8, directory>= 1.0.7 && < 1.3, @@ -59,8 +60,8 @@ stm< 2.5, temporary < 1.3, text < 1.3, -time < 1.6, -transformers >= 0.2.0.0 && < 0.5, +time < 1.7, +transformers >= 0.2.0.0 && < 0.6, optparse-applicative >= 0.11&& < 0.13, optional-args>= 1.0 && < 2.0 if os(windows) @@ -75,18 +76,18 @@ Turtle.Options, Turtle.Prelude, Turtle.Tutorial -GHC-Options: -O2 -Wall +GHC-Options: -Wall Default-Language: Haskell2010 test-suite tests Type: exitcode-stdio-1.0 HS-Source-Dirs: test Main-Is: Main.hs -GHC-Options: -O2 -Wall +GHC-Options: -Wall Default-Language: Haskell2010 Build-Depends: -base >= 4 && < 5 , -doctest >= 0.9.12 && < 0.12 +base>= 4 && < 5 , +doctest >= 0.7 && < 0.12 benchmark bench Type: exitcode-stdio-1.0 @@ -95,7 +96,7 @@ GHC-Options: -O2 -Wall -threaded Default-Language: Haske
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2016-04-30 23:30:42 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2016-04-12 19:38:17.0 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2016-04-30 23:30:43.0 +0200 @@ -1,0 +2,5 @@ +Tue Apr 26 09:12:20 UTC 2016 - mimi...@gmail.com + +- update to 1.2.7 + +--- Old: turtle-1.2.6.tar.gz New: turtle-1.2.7.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.2447ke/_old 2016-04-30 23:30:44.0 +0200 +++ /var/tmp/diff_new_pack.2447ke/_new 2016-04-30 23:30:44.0 +0200 @@ -19,8 +19,8 @@ %bcond_with tests -Name: ghc-%{pkg_name} -Version:1.2.6 +Name: ghc-turtle +Version:1.2.7 Release:0 Summary:Shell programming, Haskell-style Group: System/Libraries ++ turtle-1.2.6.tar.gz -> turtle-1.2.7.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.2.6/turtle.cabal new/turtle-1.2.7/turtle.cabal --- old/turtle-1.2.6/turtle.cabal 2016-04-03 20:32:35.0 +0200 +++ new/turtle-1.2.7/turtle.cabal 2016-04-25 02:54:40.0 +0200 @@ -1,5 +1,5 @@ Name: turtle -Version: 1.2.6 +Version: 1.2.7 Cabal-Version: >=1.10 Build-Type: Simple License: BSD3 @@ -48,7 +48,7 @@ Build-Depends: base >= 4.5 && < 5 , async>= 2.0.0.0 && < 2.2, -clock>= 0.4.1.2 && < 0.7, +clock>= 0.4.1.2 && < 0.8, directory>= 1.0.7 && < 1.3, foldl>= 1.1 && < 1.3, hostname < 1.1,
commit ghc-turtle for openSUSE:Factory
Hello community, here is the log from the commit of package ghc-turtle for openSUSE:Factory checked in at 2016-04-12 19:38:16 Comparing /work/SRC/openSUSE:Factory/ghc-turtle (Old) and /work/SRC/openSUSE:Factory/.ghc-turtle.new (New) Package is "ghc-turtle" Changes: --- /work/SRC/openSUSE:Factory/ghc-turtle/ghc-turtle.changes2016-02-09 13:31:55.0 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-turtle.new/ghc-turtle.changes 2016-04-12 19:38:17.0 +0200 @@ -1,0 +2,5 @@ +Mon Apr 4 07:58:04 UTC 2016 - mimi...@gmail.com + +- update to 1.2.6 + +--- Old: turtle-1.2.5.tar.gz New: turtle-1.2.6.tar.gz Other differences: -- ++ ghc-turtle.spec ++ --- /var/tmp/diff_new_pack.o63otB/_old 2016-04-12 19:38:17.0 +0200 +++ /var/tmp/diff_new_pack.o63otB/_new 2016-04-12 19:38:17.0 +0200 @@ -20,7 +20,7 @@ %bcond_with tests Name: ghc-%{pkg_name} -Version:1.2.5 +Version:1.2.6 Release:0 Summary:Shell programming, Haskell-style Group: System/Libraries ++ turtle-1.2.5.tar.gz -> turtle-1.2.6.tar.gz ++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.2.5/src/Turtle/Format.hs new/turtle-1.2.6/src/Turtle/Format.hs --- old/turtle-1.2.5/src/Turtle/Format.hs 2016-01-07 05:54:31.0 +0100 +++ new/turtle-1.2.6/src/Turtle/Format.hs 2016-03-06 03:13:11.0 +0100 @@ -66,6 +66,7 @@ ) where import Control.Category (Category(..)) +import Control.Monad.IO.Class (MonadIO(..)) import Data.Monoid ((<>)) import Data.String (IsString(..)) import Data.Text (Text, pack) @@ -106,8 +107,8 @@ >>> printf ("Hello, "%s%"!\n") "world" Hello, world! -} -printf :: Format (IO ()) r -> r -printf fmt = fmt >>- Text.putStr +printf :: MonadIO io => Format (io ()) r -> r +printf fmt = fmt >>- (liftIO . Text.putStr) -- | Create your own format specifier makeFormat :: (a -> Text) -> Format r (a -> r) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/turtle-1.2.5/src/Turtle/Prelude.hs new/turtle-1.2.6/src/Turtle/Prelude.hs --- old/turtle-1.2.5/src/Turtle/Prelude.hs 2016-01-07 05:54:31.0 +0100 +++ new/turtle-1.2.6/src/Turtle/Prelude.hs 2016-03-28 00:38:05.0 +0200 @@ -105,15 +105,11 @@ module Turtle.Prelude ( -- * IO - proc -, shell -, procs -, shells -, procStrict -, shellStrict -, echo + echo , err , readline +, Filesystem.readTextFile +, Filesystem.writeTextFile , arguments #if MIN_VERSION_base(4,7,0) , export @@ -196,11 +192,21 @@ -- * Text , cut +-- * Subprocess management +, proc +, shell +, system +, procs +, shells +, procStrict +, shellStrict + -- * Permissions , Permissions , chmod , getmod , setmod +, copymod , readable, nonreadable , writable, nonwritable , executable, nonexecutable @@ -238,7 +244,7 @@ import qualified Control.Foldl.Text import Control.Monad (liftM, msum, when, unless) import Control.Monad.IO.Class (MonadIO(..)) -import Control.Monad.Managed (Managed, managed, runManaged) +import Control.Monad.Managed (MonadManaged(..), managed, runManaged) #ifdef mingw32_HOST_OS import Data.Bits ((.&.)) #endif @@ -276,7 +282,14 @@ #ifdef mingw32_HOST_OS import qualified System.Win32 as Win32 #else -import System.Posix (openDirStream, readDirStream, closeDirStream, touchFile) +import System.Posix ( +openDirStream, +readDirStream, +closeDirStream, +touchFile, +getSymbolicLinkStatus, +isDirectory, +isSymbolicLink ) #endif import Prelude hiding (FilePath) @@ -298,7 +311,13 @@ -- ^ Lines of standard input -> io ExitCode -- ^ Exit code -proc cmd args = system (Process.proc (unpack cmd) (map unpack args)) +proc cmd args = +system +( (Process.proc (unpack cmd) (map unpack args)) +{ Process.std_in = Process.CreatePipe +, Process.std_out = Process.Inherit +, Process.std_err = Process.Inherit +} ) {-| Run a command line using the shell, retrieving the exit code @@ -315,7 +334,13 @@ -- ^ Lines of standard input -> io ExitCode -- ^ Exit code -shell cmdLine = system (Process.shell (unpack cmdLine)) +shell cmdLine = +system +( (Process.shell (unpack cmdLine)) +{ Process.std_in = Process.CreatePipe +, Process.std_out = Process.Inherit +, Process.std_err = Process.Inherit +} ) data ProcFailed = ProcFailed { pr