From 5abc403e2bc32497bdcdb3c710f16497afd306e3 Mon Sep 17 00:00:00 2001 From: yxud Date: Wed, 4 Dec 2024 14:25:27 +0800 Subject: [PATCH 1/3] Update package to version 0.1.6 --- ghc-text-short.spec | 8 ++++-- text-short-0.1.5.tar.gz | Bin 25113 -> 0 bytes text-short-0.1.6.tar.gz | Bin 0 -> 24691 bytes text-short.cabal | 61 +++++++++++++--------------------------- 4 files changed, 25 insertions(+), 44 deletions(-) delete mode 100644 text-short-0.1.5.tar.gz create mode 100644 text-short-0.1.6.tar.gz diff --git a/ghc-text-short.spec b/ghc-text-short.spec index 1df569c..703b593 100644 --- a/ghc-text-short.spec +++ b/ghc-text-short.spec @@ -3,7 +3,7 @@ %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.1.5 +Version: 0.1.6 Release: 1 Summary: Memory-efficient representation of Unicode text strings License: BSD-3-Clause @@ -35,7 +35,6 @@ BuildRequires: ghc-tasty-prof BuildRequires: ghc-tasty-quickcheck-devel BuildRequires: ghc-tasty-quickcheck-prof %endif - %description This package provides the 'ShortText' type which is suitable for keeping many short strings in memory. This is similiar to how 'ShortByteString' relates to @@ -103,5 +102,10 @@ cp -p %{SOURCE1} %{pkg_name}.cabal %files -n ghc-%{pkg_name}-prof -f ghc-%{pkg_name}-prof.files %changelog +* Wed Dec 04 2024 yangxudong 0.1.6-1 +- Update package to version 0.1.6 +- Drop support for GHC prior 8.6.5 +- Support GHC-9.10 (base-4.21) + * Tue Aug 22 2023 Lin Runze 0.1.5-1 - Initial packaging (Version 0.1.5) diff --git a/text-short-0.1.5.tar.gz b/text-short-0.1.5.tar.gz deleted file mode 100644 index 2280aaf34387aa57987ff40cca646f72716c8436..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25113 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 M|0Mq?(g3;v05?k=^t3;rBLa^EGLd}9vTN^i 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 GtN{QF)?D`h literal 0 HcmV?d00001 diff --git a/text-short.cabal b/text-short.cabal index 57759f9..da01322 100644 --- a/text-short.cabal +++ b/text-short.cabal @@ -1,7 +1,7 @@ cabal-version: 1.18 name: text-short -version: 0.1.5 -x-revision: 3 +version: 0.1.6 +x-revision: 2 synopsis: Memory-efficient representation of Unicode text strings license: BSD3 license-file: LICENSE @@ -16,19 +16,15 @@ description: The main difference between 'Text' and 'ShortText' is that 'ShortText' doesn't support zero-copy slicing (thereby saving 2 words), and, compared to text-1.*, that it uses UTF-8 instead of UTF-16 internally. Consequently, the memory footprint of a (boxed) 'ShortText' value is 4 words (2 words when unboxed) plus the length of the UTF-8 encoded payload. tested-with: - GHC ==7.8.4 - || ==7.10.3 - || ==8.0.2 - || ==8.2.2 - || ==8.4.4 - || ==8.6.5 + GHC ==8.6.5 || ==8.8.3 || ==8.10.7 || ==9.0.2 || ==9.2.8 - || ==9.4.7 - || ==9.6.3 - || ==9.8.1 + || ==9.4.8 + || ==9.6.5 + || ==9.8.2 + || ==9.10.1 extra-source-files: ChangeLog.md @@ -49,46 +45,27 @@ library other-modules: Data.Text.Short.Internal build-depends: - base >=4.7 && <4.20 - , binary >=0.7.1 && <0.9 - , bytestring >=0.10.4 && <0.13 - , deepseq >=1.3 && <1.6 - , ghc-prim >=0.3.1 && <0.12 - , hashable >=1.2.6 && <1.5 - , template-haskell >=2.9.0.0 && <2.22 - , text >=1.0 && <1.3 || >=2.0 && <2.2 - - if impl(ghc >=8.0) - build-depends: bytestring >=0.10.8.0 - - if !impl(ghc >=8.0) - build-depends: semigroups >=0.18.2 && <0.21 - - -- GHC version specific PrimOps - if impl(ghc >=8.4) - hs-source-dirs: src-ghc804 - - else - c-sources: cbits/memcmp.c - hs-source-dirs: src-ghc708 + base >=4.12 && <4.21 + , binary >=0.8.6.0 && <0.9 + , bytestring >=0.10.8.2 && <0.13 + , deepseq >=1.4.4.0 && <1.6 + , ghc-prim >=0.5.3 && <0.12 + , hashable >=1.4.4.0 && <1.6 + , template-haskell >=2.14.0.0 && <2.23 + , text >=1.2.3.1 && <1.3 || >=2.0 && <2.2 other-modules: PrimOps - hs-source-dirs: src + hs-source-dirs: src src-ghc804 default-language: Haskell2010 other-extensions: CPP GeneralizedNewtypeDeriving MagicHash + TemplateHaskellQuotes Trustworthy UnliftedFFITypes Unsafe - if impl(ghc >=8) - other-extensions: TemplateHaskellQuotes - - else - other-extensions: TemplateHaskell - c-sources: cbits/cbits.c if flag(asserts) @@ -100,7 +77,7 @@ library ghc-options: -Wall cc-options: -Wall -test-suite tests +test-suite text-short-tests type: exitcode-stdio-1.0 hs-source-dirs: src-test main-is: Tests.hs @@ -118,6 +95,6 @@ test-suite tests build-depends: tasty >=1.4 && <1.6 , tasty-hunit >=0.10.0 && <0.11 - , tasty-quickcheck >=0.10 && <0.11 + , tasty-quickcheck >=0.10 && <0.12 default-language: Haskell2010 -- Gitee From 2d0931ab740502b52106bb219e513d4efd83298a Mon Sep 17 00:00:00 2001 From: yxud Date: Tue, 3 Jun 2025 08:32:58 +0000 Subject: [PATCH 2/3] update ghc-text-short.spec. Signed-off-by: yxud --- ghc-text-short.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/ghc-text-short.spec b/ghc-text-short.spec index 703b593..cb87e0d 100644 --- a/ghc-text-short.spec +++ b/ghc-text-short.spec @@ -9,7 +9,6 @@ Summary: Memory-efficient representation of Unicode text strings 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/3.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-base-devel BuildRequires: ghc-base-prof @@ -73,7 +72,6 @@ This package provides the Haskell %{pkg_name} profiling library. %prep %autosetup -n %{pkg_name}-%{version} -cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build -- Gitee From dd15576902c4d7bd25ea2367bb97453d9c3abe09 Mon Sep 17 00:00:00 2001 From: yxud Date: Tue, 3 Jun 2025 08:33:05 +0000 Subject: [PATCH 3/3] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20text?= =?UTF-8?q?-short.cabal?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- text-short.cabal | 100 ----------------------------------------------- 1 file changed, 100 deletions(-) delete mode 100644 text-short.cabal diff --git a/text-short.cabal b/text-short.cabal deleted file mode 100644 index da01322..0000000 --- a/text-short.cabal +++ /dev/null @@ -1,100 +0,0 @@ -cabal-version: 1.18 -name: text-short -version: 0.1.6 -x-revision: 2 -synopsis: Memory-efficient representation of Unicode text strings -license: BSD3 -license-file: LICENSE -author: Herbert Valerio Riedel -maintainer: hvr@gnu.org -bug-reports: https://github.com/hvr/text-short/issues -category: Data -build-type: Simple -description: - This package provides the 'ShortText' type which is suitable for keeping many short strings in memory. This is similiar to how 'ShortByteString' relates to 'ByteString'. - . - The main difference between 'Text' and 'ShortText' is that 'ShortText' doesn't support zero-copy slicing (thereby saving 2 words), and, compared to text-1.*, that it uses UTF-8 instead of UTF-16 internally. Consequently, the memory footprint of a (boxed) 'ShortText' value is 4 words (2 words when unboxed) plus the length of the UTF-8 encoded payload. - -tested-with: - GHC ==8.6.5 - || ==8.8.3 - || ==8.10.7 - || ==9.0.2 - || ==9.2.8 - || ==9.4.8 - || ==9.6.5 - || ==9.8.2 - || ==9.10.1 - -extra-source-files: ChangeLog.md - -source-repository head - type: git - location: https://github.com/hvr/text-short.git - -flag asserts - description: Enable runtime-checks via @assert@ - default: False - manual: True - -library - exposed-modules: - Data.Text.Short - Data.Text.Short.Partial - Data.Text.Short.Unsafe - - other-modules: Data.Text.Short.Internal - build-depends: - base >=4.12 && <4.21 - , binary >=0.8.6.0 && <0.9 - , bytestring >=0.10.8.2 && <0.13 - , deepseq >=1.4.4.0 && <1.6 - , ghc-prim >=0.5.3 && <0.12 - , hashable >=1.4.4.0 && <1.6 - , template-haskell >=2.14.0.0 && <2.23 - , text >=1.2.3.1 && <1.3 || >=2.0 && <2.2 - - other-modules: PrimOps - hs-source-dirs: src src-ghc804 - default-language: Haskell2010 - other-extensions: - CPP - GeneralizedNewtypeDeriving - MagicHash - TemplateHaskellQuotes - Trustworthy - UnliftedFFITypes - Unsafe - - c-sources: cbits/cbits.c - - if flag(asserts) - ghc-options: -fno-ignore-asserts - - else - cc-options: -DNDEBUG=1 - - ghc-options: -Wall - cc-options: -Wall - -test-suite text-short-tests - type: exitcode-stdio-1.0 - hs-source-dirs: src-test - main-is: Tests.hs - - -- bytestring dependency for cabal_macros.h - build-depends: - base - , binary - , bytestring - , template-haskell - , text - , text-short - - -- deps which don't inherit constraints from library stanza: - build-depends: - tasty >=1.4 && <1.6 - , tasty-hunit >=0.10.0 && <0.11 - , tasty-quickcheck >=0.10 && <0.12 - - default-language: Haskell2010 -- Gitee