packages feed

HsYAML 0.2.1.5 → 0.2.1.6

raw patch · 3 files changed

+19/−11 lines, 3 filesdep −QuickCheckdep ~mtlnew-uploaderPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies removed: QuickCheck

Dependency ranges changed: mtl

API changes (from Hackage documentation)

- Data.YAML: Loader :: (Tag -> ScalarStyle -> Text -> LoaderT m n) -> (Tag -> [n] -> LoaderT m n) -> (Tag -> [(n, n)] -> LoaderT m n) -> (NodeId -> Bool -> n -> LoaderT m n) -> (NodeId -> n -> LoaderT m n) -> Loader m n
+ Data.YAML: Loader :: (Tag -> ScalarStyle -> Text -> LoaderT m n) -> (Tag -> [n] -> LoaderT m n) -> (Tag -> [(n, n)] -> LoaderT m n) -> (NodeId -> Bool -> n -> LoaderT m n) -> (NodeId -> n -> LoaderT m n) -> Loader (m :: Type -> Type) n
- Data.YAML: [yAlias] :: Loader m n -> NodeId -> Bool -> n -> LoaderT m n
+ Data.YAML: [yAlias] :: Loader (m :: Type -> Type) n -> NodeId -> Bool -> n -> LoaderT m n
- Data.YAML: [yAnchor] :: Loader m n -> NodeId -> n -> LoaderT m n
+ Data.YAML: [yAnchor] :: Loader (m :: Type -> Type) n -> NodeId -> n -> LoaderT m n
- Data.YAML: [yMapping] :: Loader m n -> Tag -> [(n, n)] -> LoaderT m n
+ Data.YAML: [yMapping] :: Loader (m :: Type -> Type) n -> Tag -> [(n, n)] -> LoaderT m n
- Data.YAML: [yScalar] :: Loader m n -> Tag -> ScalarStyle -> Text -> LoaderT m n
+ Data.YAML: [yScalar] :: Loader (m :: Type -> Type) n -> Tag -> ScalarStyle -> Text -> LoaderT m n
- Data.YAML: [ySequence] :: Loader m n -> Tag -> [n] -> LoaderT m n
+ Data.YAML: [ySequence] :: Loader (m :: Type -> Type) n -> Tag -> [n] -> LoaderT m n
- Data.YAML: data Loader m n
+ Data.YAML: data Loader (m :: Type -> Type) n
- Data.YAML: type LoaderT m n = Pos -> m (Either (Pos, String) n)
+ Data.YAML: type LoaderT (m :: Type -> Type) n = Pos -> m Either (Pos, String) n
- Data.YAML: type Mapping loc = Map (Node loc) (Node loc)
+ Data.YAML: type Mapping loc = Map Node loc Node loc

Files

ChangeLog.md view
@@ -1,3 +1,13 @@+### 0.2.1.6++_2026-08-13, Simon Jakobi_++* Fix validation of the fourth byte of four-byte UTF-8 sequences (#80).+* Fix the license identifier to say `GPL-2.0-or-later` instead of `GPL-2`+  (aka `GPL-2.0-only`) (#81, #82).+  Consequently, `cabal-version` is bumped to 2.2.+* Tested with GHC 8.0 - 9.14.+ ### 0.2.1.5  _2025-03-11, Andreas Abel_
HsYAML.cabal view
@@ -1,12 +1,11 @@-cabal-version:       1.14+cabal-version:       2.2 name:                HsYAML-version:             0.2.1.5+version:             0.2.1.6  synopsis:            Pure Haskell YAML 1.2 processor homepage:            https://github.com/haskell-hvr/HsYAML bug-reports:         https://github.com/haskell-hvr/HsYAML/issues-license:             GPL-2-X-SPDX-License-Identifier: GPL-2.0-or-later+license:             GPL-2.0-or-later license-files:       LICENSE.GPLv2 LICENSE.GPLv3 author:              Herbert Valerio Riedel maintainer:          https://github.com/haskell-hvr/HsYAML@@ -15,10 +14,11 @@ category:            Text build-type:          Simple tested-with:-  GHC == 9.12.1-  GHC == 9.10.1+  GHC == 9.14.1+  GHC == 9.12.2+  GHC == 9.10.2   GHC == 9.8.4-  GHC == 9.6.6+  GHC == 9.6.7   GHC == 9.4.8   GHC == 9.2.8   GHC == 9.0.2@@ -46,7 +46,7 @@    .    See also the <//hackage.haskell.org/package/HsYAML-aeson HsYAML-aeson> package which allows to decode and encode YAML by leveraging @aeson@'s 'FromJSON' and 'ToJSON' instances. -extra-source-files:+extra-doc-files:   ChangeLog.md  source-repository head@@ -145,9 +145,7 @@                  , base                  , text                  , containers-                 , mtl                    -- non-inherited                    -- lower bounds chosen from lts-11.22 (GHC 8.2)-                 , QuickCheck       >= 2.10.1   && < 2.16                  , tasty            >= 1.0.1.1  && < 1.6                  , tasty-quickcheck >= 0.9.2    && < 1
src/Data/YAML/Token/Encoding.hs view
@@ -247,7 +247,7 @@ decodeFourUTF8 first offset (second:third:fourth:rest)   | second < 0x80 || 0xBF < second = error "UTF-8 quad byte char has invalid second byte"   | third  < 0x80 || 0xBF < third  = error "UTF-8 quad byte char has invalid third byte"-  | third  < 0x80 || 0xBF < third  = error "UTF-8 quad byte char has invalid fourth byte"+  | fourth  < 0x80 || 0xBF < fourth  = error "UTF-8 quad byte char has invalid fourth byte"   | otherwise                      = (offset', c) : undoUTF8' rest offset'   where     !offset' = offset + 4