Simon Cruanes
105722f6b6
wip
2022-02-16 10:20:51 -05:00
Simon Cruanes
3a7019c7cb
prepare for 0.11
2022-01-01 00:17:18 -05:00
Simon Cruanes
4aaa61f622
add ?get_time_s param to create
2021-12-31 20:43:20 -05:00
Simon Cruanes
ce4b5f0a11
some small code improvements
2021-12-20 09:49:44 -05:00
craff
6dceabdd6c
Revert "use bigstring and map_file"
...
This reverts commit 3067120539 .
2021-12-19 00:54:17 -10:00
craff
3067120539
use bigstring and map_file
2021-12-19 00:29:56 -10:00
craff
613c9ae7c3
Add a module to server static files
2021-12-17 18:55:06 -10:00
Simon Cruanes
b684835901
store http version in request, and close connections when needed
...
cases include:
- http 1.0 and no "connection: keep-alive"
- http 1.1 and "connection: close"
2021-12-16 23:19:48 -05:00
Simon Cruanes
accdb1e0ac
Update src/Tiny_httpd.mli
2021-12-16 00:26:18 -05:00
Simon Cruanes
7b14cbd6a7
rename time into start_time
2021-12-16 00:26:07 -05:00
craff
4770e3e729
Timing start of request
2021-12-15 18:14:17 -10:00
Simon Cruanes
5827328993
feat: add ?middlewares param to create
2021-12-12 17:06:46 -05:00
Simon Cruanes
9e26576740
breaking: more getter/setters for request/response, change signature
...
some setters now take request last, to favor composition with |>
2021-12-12 17:06:46 -05:00
Simon Cruanes
ba31534551
feat: pass buf_size in many places, set default buf_size to 16kb
2021-12-12 17:06:46 -05:00
Simon Cruanes
8655200bd7
deprecate, add todos
2021-12-12 17:06:45 -05:00
Simon Cruanes
6b0000eb6e
feat: add a notion of Middleware
...
this subsumes and deprecates the encoding/decoding callbacks.
2021-12-12 17:06:43 -05:00
Simon Cruanes
2d2ffc722a
remove deprecated path handlers based on scanf
2021-12-12 17:01:51 -05:00
craff
10b64c2a16
put back active_connections
2021-12-11 23:50:06 -10:00
craff
b539b4f9ba
timout using socket options
2021-12-11 23:48:27 -10:00
Simon Cruanes
89344f46f0
feat(server-sent): add a close() function
2021-12-11 10:01:55 -05:00
Simon Cruanes
dc72dad5db
revert: remove timeout handling for now
...
This reverts commit 6536bfeeb3 .
2021-12-11 09:32:55 -05:00
Simon Cruanes
f316e66c15
switch from "available" to "active" connections
2021-12-11 09:10:29 -05:00
craff
97eeaf96dc
make accessible to the end user the number of available connections
2021-12-08 17:54:08 -10:00
Christophe Raffalli
024a774f39
Update src/Tiny_httpd.mli
...
Co-authored-by: Simon Cruanes <simon.cruanes.2007@m4x.org>
2021-12-08 16:25:07 -10:00
craff
4c7d27dadd
Added a max_keep_alive and moved to a non blocking reading of request not to loose connection slot.
...
Default is max_keep_alive = -1.0 which keeps the original behaviour.
2021-12-08 11:46:01 -10:00
Simon Cruanes
a58372b9a7
add a @since
2021-09-25 15:35:57 -04:00
Yawar Amin
ce61ac2afd
feat: allow socket activation
...
This enables passing in an existing socket e.g. from systemd,[1] instead
of creating a new socket when running the server.
[1] https://github.com/juergenhoetzel/ocaml-systemd
2021-09-25 01:41:32 -04:00
Simon Cruanes
9961bd1b29
prepare for 0.9
2021-07-18 00:07:43 -04:00
Simon Cruanes
95d9bd10ef
fix: do not set content-length for server-sent events
2021-07-17 22:09:45 -04:00
Simon Cruanes
62d583553e
allow extra headers in server-sent events
2021-07-17 22:09:45 -04:00
Simon Cruanes
17d8f37c93
feat: remove async for now, finish server sent events
2021-07-17 22:09:45 -04:00
Simon Cruanes
2e0f08366f
wip: feat: server-sent events, and asynchronous handlers
2021-07-16 01:12:39 -04:00
Simon Cruanes
91e9323671
doc
2021-07-15 23:47:31 -04:00
Simon Cruanes
70f1205880
doc: fix examples
2020-12-08 00:26:08 -05:00
Simon Cruanes
e267838d23
fix doc
2020-11-17 14:32:45 -05:00
Simon Cruanes
a35b063d41
prepare for 0.7
2020-11-17 10:45:13 -05:00
Simon Cruanes
2a955bcbb4
feat: add rest_of_path_urlencoded and rename rest to rest_of_path
2020-11-17 10:43:05 -05:00
Simon Cruanes
2ed9131bdc
feat: add Route.rest to match the rest of the path
2020-11-17 09:16:28 -05:00
Simon Cruanes
aa66e172e8
feat: printing routes
2020-08-04 19:16:15 -04:00
Simon Cruanes
a679ddf1d1
style
2020-08-03 21:40:42 -04:00
Simon Cruanes
13dca59afd
fix doc
2020-05-28 21:23:10 -04:00
Simon Cruanes
3ac5510e2d
prepare for 0.6
2020-05-28 21:20:09 -04:00
Simon Cruanes
b640c0da30
feat: add Route.t construct, deprecate scanf, add more structured path
...
- Request now contains a path split into components
- Request now contains the query part already transformed into an assoc list
- Route.t uses a simple GADT for mapping `/`-split paths into routes,
passing some components of type string or int to the handler
- deprecate scanf-based routing, as being too error prone
2020-05-27 19:56:23 -04:00
Simon Cruanes
1d309abca6
prepare for 0.5
2020-03-25 23:26:03 -04:00
Simon Cruanes
2435e33df4
feat: expose Headers.empty
2020-03-25 23:23:06 -04:00
Simon Cruanes
59829264a5
wip: zlib bridge library
2020-03-25 23:23:06 -04:00
Simon Cruanes
995aee8489
prepare for 0.4
2020-02-08 09:38:50 -06:00
Simon Cruanes
130608d924
feat: easy accessor to the query parameters in path
2019-12-09 14:28:57 -06:00
Simon Cruanes
948b5e6389
test: add a unit test for parsing http req
2019-12-03 17:32:12 -06:00
Simon Cruanes
21e0c18069
prepare for 0.3
2019-12-02 21:19:19 -06:00