normalization-insensitive 2.0.1 → 2.0.2
raw patch · 4 files changed
+75/−186 lines, 4 filesdep +semigroupsdep ~bytestringdep ~hashabledep ~unicode-transformsPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: semigroups
Dependency ranges changed: bytestring, hashable, unicode-transforms
API changes (from Hackage documentation)
- Data.Unicode.NormalizationInsensitive: map :: Normalizable s2 => (s1 -> s2) -> (NI s1 -> NI s2)
+ Data.Unicode.NormalizationInsensitive: map :: Normalizable s2 => (s1 -> s2) -> NI s1 -> NI s2
Files
- CHANGELOG +8/−173
- Data/Unicode/NormalizationInsensitive/Internal.hs +5/−0
- normalization-insensitive.cabal +19/−13
- stack.yaml +43/−0
CHANGELOG view
@@ -1,3 +1,10 @@+2.0.2++* Support bytestring-0.11.x, criterion-1.5.x, hashable-1.3.x+* This required pulling in semigroups as a dependency, and NI is now+ an instance of Semigroup++ 2.0.1 * Expose 'normalized'@@ -11,176 +18,4 @@ 2.0 -* New package normalization-insensitive based on case-insensitive---1.2.0.5--* Support HUnit-1.3-* Support criterion-1.1-* Updated .nix files---1.2.0.4--* Fixed #17: https://github.com/basvandijk/case-insensitive/issues/17---1.2.0.3--* Add CHANGELOG to extra-source files so that it shows up on Hackage---1.2.0.2--* Bump base and deepseq upper bounds for GHC 7.10 compatibility--* Add case-insensitive.nix and default.nix--* Fix #14: Build failure with GHC 7.2.2--* Fix #8: Don't unnecessarily use NoImplicitPrelude---1.2.0.1--* Solved warnings on GHC-7.8.3--* Bump text upper version bounds---1.2.0.0--* Derived a Data instance for CI---1.1.0.3--* Support text-1.1---1.1.0.2--* Support text-1.0---1.1.0.1--* Fixed bad character L178---1.1--* Added the Data.CaseInsensitive.Unsafe module--* Mark Data.CaseInsensitive.Internal as Unsafe---1.0.0.2--* Support criterion-0.8---1.0.0.1--* Fix building on GHC-6.12.1--* Bump base upper bound for GHC 7.7--* Added a NEWS file---1.0 @ Mon Jan 28 14:39:05 UTC 2013--* Make package ready for the Haskell Platform--* Drop the UnicodeSyntax, TypeSynonymInstances and FlexibleInstances- language extensions--* Add instance NFData s => NFData (CI s)--* Add a hidden method to the FoldCase type class:- foldCaseList :: [s] -> [s]- foldCaseList = L.map foldCase--* Add instance FoldCase a => FoldCase [a] where- foldCase = foldCaseList--* Add instance FoldCase Char where- foldCase = toLower- foldCaseList = TL.unpack . TL.toCaseFold . TL.pack--* Added a simple test suite--* Added a simple benchmark--* Added a rewrite rule to make 'mk' more efficient on strict- ByteStrings---0.4.0.4 @ Fri Dec 14 07:06:58 UTC 2012--* Support hashable-1.2---0.4.0.3 @ Sat Aug 18 07:20:49 UTC 2012--* Improve performance of foldCase on sctrict and lazy ByteStrings---0.4.0.2 @ Thu Aug 16 14:58:33 UTC 2012--* Declare Data.CaseInsensitive to be Trustworthy--* Support base-4.6--* Support bytestring-0.10---0.4.0.1 @ Wed Dec 14 15:24:55 UTC 2011--* Support base-4.5---0.4 @ Thu Oct 27 18:29:58 UTC 2011--* Remove instance FoldCase Char--* Perform proper case folding on Strings:- -instance FoldCase String where foldCase = L.map toLower- +instance FoldCase String where foldCase = TL.unpack . TL.toCaseFold . TL.pack---0.3.0.1 @ Mon Aug 8 06:28:21 UTC 2011--* Support base-4.4---0.3 @ Thu Jul 14 07:38:52 UTC 2011--* Add instance Hashable s => Hashable (CI s)---0.2.0.2 @ Thu Jun 30 22:24:23 UTC 2011--* Moved from darcs on code.haskell.org- to git on githb.com---0.2.0.1 @ Tue Mar 29 20:30:32 UTC 2011--* Drop dependency on base-unicode-symbols---0.2 @ Mon Feb 7 20:18:34 UTC 2011--* Export foldedCase :: CI s -> s--* Remove instance FoldCase s ⇒ FoldCase [s]--* Add instance FoldCase String---0.1 @ Sun Feb 6 23:54:22 UTC 2011--* Initial release+* New package normalization-insensitive based on case-insensitive-1.2.0.5
Data/Unicode/NormalizationInsensitive/Internal.hs view
@@ -37,6 +37,7 @@ import Prelude ( String, (.), fmap ) import Text.Read ( Read, readPrec ) import Text.Show ( Show, showsPrec )+import Data.Semigroup ( Semigroup, (<>) ) -- from bytestring: import qualified Data.ByteString as B ( ByteString )@@ -100,6 +101,10 @@ instance (IsString s, Normalizable s) => IsString (NI s) where fromString = mk . fromString++instance (Semigroup s, Normalizable s) => Semigroup (NI s) where+ NI o1 _ <> NI o2 _ = NI o12 (normalize o12)+ where o12 = o1 <> o2 instance (Monoid s, Normalizable s) => Monoid (NI s) where mempty = NI mempty mempty
normalization-insensitive.cabal view
@@ -1,6 +1,6 @@ name: normalization-insensitive-version: 2.0.1-cabal-version: >=1.8+version: 2.0.2+cabal-version: >=1.10 build-type: Simple license: BSD3 license-file: LICENSE@@ -18,16 +18,17 @@ string-like type like: 'String', 'ByteString', 'Text', etc.. Comparisons of values of the resulting type will be insensitive to normalization.-+ . This is very similar in spirit to the @case-insensitive@ package, and is in fact based on the same code. tested-with:- GHC==7.8.4, GHC==7.10.3,- GHC==8.0.1,- GHC==8.2.1+ GHC==8.6.5 -extra-source-files: README.markdown CHANGELOG pg2189.txt+extra-source-files: README.markdown+ , CHANGELOG+ , pg2189.txt+ , stack.yaml source-repository head Type: git@@ -36,14 +37,17 @@ Library ghc-options: -Wall build-depends: base >= 4.7 && < 5- , bytestring >= 0.9 && < 0.11+ , bytestring >= 0.9 && < 0.12 , text >= 1.1.1 && < 1.3 , deepseq >= 1.1 && < 1.5- , hashable >= 1.0 && < 1.3+ , hashable >= 1.0 && < 1.4 , unicode-transforms >= 0.1.0.1 && < 0.4+ if !impl(ghc >= 8.0)+ build-depends: semigroups >= 0.18 && < 0.19 exposed-modules: Data.Unicode.NormalizationInsensitive , Data.Unicode.NormalizationInsensitive.Unsafe other-modules: Data.Unicode.NormalizationInsensitive.Internal+ default-language: Haskell2010 test-suite test-normalization-insensitive type: exitcode-stdio-1.0@@ -52,14 +56,15 @@ build-depends: normalization-insensitive , base >= 4.7 && < 5- , bytestring >= 0.9 && < 0.11+ , bytestring >= 0.9 && < 0.12 , text >= 1.1.1 && < 1.3- , hashable >= 1.0 && < 1.3+ , hashable >= 1.0 && < 1.4 , HUnit >= 1.2.2 && < 1.7 , test-framework >= 0.2.4 && < 0.9 , test-framework-hunit >= 0.2.4 && < 0.4 ghc-options: -Wall+ default-language: Haskell2010 benchmark bench-normalization-insensitive type: exitcode-stdio-1.0@@ -71,6 +76,7 @@ build-depends: normalization-insensitive , base >= 4.7 && < 5- , bytestring >= 0.9 && < 0.11- , criterion >= 0.6.1 && < 1.3+ , bytestring >= 0.9 && < 0.12+ , criterion >= 0.6.1 && < 1.6 , deepseq >= 1.1 && < 1.5+ default-language: Haskell2010
+ stack.yaml view
@@ -0,0 +1,43 @@+# This file was automatically generated by stack init+# For more information, see: http://docs.haskellstack.org/en/stable/yaml_configuration/++# Specifies the GHC version and set of packages available (e.g., lts-3.5, nightly-2015-09-21, ghc-7.10.2)+resolver: lts-13.20++# Local packages, usually specified by relative directory name+packages:+- '.'+# Packages to be pulled from upstream that are not in the resolver (e.g., acme-missiles-0.3)+extra-deps:+- binary-0.8.8.0+- bytestring-0.11.1.0+- criterion-1.4.0.0+- hashable-1.3.1.0+- text-1.2.4.1+- time-1.8.0.4+- unicode-transforms-0.3.7.1+- Win32-2.11.1.0++# Override default flag values for local packages and extra-deps+flags: {}++# Extra package databases containing global packages+extra-package-dbs: []++# Control whether we use the GHC we find on the path+# system-ghc: true++# Require a specific version of stack, using version ranges+# require-stack-version: -any # Default+# require-stack-version: >= 1.0.0++# Override the architecture used by stack, especially useful on Windows+# arch: i386+# arch: x86_64++# Extra directories used by stack for building+# extra-include-dirs: [/path/to/dir]+# extra-lib-dirs: [/path/to/dir]++# Allow a newer minor version of GHC than the snapshot specifies+# compiler-check: newer-minor