packages feed

normalization-insensitive 2.0 → 2.0.0.1

raw patch · 4 files changed

+16/−8 lines, 4 filesdep ~HUnitdep ~criteriondep ~unicode-transformsPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: HUnit, criterion, unicode-transforms

API changes (from Hackage documentation)

Files

CHANGELOG view
@@ -1,3 +1,9 @@+2.0.0.1++* Avoid using Data.ByteString.UTF8.Normalize, which was deprecated in+  unicode-transforms-0.2.0++ 2.0  * New package normalization-insensitive based on case-insensitive
Data/Unicode/NormalizationInsensitive/Internal.hs view
@@ -43,8 +43,10 @@ import qualified Data.ByteString.Lazy as BL ( ByteString, fromStrict, toStrict )  -- from text:-import qualified Data.Text      as T  ( Text, pack, unpack )-import qualified Data.Text.Lazy as TL ( Text, fromStrict, toStrict )+import qualified Data.Text                as T  ( Text, pack, unpack )+import qualified Data.Text.Encoding       as T  ( decodeUtf8With, encodeUtf8 )+import qualified Data.Text.Encoding.Error as T  ( lenientDecode )+import qualified Data.Text.Lazy           as TL ( Text, fromStrict, toStrict )  -- from deepseq: import Control.DeepSeq ( NFData, rnf, deepseq )@@ -53,7 +55,6 @@ import Data.Hashable ( Hashable, hashWithSalt )  -- from unicode-transforms:-import qualified Data.ByteString.UTF8.Normalize as B ( normalize ) import qualified Data.Text.Normalize            as T ( normalize ) import Data.Unicode.Types                       ( NormalizationMode(NFC) ) @@ -84,7 +85,7 @@ mk :: Normalizable s => s -> NI s mk s = NI s (normalize s) --- | Constructs a 'NI' from an already normalized string-like+-- | Constructs an 'NI' from an already normalized string-like -- value. The given string is used both as the 'original' as well as -- the 'normalized'. --@@ -140,11 +141,11 @@  -- | Note that @normalize@ on @'B.ByteString's@ assumes UTF-8 encoded strings! instance Normalizable B.ByteString where-    normalize = B.normalize mode+    normalize = T.encodeUtf8 . normalize . T.decodeUtf8With T.lenientDecode  -- | Note that @normalize@ on @'BL.ByteString's@ assumes UTF-8 encoded strings! instance Normalizable BL.ByteString where-    normalize = BL.fromStrict . B.normalize mode . BL.toStrict+    normalize = BL.fromStrict . normalize . BL.toStrict  instance Normalizable String where     normalize = T.unpack . T.normalize mode . T.pack
README.markdown view
@@ -1,4 +1,5 @@ [![Build Status](https://travis-ci.org/ppelleti/normalization-insensitive.svg?branch=master)](https://travis-ci.org/ppelleti/normalization-insensitive)+[![Build status](https://ci.appveyor.com/api/projects/status/0qhwhc1cfsphf263/branch/master?svg=true)](https://ci.appveyor.com/project/ppelleti/normalization-insensitive/branch/master)  The module `Data.Unicode.NormalizationInsensitive` provides the `NI` type constructor which can be parameterized by a string-like type like:
normalization-insensitive.cabal view
@@ -1,5 +1,5 @@ name:          normalization-insensitive-version:       2.0+version:       2.0.0.1 cabal-version: >=1.8 build-type:    Simple license:       BSD3@@ -39,7 +39,7 @@                , text       >= 0.3 && < 1.3                , deepseq    >= 1.1 && < 1.5                , hashable   >= 1.0 && < 1.3-               , unicode-transforms >= 0.1.0.1 && < 1.2+               , unicode-transforms >= 0.1.0.1 && < 0.3   exposed-modules: Data.Unicode.NormalizationInsensitive                  , Data.Unicode.NormalizationInsensitive.Unsafe   other-modules: Data.Unicode.NormalizationInsensitive.Internal