commit ghc-base64 for openSUSE:Factory

Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc-base64 for openSUSE:Factory checked in at 2022-08-01 21:28:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-base64 (Old) and /work/SRC/openSUSE:Factory/.ghc-base64.new.1533 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "ghc-base64" Mon Aug 1 21:28:33 2022 rev:6 rq:985801 version:0.4.2.4 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-base64/ghc-base64.changes 2022-02-11 23:10:31.211138714 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-base64.new.1533/ghc-base64.changes 2022-08-01 21:28:34.789343327 +0200 @@ -1,0 +2,9 @@ +Mon Mar 28 18:39:06 UTC 2022 - Peter Simons <psimons@suse.com> + +- Update base64 to version 0.4.2.4. + Upstream has edited the change log file since the last release in + a non-trivial way, i.e. they did more than just add a new entry + at the top. You can review the file at: + http://hackage.haskell.org/package/base64-0.4.2.4/src/CHANGELOG.md + +------------------------------------------------------------------- Old: ---- base64-0.4.2.3.tar.gz base64.cabal New: ---- base64-0.4.2.4.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-base64.spec ++++++ --- /var/tmp/diff_new_pack.NqxHJx/_old 2022-08-01 21:28:35.261344681 +0200 +++ /var/tmp/diff_new_pack.NqxHJx/_new 2022-08-01 21:28:35.265344692 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-base64 # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,17 +19,15 @@ %global pkg_name base64 %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.4.2.3 +Version: 0.4.2.4 Release: 0 Summary: A modern RFC 4648-compliant Base64 library 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/2.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-bytestring-devel BuildRequires: ghc-deepseq-devel -BuildRequires: ghc-ghc-byteorder-devel BuildRequires: ghc-rpm-macros BuildRequires: ghc-text-devel BuildRequires: ghc-text-short-devel @@ -59,7 +57,6 @@ %prep %autosetup -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build ++++++ base64-0.4.2.3.tar.gz -> base64-0.4.2.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/base64-0.4.2.3/CHANGELOG.md new/base64-0.4.2.4/CHANGELOG.md --- old/base64-0.4.2.3/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 +++ new/base64-0.4.2.4/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,9 +1,16 @@ # Revision history for base64 +## 0.4.2.4 + +* Support for GHC 9.2.x +* Remove dependency on `ghc-byteorder` +* Bump base lower bound to GHC 8.10.x to make sure endianness is properly support + (see: https://gitlab.haskell.org/ghc/ghc/-/issues/20338) +* Bump upper bound for `deepseq` + ## 0.4.2.3 -* Minor release for stackage, limiting memory usage in test suites. -* Transition to Github Actions CI +* Tighter length calculations in unpadded base64url [#35](https://github.com/emilypi/base64/pull/35) ## 0.4.2.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/base64-0.4.2.3/README.md new/base64-0.4.2.4/README.md --- old/base64-0.4.2.3/README.md 2001-09-09 03:46:40.000000000 +0200 +++ new/base64-0.4.2.4/README.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,6 +1,6 @@ # Base64 -[](https://travis-ci.com/emilypi/base64) + [](https://hackage.haskell.org/package/base64) Base64 encoding and decodings. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/base64-0.4.2.3/base64.cabal new/base64-0.4.2.4/base64.cabal --- old/base64-0.4.2.3/base64.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/base64-0.4.2.4/base64.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,6 +1,6 @@ cabal-version: 2.0 name: base64 -version: 0.4.2.3 +version: 0.4.2.4 synopsis: A modern RFC 4648-compliant Base64 library description: RFC 4648-compliant Base64 with an eye towards performance and modernity (additional support for RFC 7049 standards) @@ -11,14 +11,14 @@ license-file: LICENSE author: Emily Pillmore maintainer: emilypi@cohomolo.gy -copyright: (c) 2019-2020 Emily Pillmore +copyright: (c) 2019-2022 Emily Pillmore category: Data build-type: Simple extra-doc-files: CHANGELOG.md README.md -tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.3 +tested-with: GHC ==8.10.7 || ==9.0.2 || ==9.2.2 source-repository head type: git @@ -51,10 +51,9 @@ Data.ByteString.Base64.Internal.W64.Loop build-depends: - base >=4.10 && <5 + base >=4.14 && <4.17 , bytestring >=0.10 && <0.12 - , deepseq >=1.4.3.0 && <1.4.5.0 - , ghc-byteorder ^>=4.11.0.0 + , deepseq >=1.4.3.0 && <1.5 , text ^>=1.2 , text-short ^>=0.1 @@ -69,7 +68,7 @@ other-modules: Internal main-is: Main.hs build-depends: - base >=4.10 && <5 + base >=4.14 && <4.17 , base64 , base64-bytestring , bytestring @@ -89,7 +88,7 @@ hs-source-dirs: benchmarks main-is: Base64Bench.hs build-depends: - base >=4.10 && <5 + base >=4.14 && <4.17 , base64 , base64-bytestring , bytestring diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/base64-0.4.2.3/src/Data/ByteString/Base64/Internal/Head.hs new/base64-0.4.2.4/src/Data/ByteString/Base64/Internal/Head.hs --- old/base64-0.4.2.3/src/Data/ByteString/Base64/Internal/Head.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/base64-0.4.2.4/src/Data/ByteString/Base64/Internal/Head.hs 2001-09-09 03:46:40.000000000 +0200 @@ -88,11 +88,10 @@ -- padded string. -- decodeBase64_ - :: Int - -> ForeignPtr Word8 + :: ForeignPtr Word8 -> ByteString -> IO (Either Text ByteString) -decodeBase64_ !dlen !dtfp (PS !sfp !soff !slen) = +decodeBase64_ !dtfp (PS !sfp !soff !slen) = withForeignPtr dtfp $ \dtable -> withForeignPtr sfp $ \sptr -> do dfp <- mallocPlainForeignPtrBytes dlen @@ -101,6 +100,8 @@ decodeLoop dtable (plusPtr sptr soff) dptr end dfp + where + !dlen = (slen `quot` 4) * 3 {-# inline decodeBase64_ #-} decodeBase64Lenient_ :: ForeignPtr Word8 -> ByteString -> ByteString diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/base64-0.4.2.3/src/Data/ByteString/Base64/Internal/Utils.hs new/base64-0.4.2.4/src/Data/ByteString/Base64/Internal/Utils.hs --- old/base64-0.4.2.3/src/Data/ByteString/Base64/Internal/Utils.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/base64-0.4.2.4/src/Data/ByteString/Base64/Internal/Utils.hs 2001-09-09 03:46:40.000000000 +0200 @@ -2,7 +2,7 @@ {-# LANGUAGE MagicHash #-} -- | -- Module : Data.ByteString.Base64.Internal --- Copyright : (c) 2019-2020 Emily Pillmore +-- Copyright : (c) 2019-2022 Emily Pillmore -- License : BSD-style -- -- Maintainer : Emily Pillmore <emilypi@cohomolo.gy> @@ -54,7 +54,9 @@ -- | Read 'Word8' index off alphabet addr -- aix :: Word8 -> Addr# -> Word8 -aix (W8# i) alpha = W8# (indexWord8OffAddr# alpha (word2Int# i)) +aix w8 alpha = W8# (indexWord8OffAddr# alpha i) + where + !(I# i) = fromIntegral w8 {-# INLINE aix #-} -- | Convert 'Word8''s into 'Word32''s @@ -155,11 +157,11 @@ peekWord32BE :: Ptr Word32 -> IO Word32 peekWord32BE p = case targetByteOrder of LittleEndian -> byteSwap32 <$> peek p - BigEndian -> peek p + BigEndian -> peek p {-# inline peekWord32BE #-} peekWord64BE :: Ptr Word64 -> IO Word64 peekWord64BE p = case targetByteOrder of LittleEndian -> byteSwap64 <$> peek p - BigEndian -> peek p + BigEndian -> peek p {-# inline peekWord64BE #-} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/base64-0.4.2.3/src/Data/ByteString/Base64/URL.hs new/base64-0.4.2.4/src/Data/ByteString/Base64/URL.hs --- old/base64-0.4.2.3/src/Data/ByteString/Base64/URL.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/base64-0.4.2.4/src/Data/ByteString/Base64/URL.hs 2001-09-09 03:46:40.000000000 +0200 @@ -94,14 +94,12 @@ decodeBase64 :: ByteString -> Either Text ByteString decodeBase64 bs@(PS _ _ !l) | l == 0 = Right bs - | r == 0 = unsafeDupablePerformIO $ decodeBase64_ dlen decodeB64UrlTable bs - | r == 2 = unsafeDupablePerformIO $ decodeBase64_ dlen decodeB64UrlTable (BS.append bs "==") - | r == 3 = validateLastPad bs $ decodeBase64_ dlen decodeB64UrlTable (BS.append bs "=") + | r == 0 = unsafeDupablePerformIO $ decodeBase64_ decodeB64UrlTable bs + | r == 2 = unsafeDupablePerformIO $ decodeBase64_ decodeB64UrlTable (BS.append bs "==") + | r == 3 = validateLastPad bs $ decodeBase64_ decodeB64UrlTable (BS.append bs "=") | otherwise = Left "Base64-encoded bytestring has invalid size" where - !q = l `quot` 4 !r = l `rem` 4 - !dlen = q * 3 {-# INLINE decodeBase64 #-} -- | Encode a 'ByteString' value as Base64url 'Text' without padding. Note that for Base64url, @@ -153,14 +151,12 @@ decodeBase64Unpadded :: ByteString -> Either Text ByteString decodeBase64Unpadded bs@(PS _ _ !l) | l == 0 = Right bs - | r == 0 = validateLastPad bs $ decodeBase64_ dlen decodeB64UrlTable bs - | r == 2 = validateLastPad bs $ decodeBase64_ dlen decodeB64UrlTable (BS.append bs "==") - | r == 3 = validateLastPad bs $ decodeBase64_ dlen decodeB64UrlTable (BS.append bs "=") + | r == 0 = validateLastPad bs $ decodeBase64_ decodeB64UrlTable bs + | r == 2 = validateLastPad bs $ decodeBase64_ decodeB64UrlTable (BS.append bs "==") + | r == 3 = validateLastPad bs $ decodeBase64_ decodeB64UrlTable (BS.append bs "=") | otherwise = Left "Base64-encoded bytestring has invalid size" where - !q = l `quot` 4 !r = l `rem` 4 - !dlen = q * 3 {-# INLINE decodeBase64Unpadded #-} -- | Decode a padded Base64url-encoded 'ByteString' value. Input strings are @@ -185,11 +181,9 @@ | l == 0 = Right bs | r == 1 = Left "Base64-encoded bytestring has invalid size" | r /= 0 = Left "Base64-encoded bytestring requires padding" - | otherwise = unsafeDupablePerformIO $ decodeBase64_ dlen decodeB64UrlTable bs + | otherwise = unsafeDupablePerformIO $ decodeBase64_ decodeB64UrlTable bs where - !q = l `quot` 4 !r = l `rem` 4 - !dlen = q * 3 {-# INLINE decodeBase64Padded #-} -- | Leniently decode an unpadded Base64url-encoded 'ByteString'. This function diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/base64-0.4.2.3/src/Data/ByteString/Base64.hs new/base64-0.4.2.4/src/Data/ByteString/Base64.hs --- old/base64-0.4.2.3/src/Data/ByteString/Base64.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/base64-0.4.2.4/src/Data/ByteString/Base64.hs 2001-09-09 03:46:40.000000000 +0200 @@ -85,11 +85,9 @@ | l == 0 = Right bs | r == 1 = Left "Base64-encoded bytestring has invalid size" | r /= 0 = Left "Base64-encoded bytestring requires padding" - | otherwise = unsafeDupablePerformIO $ decodeBase64_ dlen decodeB64Table bs + | otherwise = unsafeDupablePerformIO $ decodeBase64_ decodeB64Table bs where - !q = l `quot` 4 !r = l `rem` 4 - !dlen = q * 3 {-# inline decodeBase64 #-} -- | Leniently decode an unpadded Base64-encoded 'ByteString' value. This function
participants (1)
-
Source-Sync