Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc-megaparsec for openSUSE:Factory checked in at 2023-06-22 23:25:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-megaparsec (Old) and /work/SRC/openSUSE:Factory/.ghc-megaparsec.new.15902 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-megaparsec" Thu Jun 22 23:25:27 2023 rev:19 rq:1094436 version:9.3.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-megaparsec/ghc-megaparsec.changes 2023-04-04 21:21:29.845562932 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-megaparsec.new.15902/ghc-megaparsec.changes 2023-06-22 23:25:52.945786909 +0200 @@ -1,0 +2,9 @@ +Thu May 18 18:11:54 UTC 2023 - Peter Simons <psim...@suse.com> + +- Update megaparsec to version 9.3.1. + ## Megaparsec 9.3.1 + + * Fixed a bug related to processing of tabs when error messages are + rendered. [Issue 524](https://github.com/mrkkrp/megaparsec/issues/524). + +------------------------------------------------------------------- Old: ---- megaparsec-9.3.0.tar.gz New: ---- megaparsec-9.3.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-megaparsec.spec ++++++ --- /var/tmp/diff_new_pack.v3BnE2/_old 2023-06-22 23:25:53.465789561 +0200 +++ /var/tmp/diff_new_pack.v3BnE2/_new 2023-06-22 23:25:53.473789602 +0200 @@ -19,7 +19,7 @@ %global pkg_name megaparsec %global pkgver %{pkg_name}-%{version} Name: ghc-%{pkg_name} -Version: 9.3.0 +Version: 9.3.1 Release: 0 Summary: Monadic parser combinators License: BSD-2-Clause ++++++ megaparsec-9.3.0.tar.gz -> megaparsec-9.3.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/CHANGELOG.md new/megaparsec-9.3.1/CHANGELOG.md --- old/megaparsec-9.3.0/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,5 +1,10 @@ *Megaparsec follows [SemVer](https://semver.org/).* +## Megaparsec 9.3.1 + +* Fixed a bug related to processing of tabs when error messages are + rendered. [Issue 524](https://github.com/mrkkrp/megaparsec/issues/524). + ## Megaparsec 9.3.0 * Now `label` can override more than one group of hints in the parser it diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/README.md new/megaparsec-9.3.1/README.md --- old/megaparsec-9.3.0/README.md 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/README.md 2001-09-09 03:46:40.000000000 +0200 @@ -281,6 +281,7 @@ library for easily using [TagSoup](https://hackage.haskell.org/package/tagsoup) as a token type in Megaparsec. +* [`parser-combinators`](https://hackage.haskell.org/package/parser-combinators)âprovides permutation and expression parsers [previously bundled with Megaparsec](https://markkarpov.com/post/megaparsec-7.html#parsercombinators-grows-megaparsec-shrinks). ## Prominent projects that use Megaparsec diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Byte/Binary.hs new/megaparsec-9.3.1/Text/Megaparsec/Byte/Binary.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Byte/Binary.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Byte/Binary.hs 2001-09-09 03:46:40.000000000 +0200 @@ -185,7 +185,7 @@ -- -- Performs ceiling division, so byte-unaligned types (bitsize not a -- multiple of 8) should work, but further usage is not tested. -finiteByteSize :: forall a. FiniteBits a => Int +finiteByteSize :: forall a. (FiniteBits a) => Int finiteByteSize = finiteBitSize @a undefined `ceilDiv` 8 where ceilDiv x y = (x + y - 1) `div` y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Char/Lexer.hs new/megaparsec-9.3.1/Text/Megaparsec/Char/Lexer.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Char/Lexer.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Char/Lexer.hs 2001-09-09 03:46:40.000000000 +0200 @@ -152,7 +152,7 @@ -- -- @since 5.0.0 incorrectIndent :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Desired ordering between reference level and actual level Ordering -> -- | Reference indentation level diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Class.hs new/megaparsec-9.3.1/Text/Megaparsec/Class.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Class.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Class.hs 2001-09-09 03:46:40.000000000 +0200 @@ -275,7 +275,7 @@ ---------------------------------------------------------------------------- -- Lifting through MTL -instance MonadParsec e s m => MonadParsec e s (L.StateT st m) where +instance (MonadParsec e s m) => MonadParsec e s (L.StateT st m) where parseError e = lift (parseError e) label n (L.StateT m) = L.StateT $ label n . m try (L.StateT m) = L.StateT $ try . m @@ -296,7 +296,7 @@ getParserState = lift getParserState updateParserState f = lift (updateParserState f) -instance MonadParsec e s m => MonadParsec e s (S.StateT st m) where +instance (MonadParsec e s m) => MonadParsec e s (S.StateT st m) where parseError e = lift (parseError e) label n (S.StateT m) = S.StateT $ label n . m try (S.StateT m) = S.StateT $ try . m @@ -317,7 +317,7 @@ getParserState = lift getParserState updateParserState f = lift (updateParserState f) -instance MonadParsec e s m => MonadParsec e s (L.ReaderT r m) where +instance (MonadParsec e s m) => MonadParsec e s (L.ReaderT r m) where parseError e = lift (parseError e) label n (L.ReaderT m) = L.ReaderT $ label n . m try (L.ReaderT m) = L.ReaderT $ try . m @@ -433,7 +433,7 @@ getParserState = lift getParserState updateParserState f = lift (updateParserState f) -instance MonadParsec e s m => MonadParsec e s (IdentityT m) where +instance (MonadParsec e s m) => MonadParsec e s (IdentityT m) where parseError e = lift (parseError e) label n (IdentityT m) = IdentityT $ label n m try = IdentityT . try . runIdentityT @@ -457,7 +457,7 @@ fixs _ (Right (b, s)) = (Right b, s) {-# INLINE fixs #-} -fixs' :: Monoid w => s -> Either a (b, s, w) -> (Either a b, s, w) +fixs' :: (Monoid w) => s -> Either a (b, s, w) -> (Either a b, s, w) fixs' s (Left a) = (Left a, s, mempty) fixs' _ (Right (b, s, w)) = (Right b, s, w) {-# INLINE fixs' #-} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Common.hs new/megaparsec-9.3.1/Text/Megaparsec/Common.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Common.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Common.hs 2001-09-09 03:46:40.000000000 +0200 @@ -25,7 +25,7 @@ import Text.Megaparsec -- | A synonym for 'chunk'. -string :: MonadParsec e s m => Tokens s -> m (Tokens s) +string :: (MonadParsec e s m) => Tokens s -> m (Tokens s) string = chunk {-# INLINE string #-} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Debug.hs new/megaparsec-9.3.1/Text/Megaparsec/Debug.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Debug.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Debug.hs 2001-09-09 03:46:40.000000000 +0200 @@ -43,7 +43,7 @@ -- | Type class describing parser monads that can trace during evaluation. -- -- @since 9.3.0 -class MonadParsec e s m => MonadParsecDbg e s m where +class (MonadParsec e s m) => MonadParsecDbg e s m where -- | @'dbg' label p@ parser works exactly like @p@, but when it's evaluated -- it prints information useful for debugging. The @label@ is only used to -- refer to this parser in the debugging output. This combinator uses the @@ -70,7 +70,7 @@ -- function that worked only in 'ParsecT'. It was first introduced in the -- version /7.0.0/. dbg :: - Show a => + (Show a) => -- | Debugging label String -> -- | Parser to debug @@ -109,7 +109,7 @@ dbgWithComment "STATE" str $ S.runStateT sma s instance - MonadParsecDbg e s m => + (MonadParsecDbg e s m) => MonadParsecDbg e s (L.ReaderT r m) where dbg = L.mapReaderT . dbg @@ -182,7 +182,7 @@ ((a, st), w) <- first unComment . unComment <$> dbg str smth pure (a, st, w) -instance MonadParsecDbg e s m => MonadParsecDbg e s (IdentityT m) where +instance (MonadParsecDbg e s m) => MonadParsecDbg e s (IdentityT m) where dbg = mapIdentityT . dbg -- | @'dbgWithComment' label_a label_c m@ traces the first component of the @@ -273,7 +273,7 @@ "MATCH (EERR): " ++ showStream pxy ts ++ "\nERROR:\n" ++ parseErrorPretty e -- | Pretty-print a list of tokens. -showStream :: VisualStream s => Proxy s -> [Token s] -> String +showStream :: (VisualStream s) => Proxy s -> [Token s] -> String showStream pxy ts = case NE.nonEmpty ts of Nothing -> "<EMPTY>" @@ -293,7 +293,7 @@ streamDelta s0 s1 = stateOffset s1 - stateOffset s0 -- | Extract a given number of tokens from the stream. -streamTake :: forall s. Stream s => Int -> s -> [Token s] +streamTake :: forall s. (Stream s) => Int -> s -> [Token s] streamTake n s = case fst <$> takeN_ n s of Nothing -> [] @@ -304,7 +304,7 @@ -- -- @since 9.1.0 dbg' :: - MonadParsecDbg e s m => + (MonadParsecDbg e s m) => -- | Debugging label String -> -- | Parser to debug diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Error/Builder.hs new/megaparsec-9.3.1/Text/Megaparsec/Error/Builder.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Error/Builder.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Error/Builder.hs 2001-09-09 03:46:40.000000000 +0200 @@ -59,9 +59,9 @@ data ET s = ET (Maybe (ErrorItem (Token s))) (Set (ErrorItem (Token s))) deriving (Typeable, Generic) -deriving instance Eq (Token s) => Eq (ET s) +deriving instance (Eq (Token s)) => Eq (ET s) -deriving instance Ord (Token s) => Ord (ET s) +deriving instance (Ord (Token s)) => Ord (ET s) deriving instance ( Data s, @@ -70,7 +70,7 @@ ) => Data (ET s) -instance Stream s => Semigroup (ET s) where +instance (Stream s) => Semigroup (ET s) where ET us0 ps0 <> ET us1 ps1 = ET (n us0 us1) (E.union ps0 ps1) where n Nothing Nothing = Nothing @@ -78,7 +78,7 @@ n Nothing (Just y) = Just y n (Just x) (Just y) = Just (max x y) -instance Stream s => Monoid (ET s) where +instance (Stream s) => Monoid (ET s) where mempty = ET Nothing E.empty mappend = (<>) @@ -86,10 +86,10 @@ newtype EF e = EF (Set (ErrorFancy e)) deriving (Eq, Ord, Data, Typeable, Generic) -instance Ord e => Semigroup (EF e) where +instance (Ord e) => Semigroup (EF e) where EF xs0 <> EF xs1 = EF (E.union xs0 xs1) -instance Ord e => Monoid (EF e) where +instance (Ord e) => Monoid (EF e) where mempty = EF E.empty mappend = (<>) @@ -122,43 +122,43 @@ -- Error components -- | Construct an âunexpected tokenâ error component. -utok :: Stream s => Token s -> ET s +utok :: (Stream s) => Token s -> ET s utok = unexp . Tokens . nes -- | Construct an âunexpected tokensâ error component. Empty chunk produces -- 'EndOfInput'. -utoks :: forall s. Stream s => Tokens s -> ET s +utoks :: forall s. (Stream s) => Tokens s -> ET s utoks = unexp . canonicalizeTokens (Proxy :: Proxy s) -- | Construct an âunexpected labelâ error component. Do not use with empty -- strings (for empty strings it's bottom). -ulabel :: Stream s => String -> ET s +ulabel :: (Stream s) => String -> ET s ulabel label | label == "" = error "Text.Megaparsec.Error.Builder.ulabel: empty label" | otherwise = unexp . Label . NE.fromList $ label -- | Construct an âunexpected end of inputâ error component. -ueof :: Stream s => ET s +ueof :: (Stream s) => ET s ueof = unexp EndOfInput -- | Construct an âexpected tokenâ error component. -etok :: Stream s => Token s -> ET s +etok :: (Stream s) => Token s -> ET s etok = expe . Tokens . nes -- | Construct an âexpected tokensâ error component. Empty chunk produces -- 'EndOfInput'. -etoks :: forall s. Stream s => Tokens s -> ET s +etoks :: forall s. (Stream s) => Tokens s -> ET s etoks = expe . canonicalizeTokens (Proxy :: Proxy s) -- | Construct an âexpected labelâ error component. Do not use with empty -- strings. -elabel :: Stream s => String -> ET s +elabel :: (Stream s) => String -> ET s elabel label | label == "" = error "Text.Megaparsec.Error.Builder.elabel: empty label" | otherwise = expe . Label . NE.fromList $ label -- | Construct an âexpected end of inputâ error component. -eeof :: Stream s => ET s +eeof :: (Stream s) => ET s eeof = expe EndOfInput -- | Construct a custom error component. @@ -171,7 +171,7 @@ -- | Construct the appropriate 'ErrorItem' representation for the given -- token stream. The empty string produces 'EndOfInput'. canonicalizeTokens :: - Stream s => + (Stream s) => Proxy s -> Tokens s -> ErrorItem (Token s) @@ -181,11 +181,11 @@ Just xs -> Tokens xs -- | Lift an unexpected item into 'ET'. -unexp :: Stream s => ErrorItem (Token s) -> ET s +unexp :: (Stream s) => ErrorItem (Token s) -> ET s unexp u = ET (pure u) E.empty -- | Lift an expected item into 'ET'. -expe :: Stream s => ErrorItem (Token s) -> ET s +expe :: (Stream s) => ErrorItem (Token s) -> ET s expe p = ET Nothing (E.singleton p) -- | Make a singleton non-empty list from a value. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Error.hs new/megaparsec-9.3.1/Text/Megaparsec/Error.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Error.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Error.hs 2001-09-09 03:46:40.000000000 +0200 @@ -80,7 +80,7 @@ EndOfInput deriving (Show, Read, Eq, Ord, Data, Typeable, Generic, Functor) -instance NFData t => NFData (ErrorItem t) +instance (NFData t) => NFData (ErrorItem t) -- | Additional error data, extendable by user. When no custom data is -- necessary, the type is typically indexed by 'Void' to âcancelâ the @@ -98,7 +98,7 @@ ErrorCustom e deriving (Show, Read, Eq, Ord, Data, Typeable, Generic, Functor) -instance NFData a => NFData (ErrorFancy a) where +instance (NFData a) => NFData (ErrorFancy a) where rnf (ErrorFail str) = rnf str rnf (ErrorIndentation ord ref act) = ord `seq` rnf ref `seq` rnf act rnf (ErrorCustom a) = rnf a @@ -180,7 +180,7 @@ -- -- @since 7.0.0 mapParseError :: - Ord e' => + (Ord e') => (e -> e') -> ParseError s e -> ParseError s e' @@ -332,7 +332,7 @@ -- | The type class defines how to print a custom component of 'ParseError'. -- -- @since 5.0.0 -class Ord a => ShowErrorComponent a where +class (Ord a) => ShowErrorComponent a where -- | Pretty-print a component of 'ParseError'. showErrorComponent :: a -> String @@ -458,20 +458,20 @@ -- Helpers -- | Pretty-print an 'ErrorItem'. -showErrorItem :: VisualStream s => Proxy s -> ErrorItem (Token s) -> String +showErrorItem :: (VisualStream s) => Proxy s -> ErrorItem (Token s) -> String showErrorItem pxy = \case Tokens ts -> showTokens pxy ts Label label -> NE.toList label EndOfInput -> "end of input" -- | Get length of the âpointerâ to display under a given 'ErrorItem'. -errorItemLength :: VisualStream s => Proxy s -> ErrorItem (Token s) -> Int +errorItemLength :: (VisualStream s) => Proxy s -> ErrorItem (Token s) -> Int errorItemLength pxy = \case Tokens ts -> tokensLength pxy ts _ -> 1 -- | Pretty-print an 'ErrorFancy'. -showErrorFancy :: ShowErrorComponent e => ErrorFancy e -> String +showErrorFancy :: (ShowErrorComponent e) => ErrorFancy e -> String showErrorFancy = \case ErrorFail msg -> msg ErrorIndentation ord ref actual -> @@ -489,7 +489,7 @@ ErrorCustom a -> showErrorComponent a -- | Get length of the âpointerâ to display under a given 'ErrorFancy'. -errorFancyLength :: ShowErrorComponent e => ErrorFancy e -> Int +errorFancyLength :: (ShowErrorComponent e) => ErrorFancy e -> Int errorFancyLength = \case ErrorCustom a -> errorComponentLen a _ -> 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Internal.hs new/megaparsec-9.3.1/Text/Megaparsec/Internal.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Internal.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Internal.hs 2001-09-09 03:46:40.000000000 +0200 @@ -87,10 +87,10 @@ -- expecting 'r' or end of input newtype Hints t = Hints (Set (ErrorItem t)) -instance Ord t => Semigroup (Hints t) where +instance (Ord t) => Semigroup (Hints t) where Hints xs <> Hints ys = Hints $ xs <> ys -instance Ord t => Monoid (Hints t) where +instance (Ord t) => Monoid (Hints t) where mempty = Hints mempty -- | All information available after parsing. This includes consumption of @@ -164,18 +164,18 @@ {-# INLINE pMap #-} -- | 'pure' returns a parser that __succeeds__ without consuming input. -instance Stream s => Applicative (ParsecT e s m) where +instance (Stream s) => Applicative (ParsecT e s m) where pure = pPure (<*>) = pAp p1 *> p2 = p1 `pBind` const p2 p1 <* p2 = do x1 <- p1; void p2; return x1 -pPure :: Stream s => a -> ParsecT e s m a +pPure :: (Stream s) => a -> ParsecT e s m a pPure x = ParsecT $ \s _ _ eok _ -> eok x s mempty {-# INLINE pPure #-} pAp :: - Stream s => + (Stream s) => ParsecT e s m (a -> b) -> ParsecT e s m a -> ParsecT e s m b @@ -205,12 +205,12 @@ (<|>) = mplus -- | 'return' returns a parser that __succeeds__ without consuming input. -instance Stream s => Monad (ParsecT e s m) where +instance (Stream s) => Monad (ParsecT e s m) where return = pure (>>=) = pBind pBind :: - Stream s => + (Stream s) => ParsecT e s m a -> (a -> ParsecT e s m b) -> ParsecT e s m b @@ -234,7 +234,7 @@ in unParser m s mcok cerr meok eerr {-# INLINE pBind #-} -instance Stream s => Fail.MonadFail (ParsecT e s m) where +instance (Stream s) => Fail.MonadFail (ParsecT e s m) where fail = pFail pFail :: String -> ParsecT e s m a @@ -332,7 +332,7 @@ Error _ -> error "mfix ParsecT" runParsecT (f a) s -instance Stream s => MonadTrans (ParsecT e s) where +instance (Stream s) => MonadTrans (ParsecT e s) where lift amb = ParsecT $ \s _ _ eok _ -> amb >>= \a -> eok a s mempty @@ -381,13 +381,13 @@ in unParser p s cok eerr' eok eerr' {-# INLINE pTry #-} -pLookAhead :: Stream s => ParsecT e s m a -> ParsecT e s m a +pLookAhead :: (Stream s) => ParsecT e s m a -> ParsecT e s m a pLookAhead p = ParsecT $ \s _ cerr eok eerr -> let eok' a _ _ = eok a s mempty in unParser p s eok' cerr eok' eerr {-# INLINE pLookAhead #-} -pNotFollowedBy :: Stream s => ParsecT e s m a -> ParsecT e s m () +pNotFollowedBy :: (Stream s) => ParsecT e s m a -> ParsecT e s m () pNotFollowedBy p = ParsecT $ \s@(State input o _ _) _ _ eok eerr -> let what = maybe EndOfInput (Tokens . nes . fst) (take1_ input) unexpect u = TrivialError o (pure u) E.empty @@ -399,7 +399,7 @@ {-# INLINE pNotFollowedBy #-} pWithRecovery :: - Stream s => + (Stream s) => (ParseError s e -> ParsecT e s m a) -> ParsecT e s m a -> ParsecT e s m a @@ -420,7 +420,7 @@ {-# INLINE pWithRecovery #-} pObserving :: - Stream s => + (Stream s) => ParsecT e s m a -> ParsecT e s m (Either (ParseError s e) a) pObserving p = ParsecT $ \s cok _ eok _ -> @@ -429,7 +429,7 @@ in unParser p s (cok . Right) cerr' (eok . Right) eerr' {-# INLINE pObserving #-} -pEof :: forall e s m. Stream s => ParsecT e s m () +pEof :: forall e s m. (Stream s) => ParsecT e s m () pEof = ParsecT $ \s@(State input o pst de) _ _ eok eerr -> case take1_ input of Nothing -> eok () s mempty @@ -443,7 +443,7 @@ pToken :: forall e s m a. - Stream s => + (Stream s) => (Token s -> Maybe a) -> Set (ErrorItem (Token s)) -> ParsecT e s m a @@ -465,7 +465,7 @@ pTokens :: forall e s m. - Stream s => + (Stream s) => (Tokens s -> Tokens s -> Bool) -> Tokens s -> ParsecT e s m (Tokens s) @@ -493,7 +493,7 @@ pTakeWhileP :: forall e s m. - Stream s => + (Stream s) => Maybe String -> (Token s -> Bool) -> ParsecT e s m (Tokens s) @@ -512,7 +512,7 @@ pTakeWhile1P :: forall e s m. - Stream s => + (Stream s) => Maybe String -> (Token s -> Bool) -> ParsecT e s m (Tokens s) @@ -540,7 +540,7 @@ pTakeP :: forall e s m. - Stream s => + (Stream s) => Maybe String -> Int -> ParsecT e s m (Tokens s) @@ -562,11 +562,11 @@ else cok ts (State input' (o + len) pst de) mempty {-# INLINE pTakeP #-} -pGetParserState :: Stream s => ParsecT e s m (State s e) +pGetParserState :: (Stream s) => ParsecT e s m (State s e) pGetParserState = ParsecT $ \s _ _ eok _ -> eok s s mempty {-# INLINE pGetParserState #-} -pUpdateParserState :: Stream s => (State s e -> State s e) -> ParsecT e s m () +pUpdateParserState :: (Stream s) => (State s e -> State s e) -> ParsecT e s m () pUpdateParserState f = ParsecT $ \s _ _ eok _ -> eok () (f s) mempty {-# INLINE pUpdateParserState #-} @@ -579,7 +579,7 @@ -- | Convert a 'ParseError' record into 'Hints'. toHints :: - Stream s => + (Stream s) => -- | Current offset in input stream Int -> -- | Parse error to convert @@ -602,7 +602,7 @@ -- __Note__ that if resulting continuation gets 'ParseError' that has custom -- data in it, hints are ignored. withHints :: - Stream s => + (Stream s) => -- | Hints to use Hints (Token s) -> -- | Continuation to influence @@ -621,7 +621,7 @@ -- | @'accHints' hs c@ results in âOKâ continuation that will add given -- hints @hs@ to third argument of original continuation @c@. accHints :: - Stream s => + (Stream s) => -- | 'Hints' to add Hints (Token s) -> -- | An âOKâ continuation to alter @@ -643,7 +643,7 @@ -- | Low-level unpacking of the 'ParsecT' type. runParsecT :: - Monad m => + (Monad m) => -- | Parser to run ParsecT e s m a -> -- | Initial state diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Lexer.hs new/megaparsec-9.3.1/Text/Megaparsec/Lexer.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Lexer.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Lexer.hs 2001-09-09 03:46:40.000000000 +0200 @@ -56,7 +56,7 @@ -- 'space' will just move on or finish depending on whether there is more -- white space for it to consume. space :: - MonadParsec e s m => + (MonadParsec e s m) => -- | A parser for space characters which does not accept empty -- input (e.g. 'Text.Megaparsec.Char.space1') m () -> @@ -78,7 +78,7 @@ -- > lexeme = L.lexeme spaceConsumer -- > integer = lexeme L.decimal lexeme :: - MonadParsec e s m => + (MonadParsec e s m) => -- | How to consume white space after lexeme m () -> -- | How to parse actual lexeme @@ -102,7 +102,7 @@ -- > colon = symbol ":" -- > dot = symbol "." symbol :: - MonadParsec e s m => + (MonadParsec e s m) => -- | How to consume white space after lexeme m () -> -- | Symbol to parse diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/State.hs new/megaparsec-9.3.1/Text/Megaparsec/State.hs --- old/megaparsec-9.3.0/Text/Megaparsec/State.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/State.hs 2001-09-09 03:46:40.000000000 +0200 @@ -92,4 +92,4 @@ } deriving (Show, Eq, Data, Typeable, Generic) -instance NFData s => NFData (PosState s) +instance (NFData s) => NFData (PosState s) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec/Stream.hs new/megaparsec-9.3.1/Text/Megaparsec/Stream.hs --- old/megaparsec-9.3.0/Text/Megaparsec/Stream.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec/Stream.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1,3 +1,4 @@ +{-# LANGUAGE BangPatterns #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE LambdaCase #-} @@ -131,7 +132,7 @@ takeWhile_ :: (Token s -> Bool) -> s -> (Tokens s, s) -- | @since 9.0.0 -instance Ord a => Stream [a] where +instance (Ord a) => Stream [a] where type Token [a] = a type Tokens [a] = [a] tokenToChunk Proxy = pure @@ -148,7 +149,7 @@ takeWhile_ = span -- | @since 9.0.0 -instance Ord a => Stream (S.Seq a) where +instance (Ord a) => Stream (S.Seq a) where type Token (S.Seq a) = a type Tokens (S.Seq a) = S.Seq a tokenToChunk Proxy = pure @@ -408,7 +409,7 @@ -- | Type class for inputs that can also be used for debugging. -- -- @since 9.0.0 -class Stream s => VisualStream s where +class (Stream s) => VisualStream s where -- | Pretty-print non-empty stream of tokens. This function is also used -- to print single tokens (represented as singleton lists). -- @@ -441,7 +442,7 @@ -- | Type class for inputs that can also be used for error reporting. -- -- @since 9.0.0 -class Stream s => TraversableStream s where +class (Stream s) => TraversableStream s where {-# MINIMAL reachOffset | reachOffsetNoLine #-} -- | Given an offset @o@ and initial 'PosState', adjust the state in such @@ -552,7 +553,7 @@ -- stream types. reachOffset' :: forall s. - Stream s => + (Stream s) => -- | How to split input stream at given offset (Int -> s -> (Tokens s, s)) -> -- | How to fold over input stream @@ -630,7 +631,7 @@ -- | Like 'reachOffset'' but for 'reachOffsetNoLine'. reachOffsetNoLine' :: forall s. - Stream s => + (Stream s) => -- | How to split input stream at given offset (Int -> s -> (Tokens s, s)) -> -- | How to fold over input stream @@ -745,10 +746,10 @@ Pos -> String -> String -expandTab w' = go 0 +expandTab w' = go 0 0 where - go 0 [] = [] - go 0 ('\t' : xs) = go w xs - go 0 (x : xs) = x : go 0 xs - go n xs = ' ' : go (n - 1) xs + go _ 0 [] = [] + go !i 0 ('\t' : xs) = go i (w - (i `rem` w)) xs + go !i 0 (x : xs) = x : go (i + 1) 0 xs + go !i n xs = ' ' : go (i + 1) (n - 1) xs w = unPos w' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/Text/Megaparsec.hs new/megaparsec-9.3.1/Text/Megaparsec.hs --- old/megaparsec-9.3.0/Text/Megaparsec.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/Text/Megaparsec.hs 2001-09-09 03:46:40.000000000 +0200 @@ -174,6 +174,8 @@ -- > Right xs -> print (sum xs) -- > -- > numbers = decimal `sepBy` char ',' +-- +-- 'parse' is the same as 'runParser'. parse :: -- | Parser to run Parsec e s a -> @@ -223,6 +225,8 @@ -- 'ParseErrorBundle' ('Left') or a value of type @a@ ('Right'). -- -- > parseFromFile p file = runParser p file <$> readFile file +-- +-- 'runParser' is the same as 'parse'. runParser :: -- | Parser to run Parsec e s a -> @@ -253,7 +257,7 @@ -- underlying monad @m@ that returns either a 'ParseErrorBundle' ('Left') or -- a value of type @a@ ('Right'). runParserT :: - Monad m => + (Monad m) => -- | Parser to run ParsecT e s m a -> -- | Name of source file @@ -269,7 +273,7 @@ -- -- @since 4.2.0 runParserT' :: - Monad m => + (Monad m) => -- | Parser to run ParsecT e s m a -> -- | Initial state @@ -323,7 +327,7 @@ -- -- @since 6.0.0 failure :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Unexpected item (if any) Maybe (ErrorItem (Token s)) -> -- | Expected items @@ -339,7 +343,7 @@ -- -- @since 6.0.0 fancyFailure :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Fancy error components Set (ErrorFancy e) -> m a @@ -352,7 +356,7 @@ -- about unexpected item @item@ without consuming any input. -- -- > unexpected item = failure (Just item) Set.empty -unexpected :: MonadParsec e s m => ErrorItem (Token s) -> m a +unexpected :: (MonadParsec e s m) => ErrorItem (Token s) -> m a unexpected item = failure (Just item) E.empty {-# INLINE unexpected #-} @@ -362,7 +366,7 @@ -- > customFailure = fancyFailure . Set.singleton . ErrorCustom -- -- @since 6.3.0 -customFailure :: MonadParsec e s m => e -> m a +customFailure :: (MonadParsec e s m) => e -> m a customFailure = fancyFailure . E.singleton . ErrorCustom {-# INLINE customFailure #-} @@ -375,7 +379,7 @@ -- -- @since 5.3.0 region :: - MonadParsec e s m => + (MonadParsec e s m) => -- | How to process 'ParseError's (ParseError s e -> ParseError s e) -> -- | The âregionâ that the processing applies to @@ -401,7 +405,7 @@ -- at once. -- -- @since 8.0.0 -registerParseError :: MonadParsec e s m => ParseError s e -> m () +registerParseError :: (MonadParsec e s m) => ParseError s e -> m () registerParseError e = updateParserState $ \s -> s {stateParseErrors = e : stateParseErrors s} {-# INLINE registerParseError #-} @@ -410,7 +414,7 @@ -- -- @since 8.0.0 registerFailure :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Unexpected item (if any) Maybe (ErrorItem (Token s)) -> -- | Expected items @@ -425,7 +429,7 @@ -- -- @since 8.0.0 registerFancyFailure :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Fancy error components Set (ErrorFancy e) -> m () @@ -446,7 +450,7 @@ -- -- @since 7.0.0 single :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Token to match Token s -> m (Token s) @@ -470,7 +474,7 @@ -- -- @since 7.0.0 satisfy :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Predicate to apply (Token s -> Bool) -> m (Token s) @@ -487,7 +491,7 @@ -- See also: 'satisfy', 'anySingleBut'. -- -- @since 7.0.0 -anySingle :: MonadParsec e s m => m (Token s) +anySingle :: (MonadParsec e s m) => m (Token s) anySingle = satisfy (const True) {-# INLINE anySingle #-} @@ -500,7 +504,7 @@ -- -- @since 7.0.0 anySingleBut :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Token we should not match Token s -> m (Token s) @@ -564,7 +568,7 @@ -- -- @since 7.0.0 chunk :: - MonadParsec e s m => + (MonadParsec e s m) => -- | Chunk to match Tokens s -> m (Tokens s) @@ -574,7 +578,7 @@ -- | A synonym for 'label' in the form of an operator. infix 0 <?> -(<?>) :: MonadParsec e s m => m a -> String -> m a +(<?>) :: (MonadParsec e s m) => m a -> String -> m a (<?>) = flip label {-# INLINE (<?>) #-} @@ -584,7 +588,7 @@ -- manually in the argument parser, prepare for troubles. -- -- @since 5.3.0 -match :: MonadParsec e s m => m a -> m (Tokens s, a) +match :: (MonadParsec e s m) => m a -> m (Tokens s, a) match p = do o <- getOffset s <- getInput @@ -604,7 +608,7 @@ -- > takeRest = takeWhileP Nothing (const True) -- -- @since 6.0.0 -takeRest :: MonadParsec e s m => m (Tokens s) +takeRest :: (MonadParsec e s m) => m (Tokens s) takeRest = takeWhileP Nothing (const True) {-# INLINE takeRest #-} @@ -613,7 +617,7 @@ -- > atEnd = option False (True <$ hidden eof) -- -- @since 6.0.0 -atEnd :: MonadParsec e s m => m Bool +atEnd :: (MonadParsec e s m) => m Bool atEnd = option False (True <$ hidden eof) {-# INLINE atEnd #-} @@ -621,12 +625,12 @@ -- Parser state combinators -- | Return the current input. -getInput :: MonadParsec e s m => m s +getInput :: (MonadParsec e s m) => m s getInput = stateInput <$> getParserState {-# INLINE getInput #-} -- | @'setInput' input@ continues parsing with @input@. -setInput :: MonadParsec e s m => s -> m () +setInput :: (MonadParsec e s m) => s -> m () setInput s = updateParserState (\(State _ o pst de) -> State s o pst de) {-# INLINE setInput #-} @@ -652,7 +656,7 @@ -- See also: 'setOffset'. -- -- @since 7.0.0 -getOffset :: MonadParsec e s m => m Int +getOffset :: (MonadParsec e s m) => m Int getOffset = stateOffset <$> getParserState {-# INLINE getOffset #-} @@ -661,7 +665,7 @@ -- See also: 'getOffset'. -- -- @since 7.0.0 -setOffset :: MonadParsec e s m => Int -> m () +setOffset :: (MonadParsec e s m) => Int -> m () setOffset o = updateParserState $ \(State s _ pst de) -> State s o pst de {-# INLINE setOffset #-} @@ -669,6 +673,6 @@ -- | @'setParserState' st@ sets the parser state to @st@. -- -- See also: 'getParserState', 'updateParserState'. -setParserState :: MonadParsec e s m => State s e -> m () +setParserState :: (MonadParsec e s m) => State s e -> m () setParserState st = updateParserState (const st) {-# INLINE setParserState #-} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/bench/memory/Main.hs new/megaparsec-9.3.1/bench/memory/Main.hs --- old/megaparsec-9.3.0/bench/memory/Main.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/bench/memory/Main.hs 2001-09-09 03:46:40.000000000 +0200 @@ -76,7 +76,7 @@ -- | Perform a series of measurements with the same parser. bparser :: - NFData a => + (NFData a) => -- | Name of the benchmark group String -> -- | How to construct input @@ -91,7 +91,7 @@ -- | Perform a series of measurements with the same parser. bparserBs :: - NFData a => + (NFData a) => -- | Name of the benchmark group String -> -- | How to construct input diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/bench/speed/Main.hs new/megaparsec-9.3.1/bench/speed/Main.hs --- old/megaparsec-9.3.0/bench/speed/Main.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/bench/speed/Main.hs 2001-09-09 03:46:40.000000000 +0200 @@ -71,7 +71,7 @@ -- | Perform a series to measurements with the same parser. bparser :: - NFData a => + (NFData a) => -- | Name of the benchmark group String -> -- | How to construct input @@ -87,7 +87,7 @@ -- | Perform a series to measurements with the same parser. bparserBs :: - NFData a => + (NFData a) => -- | Name of the benchmark group String -> -- | How to construct input diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/megaparsec-9.3.0/megaparsec.cabal new/megaparsec-9.3.1/megaparsec.cabal --- old/megaparsec-9.3.0/megaparsec.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/megaparsec-9.3.1/megaparsec.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,6 +1,6 @@ cabal-version: 2.4 name: megaparsec -version: 9.3.0 +version: 9.3.1 license: BSD-2-Clause license-file: LICENSE.md maintainer: Mark Karpov <markkarpo...@gmail.com> @@ -9,7 +9,7 @@ Paolo Martini <pa...@nemail.it>, Daan Leijen <d...@microsoft.com> -tested-with: ghc ==9.0.2 ghc ==9.2.4 ghc ==9.4.1 +tested-with: ghc ==9.0.2 ghc ==9.2.5 ghc ==9.4.4 homepage: https://github.com/mrkkrp/megaparsec bug-reports: https://github.com/mrkkrp/megaparsec/issues synopsis: Monadic parser combinators