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 - [email protected]
+
+- 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