packages feed

regex-examples 0.13.0.0 → 0.14.0.0

raw patch · 10 files changed

+315/−203 lines, 10 filesdep ~regexdep ~regex-with-pcre

Dependency ranges changed: regex, regex-with-pcre

Files

README.markdown view
@@ -74,9 +74,11 @@      ☒  2017-03-31  v0.12.0.0 [Move IsRegex into Text.RE](https://github.com/iconnect/regex/milestone/16) -    ☒  2017-04-02  v0.13.0.0 [Protect findCaptureID and add Find, re-sort-imports, tutorials](https://github.com/iconnect/regex/milestone/17)+    ☒  2017-04-03  v0.13.0.0 [Protect findCaptureID and add Find, re-sort-imports](https://github.com/iconnect/regex/milestone/17) -    ☐  2017-04-03  v1.0.0.0  [First stable release](https://github.com/iconnect/regex/milestone/3)+    ☒  2017-04-04  v0.14.0.0 [Move IsOption, rename Find functions](https://github.com/iconnect/regex/milestone/18)++    ☐  2017-04-10  v1.0.0.0  [First stable release](https://github.com/iconnect/regex/milestone/3)      ☐  2017-08-31  v2.0.0.0  [Fast text replacement with benchmarks](https://github.com/iconnect/regex/milestone/4) 
changelog view
@@ -1,5 +1,13 @@ -*-change-log-*- +0.14.0.0 Chris Dornan <chris.dornan@irisconnect.co.uk> 2017-04-05+  * Move IsOption into the back ends (#115)+  * Rename Find functions (#116)+  * re-gen-cabals: 'sdist' to prepare final commit message (#117)+  * re-prep: 'blog-badge' to update the blog badge (#118)+  * re-prep: include_code_pp for all .lhs files (#119)+  * re-gen-cabals: do 'gen' after 'bump-version' (#120)+ 0.13.0.0 Chris Dornan <chris.dornan@irisconnect.co.uk> 2017-04-03   * Add a Find Tool (#106)   * TestBench to export Text.RE (#107)
examples/TestKit.lhs view
@@ -263,7 +263,7 @@      (hdr,bdy) = span (not . anyMatches . getLineMatches) lns     lns       = grepFilter rex lbs-    rex        = [re|^import +(qualified)? +${mod}([^ ].*)$|]+    rex       = [re|^import +(qualified)? +${mod}([^ ].*)$|] \end{code}  
examples/re-gen-cabals.lhs view
@@ -39,7 +39,7 @@ import           Text.Printf import           Text.RE.Replace import           Text.RE.TDFA.ByteString.Lazy-import           Text.RE.TDFA.Text                        as T+import qualified Text.RE.TDFA.Text                        as T import           Text.RE.Tools.Grep import           Text.RE.Tools.Sed @@ -50,15 +50,11 @@   case as of     []                    -> test     ["test"]              -> test-    ["bump-version",vrn]  -> bumpVersion vrn+    ["bump-version",vrn]  -> bumpVersion vrn >> gen     ["test-release",vrn]  -> test_release $ T.pack vrn+    ["commit-message"]    -> commit_message     ["sdist"]             -> sdist-    ["gen"]               -> do-      gen  "lib/cabal-masters/mega-regex.cabal"       "lib/mega-regex.cabal"-      gen  "lib/cabal-masters/regex.cabal"            "lib/regex.cabal"-      gen  "lib/cabal-masters/regex-with-pcre.cabal"  "lib/regex-with-pcre.cabal"-      gen  "lib/cabal-masters/regex-examples.cabal"   "lib/regex-examples.cabal"-      establish "mega-regex" "regex"+    ["gen"]               -> gen     _                     -> do       let prg = (("  "++pn++" ")++)       hPutStr stderr $ unlines@@ -67,6 +63,7 @@         , prg "[test]"         , prg "bump-version <version>"         , prg "test-release <version>"+        , prg "commit-message"         , prg "sdist"         , prg "gen"         ]@@ -75,14 +72,22 @@ test :: IO () test = do   createDirectoryIfMissing False "tmp"-  gen "lib/cabal-masters/mega-regex.cabal" "tmp/mega-regex.cabal"+  gen1 "lib/cabal-masters/mega-regex.cabal" "tmp/mega-regex.cabal"   ok <- cmp "tmp/mega-regex.cabal" "lib/mega-regex.cabal"   case ok of     True  -> return ()     False -> exitWith $ ExitFailure 1 -gen :: FilePath -> FilePath -> IO ()-gen in_f out_f = do+gen :: IO ()+gen = do+  gen1  "lib/cabal-masters/mega-regex.cabal"       "lib/mega-regex.cabal"+  gen1  "lib/cabal-masters/regex.cabal"            "lib/regex.cabal"+  gen1  "lib/cabal-masters/regex-with-pcre.cabal"  "lib/regex-with-pcre.cabal"+  gen1  "lib/cabal-masters/regex-examples.cabal"   "lib/regex-examples.cabal"+  establish "mega-regex" "regex"++gen1 :: FilePath -> FilePath -> IO ()+gen1 in_f out_f = do     ctx <- setup     LBS.writeFile out_f =<<       sed' (gc_script ctx) =<< substVersion_ =<< include =<<@@ -291,16 +296,19 @@ \begin{code} sdist :: IO () sdist = do+  createDirectoryIfMissing False "tmp"   sdist'    "regex"            "lib/README-regex.md"   sdist'    "regex-with-pcre"  "lib/README-regex.md"   sdist'    "regex-examples"   "lib/README-regex-examples.md"   establish "mega-regex" "regex"-  vrn_t <- T.pack . presentVrn <$> readCurrentVersion+  vrn <- readCurrentVersion+  let vrn_t = T.pack $ presentVrn vrn   test_release vrn_t-  smy_t <- summary+  smy_t <- summary vrn+  commit_message_ "tmp/commit.txt" vrn smy_t   SH.shelly $ SH.verbosely $ do     SH.run_ "git" ["add","--all"]-    SH.run_ "git" ["commit","-m",vrn_t<>": "<>smy_t]+    SH.run_ "git" ["commit","-F","tmp/commit.txt"]     SH.run_ "git" ["tag",vrn_t,"-m",smy_t]  sdist' :: T.Text -> SH.FilePath -> IO ()@@ -328,24 +336,6 @@     sf = "lib/"<>nm<>".cabal"     df = nm'<>".cabal" -summary :: IO T.Text-summary = do-  vrn <- SH.liftIO readCurrentVersion-  let vrn_res = concat-        [ show $ _vrn_a vrn-        , "\\."-        , show $ _vrn_b vrn-        , "\\."-        , show $ _vrn_c vrn-        , "\\."-        , show $ _vrn_d vrn-        ]-  rex <- compileRegex $ "- \\[[xX]\\] +@{%date} +v"++vrn_res++" +\\[?${smy}([^]]+)"-  lns <- linesMatched LinesMatched <$> grepLines rex "lib/md/roadmap-incl.md"-  case lns of-    [Line _ (Matches _ [mtch])] -> return $ TE.decodeUtf8 $ LBS.toStrict $ mtch !$$ [cp|smy|]-    _ -> error "failed to locate the summary text in the roadmap"- test_release :: T.Text -> IO () test_release vrn_t = do     setCurrentDirectory "releases"@@ -368,4 +358,63 @@ \end{code}  -let vrn_res = concat [ show $ _vrn_a vrn, "\\.", show $ _vrn_b vrn, "\\.", show $ _vrn_c vrn, "\\.", show $ _vrn_d vrn ]+Building the Release Commit Message from the Changelog+------------------------------------------------------++\begin{code}+commit_message :: IO ()+commit_message = do+  createDirectoryIfMissing False "tmp"+  vrn   <- readCurrentVersion+  smy_t <- summary vrn+  commit_message_ "tmp/commit.txt" vrn smy_t+  LBS.readFile "tmp/commit.txt" >>= LBS.putStrLn++commit_message_ :: FilePath -> Vrn -> T.Text -> IO ()+commit_message_ fp vrn@Vrn{..} smy_t = do+    rex <- escape ("^"++) vrn_s+    parse_commit smy_ln <$> grepLines rex "changelog" >>= LBS.writeFile fp+  where+    smy_ln = vrn_s ++ ": " ++ T.unpack smy_t+    vrn_s  = presentVrn vrn++parse_commit :: String -> [Line LBS.ByteString] -> LBS.ByteString+parse_commit hdr lns0 = case lns0 of+    _:_:ln:lns | anyMatches $ getLineMatches ln+      -> LBS.unlines $ LBS.pack hdr : map fixes (takeWhile is_bullet lns)+    _ -> error oops+  where+    is_bullet Line{..} =+        LBS.take 4 (matchesSource getLineMatches) == "  * "++    fixes Line{..} =+        matchesSource getLineMatches *=~/ [ed|#${n}([0-9]+)///fixes #${n}|]++    oops = unlines+      [ "failed to parse changelog"+      , "(expected line 3 to start with the current version)"+      ]+\end{code}+++Extracting the summary from the Roadmap+---------------------------------------++\begin{code}+summary :: Vrn -> IO T.Text+summary vrn = do+  let vrn_res = concat+        [ show $ _vrn_a vrn+        , "\\."+        , show $ _vrn_b vrn+        , "\\."+        , show $ _vrn_c vrn+        , "\\."+        , show $ _vrn_d vrn+        ]+  rex <- compileRegex $ "- \\[[xX]\\] +@{%date} +v"++vrn_res++" +\\[?${smy}([^]]+)"+  lns <- linesMatched LinesMatched <$> grepLines rex "lib/md/roadmap-incl.md"+  case lns of+    [Line _ (Matches _ [mtch])] -> return $ TE.decodeUtf8 $ LBS.toStrict $ mtch !$$ [cp|smy|]+    _ -> error "failed to locate the summary text in the roadmap"+\end{code}
examples/re-prep.lhs view
@@ -23,8 +23,10 @@   ) where  import           Control.Applicative+import qualified Data.ByteString.Char8                    as B import qualified Data.ByteString.Lazy.Char8               as LBS import           Data.IORef+import qualified Data.List                                as L import           Data.Maybe import           Data.Monoid import qualified Data.Text                                as T@@ -56,15 +58,15 @@     ["doc",fn,fn'] | is_file fn -> doc fn fn'     ["gen",fn,fn'] | is_file fn -> gen fn fn'     ["badges"]                  -> badges-    ["bump-version",vrn]        -> bumpVersion vrn+    ["blog-badge"]              -> blog_badge     ["pages"]                   -> pages     ["all"]                     -> gen_all     _                           -> usage   where     is_file = not . (== "--") . take 2 -    doc fn fn' =                    prep_tut Doc fn fn'-    gen fn fn' = genMode >>= \gm -> prep_tut gm  fn fn'+    doc fn fn' =                    prepare_tutorial Doc fn fn'+    gen fn fn' = genMode >>= \gm -> prepare_tutorial gm  fn fn'      usage = do       pnm <- getProgName@@ -74,7 +76,6 @@         , prg "--help"         , prg "[test]"         , prg "badges"-        , prg "bump-version <version>"         , prg "pages"         , prg "all"         , prg "doc (-|<in-file>) (-|<out-file>)"@@ -83,83 +84,6 @@ \end{code}  -The Sed Script-----------------\begin{code}--- | the MODE determines whether we are generating documentation--- or a Haskell testsuite and includes any IO-accessible state--- needed by the relevant processor-data MODE-  = Doc           -- ^ generating mardown+lhs input for pandoc-  | Gen GenState  -- ^ adjusting-the-program-for-testing state-\end{code}--The `DocState` is initialised to `Outside` and flips though the different-states as it traverses a code block, so that we can wrap code-blocks in special `<div class="replcodeblock">` blocks when their-first line indicates that it contains a REPL calculation, which the-style sheet can pick up and present accordingly.--\begin{code}--- | the state is the accumulated test function identifiers for--- generating the list of them gets added to the end of the programme-type GenState = IORef [String]--genMode :: IO MODE-genMode = Gen <$> newIORef []-\end{code}---\begin{code}-prep_tut :: MODE -> FilePath -> FilePath -> IO ()-prep_tut mode =-  sed $ Select-    [ Function [re|^%include ${file}(@{%string}) ${rex}(@{%string})$|] TOP $ inclde   mode-    , LineEdit [re|^%main ${arg}(top|bottom)$|]                            $ main_    mode-    , Function [re|^${fn}(evalme@{%id}) = checkThis ${arg}(@{%string}) \(${ans}([^)]+)\) \$ *${exp}(.*)$|]-                                                                       TOP $ evalme   mode-    , Function [re|^.*$|]                                              TOP $ passthru-    ]-\end{code}--\begin{code}-inclde,-  evalme :: MODE-         -> LineNo-         -> Match LBS.ByteString-         -> RELocation-         -> Capture LBS.ByteString-         -> IO (Maybe LBS.ByteString)--main_ :: MODE-      -> LineNo-      -> Matches LBS.ByteString-      -> IO (LineEdit LBS.ByteString)--inclde  Doc     = includeDoc-inclde (Gen _ ) = passthru--main_   Doc     = delete-main_  (Gen gs) = mainGen    gs--evalme  Doc     = evalmeDoc-evalme (Gen gs) = evalmeGen  gs--passthru :: LineNo-         -> Match LBS.ByteString-         -> RELocation-         -> Capture LBS.ByteString-         -> IO (Maybe LBS.ByteString)-passthru _ _ _ _ = return Nothing--delete :: LineNo-       -> Matches LBS.ByteString-       -> IO (LineEdit LBS.ByteString)-delete _ _ = return Delete-\end{code}-- Script to Generate the Whole Web Site ------------------------------------- @@ -172,6 +96,7 @@     pd "re-include"     pd "re-nginx-log-processor"     pd "re-prep"+    pd "re-sort-imports"     pd "re-tests"     pd "TestKit"     pd "RE/REOptions"@@ -200,21 +125,21 @@         (Just fdr,Just mnm) -> pandoc_lhs ("Text.RE."++fdr++"."++mnm) ("Text/"    ++fnm++".lhs") ("docs/"++mnm++".html")         _                   -> pandoc_lhs ("examples/"++fnm++".lhs" ) ("examples/"++fnm++".lhs") ("docs/"++fnm++".html")       where-        mtch = fnm TS.?=~ [re|^RE/(${fdr}(Internal|PCRE|TDFA|Testbench|Tools|Types)/)?${mnm}(@{%id})|]+        mtch = fnm TS.?=~ [re|^RE/(${fdr}([a-zA-Z/]+)/)?${mnm}(@{%id})|] \end{code}   \begin{code} gen_tutorial :: String -> IO () gen_tutorial nm = do-    prep_tut Doc ("examples" </> mst) ("tmp" </> tgt)+    prepare_tutorial Doc ("examples" </> mst) ("tmp" </> tgt)     pandoc_lhs'       tgt       ("examples" </> tgt)       ("tmp"      </> tgt)       ("docs"     </> htm)     -- generate the tutorial-based tests     gm <- genMode-    prep_tut gm ("examples" </> mst) ("examples" </> tgt)+    prepare_tutorial gm ("examples" </> mst) ("examples" </> tgt)     putStrLn $ ">> " ++ ("examples" </> tgt)   where     tgt = "re-" ++ nm ++ ".lhs"@@ -223,25 +148,80 @@ \end{code}  -Generating the Tutorial------------------------+The Tutorial Preprocessor+-------------------------  \begin{code}-includeDoc :: LineNo-           -> Match LBS.ByteString-           -> RELocation-           -> Capture LBS.ByteString-           -> IO (Maybe LBS.ByteString)-includeDoc _ mtch _ _ = fmap Just $-    extract fp =<< compileRegex re_s+-- | the MODE determines whether we are generating documentation+-- or a Haskell testsuite and includes any IO-accessible state+-- needed by the relevant processor+data MODE+  = Doc           -- ^ generating mardown+lhs input for pandoc+  | Gen GenState  -- ^ adjusting-the-program-for-testing state+\end{code}++The `DocState` is initialised to `Outside` and flips though the different+states as it traverses a code block, so that we can wrap code+blocks in special `<div class="replcodeblock">` blocks when their+first line indicates that it contains a REPL calculation, which the+style sheet can pick up and present accordingly.++\begin{code}+-- | the state is the accumulated test function identifiers for+-- generating the list of them gets added to the end of the programme+type GenState = IORef [String]++genMode :: IO MODE+genMode = Gen <$> newIORef []+\end{code}++\begin{code}+prepare_tutorial :: MODE -> FilePath -> FilePath -> IO ()+prepare_tutorial mode fp_in fp_out =+  LBS.readFile fp_in >>= prep_tutorial_pp mode >>= incld >>=+    LBS.writeFile fp_out   where-    fp    = prs_s $ captureText [cp|file|] mtch-    re_s  = prs_s $ captureText [cp|rex|]  mtch+    incld = case mode of+      Doc   -> include_code_pp+      Gen _ -> return+\end{code} -    prs_s = maybe (error "includeDoc") T.unpack . parseString+\begin{code}+prep_tutorial_pp :: MODE -> LBS.ByteString -> IO LBS.ByteString+prep_tutorial_pp mode =+  sed' $ Select+    [ LineEdit [re|^%main ${arg}(top|bottom)$|]                            $ main_    mode+    , Function [re|^${fn}(evalme@{%id}) = checkThis ${arg}(@{%string}) \(${ans}([^)]+)\) \$ *${exp}(.*)$|]+                                                                       TOP $ evalme   mode+    , Function [re|^.*$|]                                              TOP $ passthru+    ] \end{code}  \begin{code}+evalme :: MODE+         -> LineNo+         -> Match LBS.ByteString+         -> RELocation+         -> Capture LBS.ByteString+         -> IO (Maybe LBS.ByteString)+evalme  Doc     = evalmeDoc+evalme (Gen gs) = evalmeGen  gs++main_ :: MODE+      -> LineNo+      -> Matches LBS.ByteString+      -> IO (LineEdit LBS.ByteString)+main_   Doc     = delete+main_  (Gen gs) = mainGen    gs+++delete :: LineNo+       -> Matches LBS.ByteString+       -> IO (LineEdit LBS.ByteString)+delete _ _ = return Delete+\end{code}++\begin{code} evalmeDoc :: LineNo           -> Match LBS.ByteString           -> RELocation@@ -253,10 +233,6 @@   ] \end{code} --Generating the Tests---------------------- \begin{code} evalmeGen :: GenState           -> LineNo@@ -328,6 +304,47 @@ \end{code}  +include_code_pp+---------------++\begin{code}+include_code_pp :: LBS.ByteString -> IO LBS.ByteString+include_code_pp =+  sed' $ Select+    [ Function [re|^%include ${file}(@{%string}) ${rex}(@{%string})$|] TOP  inc_code+    , Function [re|^.*$|]                                              TOP  passthru+    ]+\end{code}++\begin{code}+inc_code :: LineNo+         -> Match LBS.ByteString+         -> RELocation+         -> Capture LBS.ByteString+         -> IO (Maybe LBS.ByteString)+inc_code _ mtch _ _ = fmap Just $+    extract fp =<< compileRegex re_s+  where+    fp    = prs_s $ captureText [cp|file|] mtch+    re_s  = prs_s $ captureText [cp|rex|]  mtch++    prs_s = maybe (error "include_code") T.unpack . parseString+\end{code}+++passthru action+---------------++\begin{code}+passthru :: LineNo+         -> Match LBS.ByteString+         -> RELocation+         -> Capture LBS.ByteString+         -> IO (Maybe LBS.ByteString)+passthru _ _ _ _ = return Nothing+\end{code}++ Extracting a Literate Fragment from a Haskell Program Text ---------------------------------------------------------- @@ -409,6 +426,30 @@ \end{code}  +blog_badge+----------++\begin{code}+blog_badge :: IO ()+blog_badge = do+  dts <- L.sortBy (flip compare) . map (take 10) <$>+            getDirectoryContents "../regex-blog/posts"+  case dts of+    []   -> error "No posts found!"+    dt:_ -> case matched $ dt_lbs ?=~ date_re of+        False -> error $ "Post date format not recognised: " ++ dt+        True  -> do+          putStrLn $ "Latest blog is: " ++ dt+          lbs <- lbsReadFile badges_file+          LBS.writeFile badges_file $ replaceAll dt_lbs $ lbs *=~ date_re+      where+        dt_lbs      = LBS.pack dt+  where+    date_re     = [re|[0-9]{4}-[0-9]{2}-[0-9]{2}|]+    badges_file = "docs/badges/blog.svg"+\end{code}++ pages ----- @@ -448,7 +489,8 @@ page_docs_file   pg = "docs/"   ++ page_root pg ++ ".html"  page_address :: Page -> LBS.ByteString-page_address = LBS.pack . page_root+page_address PG_reblog = "blog"+page_address pg        = LBS.pack $ page_root pg  page_title :: Page -> LBS.ByteString page_title pg = case pg of@@ -722,6 +764,7 @@  pandoc_lhs' :: String -> String -> String -> String -> IO () pandoc_lhs' title repo_path in_file out_file = do+  lbsReadFile in_file >>= include_code_pp >>= LBS.writeFile int_file   LBS.writeFile "tmp/metadata.markdown"  $                     LBS.unlines                       [ "---"@@ -744,7 +787,7 @@         , "-c", "lib/bs.css"         , "-o", T.pack out_file         , "tmp/metadata.markdown"-        , T.pack in_file+        , T.pack int_file         ]   where     bc = LBS.unlines@@ -769,6 +812,8 @@       [ "https://github.com/iconnect/regex/blob/master/"       , LBS.pack repo_path       ]++    int_file = "tmp/pandoc-int.lhs" \end{code}  @@ -827,8 +872,14 @@ \begin{code} test :: IO () test = do-  test_pp "re-prep doc" (prep_tut Doc) "data/pp-test.lhs" "data/pp-result-doc.lhs"+  test_pp "re-prep doc" (prepare_tutorial Doc) "data/pp-test.lhs" "data/pp-result-doc.lhs"   gm <- genMode-  test_pp "re-prep gen" (prep_tut gm ) "data/pp-test.lhs" "data/pp-result-gen.lhs"+  test_pp "re-prep gen" (prepare_tutorial gm ) "data/pp-test.lhs" "data/pp-result-gen.lhs"   putStrLn "tests passed"+\end{code}+++\begin{code}+lbsReadFile :: FilePath -> IO LBS.ByteString+lbsReadFile fp = LBS.fromStrict <$> B.readFile fp \end{code}
examples/re-sort-imports.lhs view
@@ -75,7 +75,7 @@  \begin{code} sort_r :: Mode -> FilePath -> IO ()-sort_r md root = findMatches fm [re|\.l?hs|] root >>= sort_these md root+sort_r md root = findMatches_ fm [re|\.l?hs|] root >>= sort_these md root   where     fm = FindMethods       { doesDirectoryExistDM = doesDirectoryExist@@ -128,3 +128,5 @@  The function for sorting a Haskell script, `sortImports` has been placed in `TestKit` so that it can be shared with re-gen-modules`.++%include "examples/TestKit.lhs" "sortImports ::"
examples/re-tests.lhs view
@@ -688,7 +688,7 @@ find_tests :: TestTree find_tests = testGroup "Find Tests"     [ testCase "examples/" $ do-        fps <- findMatches findMethods [re|^re-.*\.lhs|] "examples/"+        fps <- findMatches_ findMethods [re|^re-.*\.lhs|] "examples/"         example_paths @=? filter (not . matched . (?=~ [re|master\.lhs|])) fps     ] @@ -841,8 +841,8 @@     tdfa_re   = fromMaybe oops $ TDFA.compileRegexWithOptions tdfa_opts ".*"     pcre_re   = fromMaybe oops $ PCRE.compileRegexWithOptions pcre_opts ".*" -    tdfa_opts = makeREOptions no_macs_t :: REOptions_ TDFA.RE TDFA_.CompOption TDFA_.ExecOption-    pcre_opts = makeREOptions no_macs_p :: REOptions_ PCRE.RE PCRE_.CompOption PCRE_.ExecOption+    tdfa_opts = TDFA.makeREOptions no_macs_t :: REOptions_ TDFA.RE TDFA_.CompOption TDFA_.ExecOption+    pcre_opts = PCRE.makeREOptions no_macs_p :: REOptions_ PCRE.RE PCRE_.CompOption PCRE_.ExecOption      no_macs_t = HM.fromList [] :: Macros TDFA.RE     no_macs_p = HM.fromList [] :: Macros PCRE.RE
lib/mega-regex.cabal view
@@ -1,5 +1,5 @@ Name:                   regex-Version:                0.13.0.0+Version:                0.14.0.0 Synopsis:               Toolkit for regex-base Description:            A regular expression toolkit for regex-base with                         compile-time checking of RE syntax, data types for@@ -63,7 +63,7 @@ Source-Repository this     Type:               git     Location:           https://github.com/iconnect/regex.git-    Tag:                0.13.0.0+    Tag:                0.14.0.0   @@ -196,7 +196,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -226,7 +226,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -256,7 +256,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -285,7 +285,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -314,7 +314,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -340,7 +340,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -366,7 +366,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -400,7 +400,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -434,7 +434,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -463,7 +463,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -492,7 +492,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -519,7 +519,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -546,7 +546,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -586,7 +586,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -627,7 +627,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -671,7 +671,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -717,7 +717,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -761,7 +761,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -805,7 +805,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -849,7 +849,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -893,7 +893,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -937,7 +937,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -981,7 +981,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -1025,7 +1025,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -1070,7 +1070,7 @@       -Werror      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0
lib/version.txt view
@@ -1,1 +1,1 @@-0.13.0.0+0.14.0.0
regex-examples.cabal view
@@ -1,5 +1,5 @@ Name:                   regex-examples-Version:                0.13.0.0+Version:                0.14.0.0 Synopsis:               Tutorial, tests and example programs for regex Description:            Tutorial, tests and example programs for regex,                         a Regular Expression Toolkit for regex-base with@@ -63,7 +63,7 @@ Source-Repository this     Type:               git     Location:           https://github.com/iconnect/regex.git-    Tag:                0.13.0.0+    Tag:                0.14.0.0   Executable re-gen-cabals@@ -82,7 +82,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -112,7 +112,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -142,7 +142,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -171,7 +171,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -200,7 +200,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -226,7 +226,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -252,8 +252,8 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0-      , regex-with-pcre      == 0.13.0.0+        regex                == 0.14.0.0+      , regex-with-pcre      == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -287,8 +287,8 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0-      , regex-with-pcre      == 0.13.0.0+        regex                == 0.14.0.0+      , regex-with-pcre      == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -322,7 +322,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -351,7 +351,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -380,7 +380,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -407,7 +407,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , base                 >= 4 && < 5       , base-compat          >= 0.6.0       , bytestring           >= 0.10.2.0@@ -434,8 +434,8 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0-      , regex-with-pcre      == 0.13.0.0+        regex                == 0.14.0.0+      , regex-with-pcre      == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -475,8 +475,8 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0-      , regex-with-pcre      == 0.13.0.0+        regex                == 0.14.0.0+      , regex-with-pcre      == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -517,7 +517,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -561,7 +561,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -607,7 +607,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -651,7 +651,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -695,7 +695,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -739,7 +739,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -783,7 +783,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -827,7 +827,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -871,7 +871,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -915,7 +915,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0@@ -960,7 +960,7 @@       -Wwarn      Build-depends:-        regex                == 0.13.0.0+        regex                == 0.14.0.0       , array                >= 0.4       , base                 >= 4 && < 5       , base-compat          >= 0.6.0