Hello community, here is the log from the commit of package ghc-uri-bytestring for openSUSE:Factory checked in at 2018-05-30 12:15:49 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-uri-bytestring (Old) and /work/SRC/openSUSE:Factory/.ghc-uri-bytestring.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-uri-bytestring" Wed May 30 12:15:49 2018 rev:6 rq:607919 version:0.3.1.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-uri-bytestring/ghc-uri-bytestring.changes 2017-09-15 22:22:12.256443551 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-uri-bytestring.new/ghc-uri-bytestring.changes 2018-05-30 12:27:48.117240342 +0200 @@ -1,0 +2,9 @@ +Mon May 14 17:02:11 UTC 2018 - psim...@suse.com + +- Update uri-bytestring to version 0.3.1.1. + * Avoid using OverloadedStrings for Builder. + * Fix normalization bug where certain combination of options would fail to add a trailing slash. + * Add MonadFail instance. + * Correct haddock spelling mistake. + +------------------------------------------------------------------- Old: ---- uri-bytestring-0.2.3.3.tar.gz New: ---- uri-bytestring-0.3.1.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-uri-bytestring.spec ++++++ --- /var/tmp/diff_new_pack.IddXQ2/_old 2018-05-30 12:27:49.149204087 +0200 +++ /var/tmp/diff_new_pack.IddXQ2/_new 2018-05-30 12:27:49.149204087 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-uri-bytestring # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 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 uri-bytestring %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.2.3.3 +Version: 0.3.1.1 Release: 0 Summary: Haskell URI parsing as ByteStrings License: BSD-3-Clause @@ -31,6 +31,7 @@ BuildRequires: ghc-blaze-builder-devel BuildRequires: ghc-bytestring-devel BuildRequires: ghc-containers-devel +BuildRequires: ghc-fail-devel BuildRequires: ghc-rpm-macros BuildRequires: ghc-template-haskell-devel BuildRequires: ghc-th-lift-instances-devel @@ -81,10 +82,10 @@ %ghc_pkg_recache %files -f %{name}.files -%doc LICENSE -%doc licenses/http-types/LICENSE +%license LICENSE +%license licenses/http-types/LICENSE %files devel -f %{name}-devel.files -%doc README.md changelog.md licenses +%doc README.md changelog.md %changelog ++++++ uri-bytestring-0.2.3.3.tar.gz -> uri-bytestring-0.3.1.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/uri-bytestring-0.2.3.3/README.md new/uri-bytestring-0.3.1.1/README.md --- old/uri-bytestring-0.2.3.3/README.md 2017-06-06 17:27:21.000000000 +0200 +++ new/uri-bytestring-0.3.1.1/README.md 2017-09-30 00:25:09.000000000 +0200 @@ -16,3 +16,4 @@ * [Michael Hatfield](https://github.com/mikehat) * [reactormonk](https://github.com/reactormonk) * [Oleg Grenrus](https://github.com/phadej) +* [Edward Betts](https://github.com/EdwardBetts) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/uri-bytestring-0.2.3.3/changelog.md new/uri-bytestring-0.3.1.1/changelog.md --- old/uri-bytestring-0.2.3.3/changelog.md 2017-06-06 17:27:21.000000000 +0200 +++ new/uri-bytestring-0.3.1.1/changelog.md 2017-12-21 01:45:25.000000000 +0100 @@ -1,3 +1,13 @@ +0.3.0.2 +* Avoid using OverloadedStrings for Builder. + +0.3.0.1 +* Fix normalization bug where certain combination of options would fail to add a trailing slash. + +0.3.0.0 +* Add MonadFail instance. +* Correct haddock spelling mistake. + 0.2.3.3 * Make buildable on GHC 8.2.1. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/uri-bytestring-0.2.3.3/src/URI/ByteString/Internal.hs new/uri-bytestring-0.3.1.1/src/URI/ByteString/Internal.hs --- old/uri-bytestring-0.2.3.3/src/URI/ByteString/Internal.hs 2017-06-06 17:27:21.000000000 +0200 +++ new/uri-bytestring-0.3.1.1/src/URI/ByteString/Internal.hs 2018-02-10 00:09:08.000000000 +0100 @@ -1,3 +1,4 @@ +{-# LANGUAGE CPP #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE OverloadedStrings #-} @@ -11,9 +12,10 @@ import qualified Blaze.ByteString.Builder.Char.Utf8 as BB import Control.Applicative import Control.Monad +import qualified Control.Monad.Fail as F import Data.Attoparsec.ByteString import qualified Data.Attoparsec.ByteString as A -import qualified Data.Attoparsec.ByteString.Char8 as A ( decimal ) +import qualified Data.Attoparsec.ByteString.Char8 as A (decimal) import Data.Bits import Data.ByteString (ByteString) import qualified Data.ByteString as BS @@ -25,6 +27,7 @@ import qualified Data.Map.Strict as M import Data.Maybe import Data.Monoid +import Data.Semigroup (Semigroup) import Data.Ord (comparing) import Data.Word import Text.Read (readMaybe) @@ -142,7 +145,7 @@ -- possible, 'serializeURIRef' will be fine. If you intend on -- comparing URIs (say for caching purposes), you'll want to use this. normalizeURIRef :: URINormalizationOptions -> URIRef a -> Builder -normalizeURIRef o uri@(URI {..}) = normalizeURI o uri +normalizeURIRef o uri@(URI {..}) = normalizeURI o uri normalizeURIRef o uri@(RelativeRef {}) = normalizeRelativeRef o Nothing uri @@ -169,7 +172,8 @@ authority <> path <> query <> fragment where path - | unoSlashEmptyPath && BS.null rrPath = "/" + | unoSlashEmptyPath && BS.null rrPath = BB.fromByteString "/" + | segs == [""] = BB.fromByteString "/" | otherwise = mconcat (intersperse (c8 '/') (map urlEncodePath segs)) segs = dropSegs (BS.split slash (pathRewrite rrPath)) pathRewrite @@ -366,7 +370,7 @@ query <- queryParser opts frag <- mFragmentParser case frag of - Just _ -> endOfInput `orFailWith` MalformedFragment + Just _ -> endOfInput `orFailWith` MalformedFragment Nothing -> endOfInput `orFailWith` MalformedQuery return $ RelativeRef authority path query frag @@ -791,9 +795,18 @@ , Alternative , Monad , MonadPlus + , Semigroup , Monoid) +instance F.MonadFail (Parser' e) where +#if MIN_VERSION_attoparsec(0,13,1) + fail e = Parser' (F.fail e) +#else + fail e = Parser' (fail e) +#endif + + ------------------------------------------------------------------------------- -- | Use with caution. Catch a parser failing and return Nothing. mParse :: Parser' e a -> Parser' e (Maybe a) @@ -804,7 +817,7 @@ -- | If the first parser succeeds, discard the result and use the -- second parser (which may fail). If the first parser fails, return -- Nothing. This is used to check a benign precondition that indicates --- the presence of a parsible token, i.e. ? preceeding a query. +-- the presence of a parsible token, i.e. ? preceding a query. thenJust :: Parser' e a -> Parser' e b -> Parser' e (Maybe b) thenJust p1 p2 = p1 *> (Just <$> p2) <|> pure Nothing diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/uri-bytestring-0.2.3.3/src/URI/ByteString/Types.hs new/uri-bytestring-0.3.1.1/src/URI/ByteString/Types.hs --- old/uri-bytestring-0.2.3.3/src/URI/ByteString/Types.hs 2017-06-06 17:27:21.000000000 +0200 +++ new/uri-bytestring-0.3.1.1/src/URI/ByteString/Types.hs 2018-02-10 00:25:18.000000000 +0100 @@ -15,6 +15,7 @@ import Data.ByteString (ByteString) import qualified Data.Map.Strict as M import Data.Monoid +import Data.Semigroup (Semigroup) import Data.Typeable import Data.Word import GHC.Generics @@ -89,7 +90,7 @@ ------------------------------------------------------------------------------- newtype Query = Query { queryPairs :: [(ByteString, ByteString)] } - deriving (Show, Eq, Monoid, Generic, Typeable, Ord) + deriving (Show, Eq, Semigroup, Monoid, Generic, Typeable, Ord) #ifdef LIFT_COMPAT deriveLift ''Query diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/uri-bytestring-0.2.3.3/test/URI/ByteString/Arbitrary.hs new/uri-bytestring-0.3.1.1/test/URI/ByteString/Arbitrary.hs --- old/uri-bytestring-0.2.3.3/test/URI/ByteString/Arbitrary.hs 2017-06-06 17:27:21.000000000 +0200 +++ new/uri-bytestring-0.3.1.1/test/URI/ByteString/Arbitrary.hs 2017-09-30 00:25:09.000000000 +0200 @@ -1,3 +1,5 @@ +{-# LANGUAGE ConstraintKinds #-} +{-# LANGUAGE DataKinds #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MultiParamTypeClasses #-} @@ -9,6 +11,7 @@ import Control.Applicative import Data.Proxy (Proxy (..)) import qualified Generics.SOP as SOP +import qualified Generics.SOP.Constraint as SOP import qualified Generics.SOP.GGP as SOP import GHC.Generics (Generic) import Test.QuickCheck @@ -22,11 +25,20 @@ -- this workaround can go away when -- <https://github.com/nick8325/quickcheck/pull/40> is merged. -sopArbitrary :: (Generic a, SOP.GTo a, SOP.All SOP.SListI (SOP.GCode a), SOP.All2 Arbitrary (SOP.GCode a)) => Gen a +sopArbitrary + :: ( SOP.SListI (SOP.GCode b) + , Generic b + , SOP.GTo b + , SOP.AllF SOP.SListI (SOP.GCode b) + , SOP.AllF (SOP.All Arbitrary) (SOP.GCode b) + ) + => Gen b sopArbitrary = fmap SOP.gto sopArbitrary' -sopArbitrary' :: (SOP.All SOP.SListI xss, SOP.All2 Arbitrary xss) => Gen (SOP.SOP SOP.I xss) +sopArbitrary' + :: (SOP.SListI xs, SOP.AllF (SOP.All Arbitrary) xs, SOP.AllF SOP.SListI xs) + => Gen (SOP.SOP SOP.I xs) sopArbitrary' = oneof (map SOP.hsequence $ SOP.apInjs_POP $ SOP.hcpure p arbitrary) where p :: Proxy Arbitrary diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/uri-bytestring-0.2.3.3/test/URI/ByteStringTests.hs new/uri-bytestring-0.3.1.1/test/URI/ByteStringTests.hs --- old/uri-bytestring-0.2.3.3/test/URI/ByteStringTests.hs 2017-06-06 17:27:21.000000000 +0200 +++ new/uri-bytestring-0.3.1.1/test/URI/ByteStringTests.hs 2017-10-07 00:52:39.000000000 +0200 @@ -430,6 +430,9 @@ , testCase "percent encoding is upcased automatically" $ do normalizeURIBS o "http://example.org/a?foo%3abar=baz" @?= "http://example.org/a?foo%3Abar=baz" + , testCase "aggressive normalization retains slashes (issue 41)" $ do + normalizeURIBS aggressiveNormalization "http://example.org/" @?= + "http://example.org/" ] where o = noNormalization diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/uri-bytestring-0.2.3.3/uri-bytestring.cabal new/uri-bytestring-0.3.1.1/uri-bytestring.cabal --- old/uri-bytestring-0.2.3.3/uri-bytestring.cabal 2017-06-06 17:27:21.000000000 +0200 +++ new/uri-bytestring-0.3.1.1/uri-bytestring.cabal 2018-02-26 21:15:57.000000000 +0100 @@ -1,5 +1,5 @@ name: uri-bytestring -version: 0.2.3.3 +version: 0.3.1.1 synopsis: Haskell URI parsing as ByteStrings description: uri-bytestring aims to be an RFC3986 compliant URI parser that uses efficient ByteStrings for parsing and representing the URI data. license: BSD3 @@ -13,11 +13,11 @@ cabal-version: >=1.16 homepage: https://github.com/Soostone/uri-bytestring bug-reports: https://github.com/Soostone/uri-bytestring/issues -Tested-With: GHC == 7.6.3 - , GHC == 7.8.4 +Tested-With: GHC == 7.8.4 , GHC == 7.10.1 , GHC == 8.0.2 , GHC == 8.2.1 + , GHC == 8.4.1 extra-source-files: README.md CONTRIBUTING.md @@ -39,11 +39,12 @@ build-depends: - attoparsec >= 0.12 && < 0.14 + attoparsec >= 0.13.1.0 && < 0.14 , base >= 4.6 && < 5 + , fail >= 4.9 && < 5 , bytestring >= 0.9.1 && < 0.11 , blaze-builder >= 0.3.0.0 && < 0.5 - , template-haskell >= 2.9 && < 2.13 + , template-haskell >= 2.9 && < 2.14 , th-lift-instances >= 0.1.8 && < 0.2 , containers @@ -53,10 +54,11 @@ if impl(ghc >= 7.8) cpp-options: -DWITH_TYPEABLE - if impl(ghc < 8) + if !impl(ghc >= 8) cpp-options: -DLIFT_COMPAT build-depends: - th-lift >= 0.7.5 && < 0.8 + th-lift >= 0.7.5 && < 0.8, + semigroups >= 0.16.2.2 && <0.19 if flag(lib-Werror) ghc-options: -Werror