Simon Cruanes
0c4e9f30e1
format
format / format (push) Has been cancelled
github pages / deploy (push) Has been cancelled
build / Build (push) Has been cancelled
2026-02-08 07:53:52 -05:00
Simon Cruanes
aec132d37c
Refactor: group PUT and PATCH together with conditional upload
...
Both methods need identical handling (customrequest + upload flag),
so combine them using pattern matching to reduce duplication.
Only set the upload flag when content is provided, matching the
behavior of POST and preventing curl from trying to read when
there's no content to upload.
2026-02-08 12:48:39 +00:00
Christopher Zimmermann
6662364103
PATCH does upload
2026-02-08 02:38:08 -05:00
Simon Cruanes
4f61478bad
prepare for 0.3
format / format (push) Has been cancelled
github pages / deploy (push) Has been cancelled
build / Build (push) Has been cancelled
2026-01-22 21:34:18 -05:00
Simon Cruanes
1d176da7e6
disable the mdx test
2026-01-22 21:34:18 -05:00
Simon Cruanes
ab39f4cbdc
test: use tiny_httpd to not depend on external network
2026-01-21 22:21:39 -05:00
Simon Cruanes
2c756473dd
CI: try to fix gh-pages
2026-01-20 21:10:01 -05:00
Simon Cruanes
e8e6e621bc
update test
2026-01-20 20:53:25 -05:00
Simon Cruanes
69b73e0f69
reformat with 0.27
2026-01-20 20:50:01 -05:00
Simon Cruanes
2b6297c075
CI: check format
2026-01-20 20:49:24 -05:00
Christopher Zimmermann
177bd1e572
Provide seek function when uploading from string
...
build / Build (push) Waiting to run
This prevents
CURLE_SEND_FAIL_REWIND (65)
When doing a send operation curl had to rewind the data to retransmit, but the rewinding operation failed.
on redirections
2026-01-19 22:27:21 -05:00
Simon Cruanes
a0a5b989b7
Update README.md
build / Build (push) Has been cancelled
2025-05-18 01:00:41 -04:00
Antonin Décimo
27b3ca76c8
GHA: ocaml-compiler versions as strings
...
build / Build (push) Has been cancelled
Otherwise, there's a bug where they get interpreted as floats… (it seems the bug doesn't appear here). Using strings is safer in general.
Update from OCaml 4.12 to 4.14.
2025-04-02 15:00:08 -04:00
Simon Cruanes
4b7d9ec769
make CURLOPT_NOSIGNAL=false the default; simplify
build / Build (push) Has been cancelled
2025-01-29 21:55:16 -05:00
Stéphane Lavergne
ebf1e1fc12
Expose underlying no signal in a global setting
2025-01-29 21:46:19 -05:00
Simon Cruanes
742e51df97
chore: CI
2025-01-29 13:00:01 -05:00
Simon Cruanes
0faaf35969
Merge pull request #17 from c-cube/wip-stream-response
...
streaming response
2024-10-03 11:04:57 -04:00
Simon Cruanes
012016f9b4
test: add a test for http_stream
2024-10-03 10:01:37 -04:00
Simon Cruanes
49b265ce56
implement http_stream
2024-10-02 12:46:43 -04:00
Simon Cruanes
fbd71baa19
wip: stream response…
2024-10-02 11:43:49 -04:00
Simon Cruanes
d50a53ebda
chore: CI
2024-10-01 12:18:15 -04:00
Simon Cruanes
e97003644a
refactor: rename files
2024-10-01 12:17:53 -04:00
Simon Cruanes
48d18bd912
fix CI
2024-10-01 12:09:12 -04:00
Simon Cruanes
71a37788ac
feat: add Ezcurl.Cookies module, get/set/transfer them
2024-10-01 12:01:36 -04:00
Simon Cruanes
a8ad44d39e
feat ezcurl: wrap Curl.t in record; add cookie support
2024-10-01 10:59:55 -04:00
Simon Cruanes
5b4b71ee15
chore: update ocamlformat
2024-10-01 10:58:43 -04:00
Simon Cruanes
7c684f1869
chore: autogen opam files from dune
2024-09-04 14:21:02 -04:00
Simon Cruanes
ddf181fe83
prepare for 0.2.4
2023-11-25 00:13:05 -05:00
Simon Cruanes
d259d85eb7
depend on thread
2023-11-25 00:10:54 -05:00
Simon Cruanes
d41eb2ceb4
fix: global initialization logic is now hidden behind a mutex
2023-11-25 00:10:54 -05:00
Stéphane Lavergne
46dc012356
Typo
2023-08-09 11:46:04 -04:00
Simon Cruanes
648ca8f77f
changelog
2023-06-20 22:38:26 -04:00
Simon Cruanes
7939bfa9e3
CI: use setup-ocaml v2 for gh-pages
2023-06-09 23:17:45 -04:00
Simon Cruanes
9e0b84ecfd
makefile
2023-06-09 23:13:18 -04:00
Simon Cruanes
be03f25cc0
ocamlformat
2023-06-09 21:06:20 -04:00
Simon Cruanes
73899acdf2
more doc
2023-06-09 21:04:03 -04:00
Simon Cruanes
c6141c8b3d
prepare for 0.2.3
2023-04-04 09:49:48 -04:00
Simon Cruanes
90ad38de20
CI: disable mac OS 😡
2023-03-16 11:07:29 -04:00
Simon Cruanes
52c35dc2df
Merge pull request #13 from c-cube/fix-12
...
Fix #12 : set size properly for POST
2023-03-13 15:36:42 -04:00
Simon Cruanes
5bb480235a
remove spurious eprintf
2023-03-09 11:10:50 -05:00
Simon Cruanes
849194728a
chore: makefile
2023-02-28 11:07:55 -05:00
Simon Cruanes
9e7d9be5c3
fix: workaround servers which do not understand Expect header
2023-02-28 11:07:20 -05:00
Simon Cruanes
91cfbc94ad
fix: correctly set size of payload for POST
...
close #12
2023-02-28 11:06:39 -05:00
Simon Cruanes
63392ea36b
re-disable CI on windows
2023-02-28 10:49:33 -05:00
zapashcanon
ac24129ed6
run tests on all platforms
2023-02-28 09:45:07 -05:00
zapashcanon
bb69dade38
add a basic test
2023-02-28 09:45:07 -05:00
zapashcanon
2665eda083
enable macOS and windows CI
2023-02-28 09:45:04 -05:00
Simon Cruanes
f70f25d951
make sure to setup PUT correctly
...
follow https://curl.se/libcurl/c/CURLOPT_UPLOAD.html and also set
the method to PUT.
2023-02-07 11:07:39 -05:00
Edwin Török
5ba64ee30a
ezcurl: allow POST with non-form data
...
Currently ezcurl always sets CURLOPT_HTTPPOST, but that means it is not able
to send a custom body that is not a form (e.g. JSON is quite a common use-case
these days).
Add a special case: if the POST params is empty, *and* a 'content' is set, then
just set CURLOPT_POST, but not CURLOPT_HTTPPOST.
Example usage:
```
let contents = Ezjsonm.to_string json in
let config = EZ.Config.(verbose true default) in
match EZ.post ~config ~url ~params:[] ~content:(`String contents) () with
```
Signed-off-by: Edwin Török <edwin.torok@cloud.com>
2023-02-02 12:05:46 -05:00
Simon Cruanes
916f72fb39
prepare for 0.2.2
2023-01-25 13:44:38 -05:00