Skip to content

Commit

Permalink
Bump version to 2025-01-09
Browse files Browse the repository at this point in the history
  • Loading branch information
chrisdone committed Jan 9, 2025
1 parent b206c1a commit cc10780
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 2 deletions.
2 changes: 1 addition & 1 deletion docs/api/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
}

li { line-height: 2em }
</style><head><title>Hell&#39;s API</title></head><body><h1>Hell&#39;s API</h1><p><a href="../">Back to homepage</a></p><h2>Types</h2><ul><li><code><em>data </em><strong>()</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Bool</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>ByteString</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Char</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Double</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Either</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>ExitCode</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>IO</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Int</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Map</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Maybe</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>ProcessConfig</strong><em> :: </em>* -&gt; * -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>STInput</strong><em> :: </em>StreamType</code></li><li><code><em>data </em><strong>STOutput</strong><em> :: </em>StreamType</code></li><li><code><em>data </em><strong>Set</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>StreamType</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Text</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Tree</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Value</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Vector</strong><em> :: </em>* -&gt; *</code></li></ul><h2>Terms</h2><h3>$</h3><ul><li><code><strong>$</strong><em> :: </em>forall a b . (a -&gt; b) -&gt; a -&gt; b</code></li></ul><h3></h3><ul><li><code><strong>.</strong><em> :: </em>forall a b c . (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c</code></li></ul><h3>Async</h3><ul><li><code><strong>Async.concurrently</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (a, b)</code></li><li><code><strong>Async.pooledForConcurrently</strong><em> :: </em>forall a b . [a] -&gt; (a -&gt; IO b) -&gt; IO ([b])</code></li><li><code><strong>Async.pooledForConcurrently_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>Async.pooledMapConcurrently</strong><em> :: </em>forall a b . (a -&gt; IO b) -&gt; [a] -&gt; IO ([b])</code></li><li><code><strong>Async.pooledMapConcurrently_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>Async.race</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (Either a b)</code></li></ul><h3>Bool</h3><ul><li><code><strong>Bool.False</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.True</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.bool</strong><em> :: </em>forall a . a -&gt; a -&gt; Bool -&gt; a</code></li><li><code><strong>Bool.not</strong><em> :: </em>Bool -&gt; Bool</code></li></ul><h3>ByteString</h3><ul><li><code><strong>ByteString.getContents</strong><em> :: </em>IO ByteString</code></li><li><code><strong>ByteString.hGet</strong><em> :: </em>Handle -&gt; Int -&gt; IO ByteString</code></li><li><code><strong>ByteString.hPutStr</strong><em> :: </em>Handle -&gt; ByteString -&gt; IO ()</code></li><li><code><strong>ByteString.interact</strong><em> :: </em>(ByteString -&gt; ByteString) -&gt; IO ()</code></li><li><code><strong>ByteString.readFile</strong><em> :: </em>Text -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ExitCode,ByteString,ByteString)</code></li><li><code><strong>ByteString.readProcessStdout_</strong><em> :: </em>ProcessConfig () () () -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess_</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ByteString,ByteString)</code></li><li><code><strong>ByteString.writeFile</strong><em> :: </em>Text -&gt; ByteString -&gt; IO ()</code></li></ul><h3>Concurrent</h3><ul><li><code><strong>Concurrent.threadDelay</strong><em> :: </em>Int -&gt; IO ()</code></li></ul><h3>Directory</h3><ul><li><code><strong>Directory.copyFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectoryIfMissing</strong><em> :: </em>Bool -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.getCurrentDirectory</strong><em> :: </em>IO Text</code></li><li><code><strong>Directory.listDirectory</strong><em> :: </em>Text -&gt; IO [Text]</code></li><li><code><strong>Directory.removeFile</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.renameFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.setCurrentDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li></ul><h3>Double</h3><ul><li><code><strong>Double.eq</strong><em> :: </em>Double -&gt; Double -&gt; Bool</code></li><li><code><strong>Double.fromInt</strong><em> :: </em>Int -&gt; Double</code></li><li><code><strong>Double.mult</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li><li><code><strong>Double.plus</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li><li><code><strong>Double.show</strong><em> :: </em>Double -&gt; Text</code></li><li><code><strong>Double.subtract</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li></ul><h3>Either</h3><ul><li><code><strong>Either.Left</strong><em> :: </em>forall a b . a -&gt; Either a b</code></li><li><code><strong>Either.Right</strong><em> :: </em>forall a b . b -&gt; Either a b</code></li><li><code><strong>Either.either</strong><em> :: </em>forall a b x . (a -&gt; x) -&gt; (b -&gt; x) -&gt; Either a b -&gt; x</code></li></ul><h3>Environment</h3><ul><li><code><strong>Environment.getArgs</strong><em> :: </em>IO [Text]</code></li><li><code><strong>Environment.getEnv</strong><em> :: </em>Text -&gt; IO Text</code></li><li><code><strong>Environment.getEnvironment</strong><em> :: </em>IO [(Text,Text)]</code></li></ul><h3>Eq</h3><ul><li><code><strong>Eq.eq</strong><em> :: </em>forall a . Eq a =&gt; a -&gt; a -&gt; Bool</code></li></ul><h3>Error</h3><ul><li><code><strong>Error.error</strong><em> :: </em>forall a . Text -&gt; a</code></li></ul><h3>Exit</h3><ul><li><code><strong>Exit.ExitFailure</strong><em> :: </em>Int -&gt; ExitCode</code></li><li><code><strong>Exit.ExitSuccess</strong><em> :: </em>ExitCode</code></li><li><code><strong>Exit.die</strong><em> :: </em>forall a . Text -&gt; IO a</code></li><li><code><strong>Exit.exitCode</strong><em> :: </em>forall a . a -&gt; (Int -&gt; a) -&gt; ExitCode -&gt; a</code></li><li><code><strong>Exit.exitWith</strong><em> :: </em>forall a . ExitCode -&gt; IO a</code></li></ul><h3>Function</h3><ul><li><code><strong>Function.fix</strong><em> :: </em>forall a . (a -&gt; a) -&gt; a</code></li><li><code><strong>Function.id</strong><em> :: </em>forall a . a -&gt; a</code></li></ul><h3>Functor</h3><ul><li><code><strong>Functor.fmap</strong><em> :: </em>forall f a b . Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b</code></li></ul><h3>IO</h3><ul><li><code><strong>IO.BlockBuffering</strong><em> :: </em>Maybe Int -&gt; BufferMode</code></li><li><code><strong>IO.LineBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.NoBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.forM_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>IO.hSetBuffering</strong><em> :: </em>Handle -&gt; BufferMode -&gt; IO ()</code></li><li><code><strong>IO.mapM_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>IO.print</strong><em> :: </em>forall a . Show a =&gt; a -&gt; IO ()</code></li><li><code><strong>IO.pure</strong><em> :: </em>forall a . a -&gt; IO a</code></li><li><code><strong>IO.stderr</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdin</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdout</strong><em> :: </em>Handle</code></li></ul><h3>Int</h3><ul><li><code><strong>Int.eq</strong><em> :: </em>Int -&gt; Int -&gt; Bool</code></li><li><code><strong>Int.mult</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li><li><code><strong>Int.plus</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li><li><code><strong>Int.show</strong><em> :: </em>Int -&gt; Text</code></li><li><code><strong>Int.subtract</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li></ul><h3>Json</h3><ul><li><code><strong>Json.Array</strong><em> :: </em>Vector Value -&gt; Value</code></li><li><code><strong>Json.Bool</strong><em> :: </em>Bool -&gt; Value</code></li><li><code><strong>Json.Null</strong><em> :: </em>Value</code></li><li><code><strong>Json.Number</strong><em> :: </em>Double -&gt; Value</code></li><li><code><strong>Json.Object</strong><em> :: </em>Map Text Value -&gt; Value</code></li><li><code><strong>Json.String</strong><em> :: </em>Text -&gt; Value</code></li><li><code><strong>Json.decode</strong><em> :: </em>ByteString -&gt; Maybe Value</code></li><li><code><strong>Json.encode</strong><em> :: </em>Value -&gt; ByteString</code></li><li><code><strong>Json.value</strong><em> :: </em>forall a .
</style><head><title>Hell&#39;s API</title></head><body><h1>Hell&#39;s API</h1><h2>Version: 2025-01-09</h2><p><a href="../">Back to homepage</a></p><h2>Types</h2><ul><li><code><em>data </em><strong>()</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Bool</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>ByteString</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Char</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Double</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Either</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>ExitCode</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>IO</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Int</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Map</strong><em> :: </em>* -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>Maybe</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>ProcessConfig</strong><em> :: </em>* -&gt; * -&gt; * -&gt; *</code></li><li><code><em>data </em><strong>STInput</strong><em> :: </em>StreamType</code></li><li><code><em>data </em><strong>STOutput</strong><em> :: </em>StreamType</code></li><li><code><em>data </em><strong>Set</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>StreamType</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Text</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Tree</strong><em> :: </em>* -&gt; *</code></li><li><code><em>data </em><strong>Value</strong><em> :: </em>*</code></li><li><code><em>data </em><strong>Vector</strong><em> :: </em>* -&gt; *</code></li></ul><h2>Terms</h2><h3>$</h3><ul><li><code><strong>$</strong><em> :: </em>forall a b . (a -&gt; b) -&gt; a -&gt; b</code></li></ul><h3></h3><ul><li><code><strong>.</strong><em> :: </em>forall a b c . (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c</code></li></ul><h3>Async</h3><ul><li><code><strong>Async.concurrently</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (a, b)</code></li><li><code><strong>Async.pooledForConcurrently</strong><em> :: </em>forall a b . [a] -&gt; (a -&gt; IO b) -&gt; IO ([b])</code></li><li><code><strong>Async.pooledForConcurrently_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>Async.pooledMapConcurrently</strong><em> :: </em>forall a b . (a -&gt; IO b) -&gt; [a] -&gt; IO ([b])</code></li><li><code><strong>Async.pooledMapConcurrently_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>Async.race</strong><em> :: </em>forall a b . IO a -&gt; IO b -&gt; IO (Either a b)</code></li></ul><h3>Bool</h3><ul><li><code><strong>Bool.False</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.True</strong><em> :: </em>Bool</code></li><li><code><strong>Bool.bool</strong><em> :: </em>forall a . a -&gt; a -&gt; Bool -&gt; a</code></li><li><code><strong>Bool.not</strong><em> :: </em>Bool -&gt; Bool</code></li></ul><h3>ByteString</h3><ul><li><code><strong>ByteString.getContents</strong><em> :: </em>IO ByteString</code></li><li><code><strong>ByteString.hGet</strong><em> :: </em>Handle -&gt; Int -&gt; IO ByteString</code></li><li><code><strong>ByteString.hPutStr</strong><em> :: </em>Handle -&gt; ByteString -&gt; IO ()</code></li><li><code><strong>ByteString.interact</strong><em> :: </em>(ByteString -&gt; ByteString) -&gt; IO ()</code></li><li><code><strong>ByteString.readFile</strong><em> :: </em>Text -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ExitCode,ByteString,ByteString)</code></li><li><code><strong>ByteString.readProcessStdout_</strong><em> :: </em>ProcessConfig () () () -&gt; IO ByteString</code></li><li><code><strong>ByteString.readProcess_</strong><em> :: </em>ProcessConfig () () () -&gt; IO (ByteString,ByteString)</code></li><li><code><strong>ByteString.writeFile</strong><em> :: </em>Text -&gt; ByteString -&gt; IO ()</code></li></ul><h3>Concurrent</h3><ul><li><code><strong>Concurrent.threadDelay</strong><em> :: </em>Int -&gt; IO ()</code></li></ul><h3>Directory</h3><ul><li><code><strong>Directory.copyFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.createDirectoryIfMissing</strong><em> :: </em>Bool -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.getCurrentDirectory</strong><em> :: </em>IO Text</code></li><li><code><strong>Directory.listDirectory</strong><em> :: </em>Text -&gt; IO [Text]</code></li><li><code><strong>Directory.removeFile</strong><em> :: </em>Text -&gt; IO ()</code></li><li><code><strong>Directory.renameFile</strong><em> :: </em>Text -&gt; Text -&gt; IO ()</code></li><li><code><strong>Directory.setCurrentDirectory</strong><em> :: </em>Text -&gt; IO ()</code></li></ul><h3>Double</h3><ul><li><code><strong>Double.eq</strong><em> :: </em>Double -&gt; Double -&gt; Bool</code></li><li><code><strong>Double.fromInt</strong><em> :: </em>Int -&gt; Double</code></li><li><code><strong>Double.mult</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li><li><code><strong>Double.plus</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li><li><code><strong>Double.show</strong><em> :: </em>Double -&gt; Text</code></li><li><code><strong>Double.subtract</strong><em> :: </em>Double -&gt; Double -&gt; Double</code></li></ul><h3>Either</h3><ul><li><code><strong>Either.Left</strong><em> :: </em>forall a b . a -&gt; Either a b</code></li><li><code><strong>Either.Right</strong><em> :: </em>forall a b . b -&gt; Either a b</code></li><li><code><strong>Either.either</strong><em> :: </em>forall a b x . (a -&gt; x) -&gt; (b -&gt; x) -&gt; Either a b -&gt; x</code></li></ul><h3>Environment</h3><ul><li><code><strong>Environment.getArgs</strong><em> :: </em>IO [Text]</code></li><li><code><strong>Environment.getEnv</strong><em> :: </em>Text -&gt; IO Text</code></li><li><code><strong>Environment.getEnvironment</strong><em> :: </em>IO [(Text,Text)]</code></li></ul><h3>Eq</h3><ul><li><code><strong>Eq.eq</strong><em> :: </em>forall a . Eq a =&gt; a -&gt; a -&gt; Bool</code></li></ul><h3>Error</h3><ul><li><code><strong>Error.error</strong><em> :: </em>forall a . Text -&gt; a</code></li></ul><h3>Exit</h3><ul><li><code><strong>Exit.ExitFailure</strong><em> :: </em>Int -&gt; ExitCode</code></li><li><code><strong>Exit.ExitSuccess</strong><em> :: </em>ExitCode</code></li><li><code><strong>Exit.die</strong><em> :: </em>forall a . Text -&gt; IO a</code></li><li><code><strong>Exit.exitCode</strong><em> :: </em>forall a . a -&gt; (Int -&gt; a) -&gt; ExitCode -&gt; a</code></li><li><code><strong>Exit.exitWith</strong><em> :: </em>forall a . ExitCode -&gt; IO a</code></li></ul><h3>Function</h3><ul><li><code><strong>Function.fix</strong><em> :: </em>forall a . (a -&gt; a) -&gt; a</code></li><li><code><strong>Function.id</strong><em> :: </em>forall a . a -&gt; a</code></li></ul><h3>Functor</h3><ul><li><code><strong>Functor.fmap</strong><em> :: </em>forall f a b . Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b</code></li></ul><h3>IO</h3><ul><li><code><strong>IO.BlockBuffering</strong><em> :: </em>Maybe Int -&gt; BufferMode</code></li><li><code><strong>IO.LineBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.NoBuffering</strong><em> :: </em>BufferMode</code></li><li><code><strong>IO.forM_</strong><em> :: </em>forall a . [a] -&gt; (a -&gt; IO ()) -&gt; IO ()</code></li><li><code><strong>IO.hSetBuffering</strong><em> :: </em>Handle -&gt; BufferMode -&gt; IO ()</code></li><li><code><strong>IO.mapM_</strong><em> :: </em>forall a . (a -&gt; IO ()) -&gt; [a] -&gt; IO ()</code></li><li><code><strong>IO.print</strong><em> :: </em>forall a . Show a =&gt; a -&gt; IO ()</code></li><li><code><strong>IO.pure</strong><em> :: </em>forall a . a -&gt; IO a</code></li><li><code><strong>IO.stderr</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdin</strong><em> :: </em>Handle</code></li><li><code><strong>IO.stdout</strong><em> :: </em>Handle</code></li></ul><h3>Int</h3><ul><li><code><strong>Int.eq</strong><em> :: </em>Int -&gt; Int -&gt; Bool</code></li><li><code><strong>Int.mult</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li><li><code><strong>Int.plus</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li><li><code><strong>Int.show</strong><em> :: </em>Int -&gt; Text</code></li><li><code><strong>Int.subtract</strong><em> :: </em>Int -&gt; Int -&gt; Int</code></li></ul><h3>Json</h3><ul><li><code><strong>Json.Array</strong><em> :: </em>Vector Value -&gt; Value</code></li><li><code><strong>Json.Bool</strong><em> :: </em>Bool -&gt; Value</code></li><li><code><strong>Json.Null</strong><em> :: </em>Value</code></li><li><code><strong>Json.Number</strong><em> :: </em>Double -&gt; Value</code></li><li><code><strong>Json.Object</strong><em> :: </em>Map Text Value -&gt; Value</code></li><li><code><strong>Json.String</strong><em> :: </em>Text -&gt; Value</code></li><li><code><strong>Json.decode</strong><em> :: </em>ByteString -&gt; Maybe Value</code></li><li><code><strong>Json.encode</strong><em> :: </em>Value -&gt; ByteString</code></li><li><code><strong>Json.value</strong><em> :: </em>forall a .
a -&gt;
(Bool -&gt; a) -&gt;
(Text -&gt; a) -&gt;
Expand Down
7 changes: 6 additions & 1 deletion src/Hell.hs
Original file line number Diff line number Diff line change
Expand Up @@ -141,9 +141,13 @@ commandParser =
Version <$ Options.flag () () (Options.long "version" <> Options.help "Print the version")
]

-- | Version of Hell.
hellVersion :: Text
hellVersion = "2025-01-09"

-- | Dispatch on the command.
dispatch :: Command -> IO ()
dispatch Version = putStrLn "2024-12-04"
dispatch Version = Text.putStrLn hellVersion
dispatch (Run filePath) = do
action <- compileFile filePath
eval () action
Expand Down Expand Up @@ -2246,6 +2250,7 @@ _generateApiDocs = do
title_ "Hell's API"
body_ do
h1_ "Hell's API"
h2_ $ do "Version: "; toHtml hellVersion
p_ $ a_ [href_ "../"] $ "Back to homepage"
h2_ "Types"
let excludeHidden = filter (not . List.isPrefixOf "hell:Hell." . fst)
Expand Down

0 comments on commit cc10780

Please sign in to comment.