Commit Graph

978 Commits

Author SHA1 Message Date
hurl-bot
7aaf70ddac
Update crates 2023-08-29 03:02:38 +00:00
Philipp Paulweber
66d0daf4a2
Formatter: fixed missing delayy option kind 2023-08-27 16:15:37 +02:00
Philipp Paulweber
902652421d
Runner: provided request delay logic 2023-08-27 16:15:37 +02:00
Philipp Paulweber
bcaf19f842
Parser: support 'delay' options to define milliseconds request delays 2023-08-27 16:15:37 +02:00
apparentorder
7e476a44ae
Update crates (again) 2023-08-26 07:24:57 +02:00
apparentorder
12f8bcd5ea
Update crates (again) 2023-08-25 21:27:06 +02:00
apparentorder
e5a6a3a0ae
Update crates 2023-08-25 07:52:33 +02:00
apparentorder
1b7ae46360
fix formatting 2023-08-24 15:24:45 +02:00
apparentorder
78a45f1f33
when setting aws_sigv4, explicitly check for and report "unknown option" from libcurl 2023-08-24 15:18:54 +02:00
apparentorder
c1063f8d19
introduce HttpError::LibcurlUnknownOption to report unsupported libcurl options 2023-08-24 15:18:53 +02:00
apparentorder
56d4fa4485
Add the aws-sigv4 option to generate AWS SigV4 signed requests
AWS SigV4 support is available in curl since 7.75.0 (December 2020).

Add the necessary bits for Hurl to understand this option and pass
it on to libcurl, both as a command line option `--aws-sigv4` and
as a per-request option `aws-sigv4` in Hurlfiles.

Do not emit `Authorization: Basic` when aws-sigv4 is used, as this
would take priority over the `Authorization` header generated by libcurl.
Instead, explicitly set `username` and `password` options.

Suppress removal of the `Expect:` header when using aws-sigv4, as a
workaround for curl/curl#11664.

Add a corresponding integration test.
2023-08-24 15:18:53 +02:00
apparentorder
58c4e0534f
allow alphanumeric instead of alphabetic in option() parsing
This change allows option names to contain digits, like in `aws-sigv4`.
2023-08-24 15:18:53 +02:00
hurl-bot
591e129469
Update crates 2023-08-18 12:21:50 +00:00
hurl-bot
cff89d91e2
Update crates 2023-08-17 11:44:38 +00:00
Fabrice Reix
cae200a77c
Support IPv4/IPv6 address for proxy option 2023-08-12 18:01:43 +02:00
Fabrice Reix
97ceb24e8b
Replace fail-at-end option with continue-on-error option 2023-08-12 08:20:17 +02:00
Fabrice Reix
4b83f77fa9
Fix standalone option for hurlfmt HTML output 2023-08-11 14:25:50 +02:00
jcamiel
17ae56d6db
Tweak http mod visibility. 2023-08-10 15:24:37 +02:00
jcamiel
a454a81cdd
Replace unwrap with ?.
We have implement conversion from curl::Error to hurl::HttpError so it's better to use `?` instead of unwrapping. It allow a better error managment, without crashing Hurl.
The format of the file has been changed but there is no code modification appart from `unwrap` to `?`.
2023-08-10 06:23:32 +00:00
Fabrice Reix
73759aa84b
Add clippy check manual_string_new 2023-08-08 15:59:20 +00:00
hurl-bot
b17f79af36
Update crates 2023-08-08 03:01:40 +00:00
hurl-bot
67351c9925
Update crates 2023-08-07 03:02:03 +00:00
hurl-bot
ab112204e7
Update crates 2023-08-06 03:01:53 +00:00
Fabrice Reix
bd2c886f25
Support empty BasicAuth section 2023-08-05 09:35:19 +02:00
jcamiel
54ba8dee22
Update tutorial with Movies Box. 2023-08-04 16:59:14 +02:00
hurl-bot
88e748b787
Update crates 2023-08-04 03:01:36 +00:00
jcamiel
bdd4ff7b14
Remove strict features flag (in favor of clippy check). 2023-08-03 18:21:33 +02:00
jcamiel
4072ea2c8a
Remove unnecessary empty structs. 2023-08-03 14:08:08 +02:00
hurl-bot
3a0795b4bc
Update crates 2023-08-03 03:01:44 +00:00
hurl-bot
f7d28c98e2
Update crates 2023-08-02 03:01:47 +00:00
hurl-bot
7aa3d0ed55
Update crates 2023-08-01 03:01:44 +00:00
Fabrice Reix
06c8da4d14
Fix Cookie Query Parsing error 2023-07-31 17:17:56 +02:00
hurl-bot
b2f9e35db8
Update crates 2023-07-31 03:01:50 +00:00
hurl-bot
953fe8b352
Update crates 2023-07-29 03:01:37 +00:00
hurl-bot
3a0fad3c40
Update crates 2023-07-28 03:01:42 +00:00
jcamiel
975fd95810
Delete countEquals predicate. 2023-07-27 14:37:33 +02:00
hurl-bot
128134fe3b
Update crates 2023-07-27 03:01:41 +00:00
jcamiel
8a47c81b1a
Add more tests on assert errors. 2023-07-26 04:54:20 +00:00
hurl-bot
e5de0807e0
Update crates 2023-07-26 03:01:48 +00:00
jcamiel
05567f65ff
Fix typo. 2023-07-25 15:37:03 +02:00
jcamiel
967f8b9e3e
Fix isEmpty predicates for objects. 2023-07-25 14:03:49 +02:00
jcamiel
5f6879e779
Refacto on function eval_predicate_func by splitting into multiple functions. 2023-07-25 11:33:42 +02:00
hurl-bot
4b821f6c7b
Update crates 2023-07-25 03:01:50 +00:00
jcamiel
73ba56c735
Add non-default vendored-openssl feature flag. 2023-07-23 19:46:50 +00:00
hurl-bot
71f72f9c11
Update crates 2023-07-22 03:01:40 +00:00
jcamiel
30d241c1dd
Cosmetic update to the documentation. 2023-07-21 16:25:32 +02:00
hurl-bot
4e21b6e19e
Update crates 2023-07-21 13:47:31 +00:00
hurl-bot
4b02276c13
Update crates 2023-07-20 03:01:44 +00:00
hurl-bot
d65d4ee77c
Update crates 2023-07-19 03:34:36 +00:00
jcamiel
9898864416
Update Rust 1.71. 2023-07-18 10:36:49 +02:00
hurl-bot
4be43b3de8
Update crates 2023-07-18 03:09:48 +00:00
hurl-bot
43526ef4e1
Update crates 2023-07-17 17:23:34 +00:00
hurl-bot
ee6d01b150
Update crates 2023-07-17 09:46:23 +00:00
jcamiel
7a6da599c5
Support RFC-7807 application/problem+json for response body logging as text. 2023-07-16 12:18:32 +02:00
hurl-bot
9823bd48d8
Update crates 2023-07-16 03:16:15 +00:00
jcamiel
7076961308
Add connect-to per request option. 2023-07-15 13:38:35 +00:00
hurl-bot
8530b65782
Update crates 2023-07-15 03:14:38 +00:00
jcamiel
0efaacc12d
Refacto on request options. 2023-07-13 06:15:50 +00:00
Fabrice Reix
f74cd405ef
Add TAP report 2023-07-12 12:28:52 +00:00
hurl-bot
f4da02e146
Update crates 2023-07-12 03:10:06 +00:00
Guilherme Puida
e782ac286b
Implement isDate predicate
This mirrors the implementation of `isFloat/isInteger/...`.
2023-07-11 13:31:58 +02:00
jcamiel
80b220aca6
Update README 2023-07-11 13:07:43 +02:00
jcamiel
45bb522794
Make minor codes modification for method computing and add unit tests. 2023-07-11 10:59:49 +02:00
Matthias Seiffert
d32d492387
Reuse same http method on redirect if possible 2023-07-11 10:59:49 +02:00
hurl-bot
35f4b00932
Update crates 2023-07-10 03:13:30 +00:00
hurl-bot
74899c77b0
Update crates 2023-07-09 03:14:33 +00:00
hurl-bot
2d92541148
Update crates 2023-07-08 03:13:10 +00:00
hurl-bot
7282aca196
Update crates 2023-07-07 03:11:47 +00:00
jcamiel
1463c02d05
Add support for --resolve option per request 2023-07-06 17:21:37 +02:00
jcamiel
4f6a00170a
Fix URL runtime evaluation. 2023-07-06 13:04:17 +02:00
jcamiel
264c6f290b
Make URLs strictier: must begins with http://, https:// or {{. 2023-07-05 18:28:32 +00:00
hurl-bot
73fadd1190
Update crates 2023-07-05 16:09:57 +00:00
jcamiel
9775ec5ce6
Use is_terminal from stdlib instead of atty. 2023-07-05 13:14:47 +00:00
hurl-bot
a57d585da0
Update crates 2023-07-05 12:47:56 +00:00
hurl-bot
817c7ace38
Update crates 2023-07-05 03:12:08 +00:00
hurl-bot
483113f771
Update crates 2023-07-03 18:42:43 +00:00
hurl-bot
7793c769bc
Update crates 2023-07-03 14:32:57 +00:00
hurl-bot
07009a3d54
Update crates 2023-06-30 03:06:31 +00:00
jcamiel
0f1a9f80fb
Update to 4.1.0-SNAPSHOT. 2023-06-29 16:05:31 +02:00
hurl-bot
3cad4e38b4
Create 4.0.0 release 2023-06-28 18:37:30 +00:00
jcamiel
957306bbaa
Update docs for 4.0.0 2023-06-28 15:19:55 +00:00
hurl-bot
f53b65e61b
Update crates 2023-06-28 14:18:57 +00:00
hurl-bot
02e75dd001
Update crates 2023-06-28 03:11:20 +00:00
Fabrice Reix
fd8cac04d6
Export [Options] to JSON 2023-06-24 11:34:57 +00:00
hurl-bot
0e1705b4f0
Update crates 2023-06-24 13:07:21 +02:00
jcamiel
9f81b10d38
Fix HTML report for retried requests. 2023-06-22 15:33:38 +02:00
Tim Eggert
fa47a03ef3
fix: fix clippy issue 2023-06-22 10:02:07 +02:00
Tim Eggert
34137c0e0d
feat: introduce curl --path-as-is option 2023-06-22 10:02:06 +02:00
hurl-bot
bda730221c
Update crates 2023-06-21 03:01:59 +00:00
Fabrice Reix
4b84f0893c
Update section order for hurlfmt 2023-06-19 12:21:09 +02:00
Fabrice Reix
7587fdb013
Deprecate word predicate when operator is available 2023-06-18 20:09:21 +02:00
Fabrice Reix
cb0ce3051a
Make hurlfmt support several input files (like Hurl) 2023-06-18 14:43:36 +00:00
Fabrice Reix
c407a51324
Add xpath filter 2023-06-17 07:11:54 +00:00
jcamiel
18115d6427
Use CURLOPT_COPYPOSTFIELDS instead of CURLOPT_READFUNCTION/CURLOPT_READDATA.
We give the whole body once, instead of providing it by reading data with callback.
There seems to be no performance cost (in both ways, the data is memcpy), but the timings looks much better: we can see all request having "transfer" timing. Before this, requests that have body suspicioulsy have no realistic data transfer...
2023-06-17 00:39:25 +02:00
jcamiel
86ec412980
Fix crash when no timings (no SSL on http for instance) 2023-06-17 00:12:55 +02:00
jcamiel
7d0167e9d7
Add integration test for --report-html 2023-06-17 00:12:04 +02:00
jcamiel
b49c6eb6af
Fix extra request headers logs with large body. 2023-06-16 19:14:55 +02:00
jcamiel
577fee1bfe
Use --data-binary for curl command when posting file. 2023-06-16 17:33:47 +02:00
hurl-bot
8f7686c74b
Update crates 2023-06-16 11:41:01 +00:00
jcamiel
93e7daa7b9
Add timings info to very verbose mode. 2023-06-15 22:16:01 +00:00
Fabrice Reix
d97c26309b
Add proxy in Options section 2023-06-15 21:49:39 +00:00
hurl-bot
1f0f68fa0e
Update crates 2023-06-15 20:33:36 +00:00
jcamiel
1d8f45f4b9
Fix typo in JSON export (pre_transfert vs pre_transfer, start_transfert vs start_transfer). 2023-06-15 13:00:20 +00:00
Fabrice Reix
0c1da19c03
Make regex query/filter consistent with each other 2023-06-15 12:26:37 +02:00
jcamiel
3ae6faf7c9
Improve CSS timeline. 2023-06-15 09:04:05 +00:00
Fabrice Reix
bdd43c7ae4
Print error message when no file is found with --glob option 2023-06-15 10:19:34 +02:00
jcamiel
b1e1ccd084
Improve waterfall. 2023-06-14 16:22:09 +00:00
hurl-bot
f98b49d903
Update crates 2023-06-14 15:54:18 +00:00
Fabrice Reix
05813d472c
Make filters return an optional value 2023-06-14 15:11:20 +02:00
Fabrice Reix
9e6e000d2b
Improve error message 2023-06-14 09:16:14 +02:00
hurl-bot
749f202258
Update crates 2023-06-13 17:30:48 +00:00
Fabrice Reix
1c0c22d2f8
Add decode filter 2023-06-10 09:30:43 +00:00
hurl-bot
7301a25ef1
Update crates 2023-06-10 03:04:00 +00:00
Fabrice Reix
0709227099
Support arbitrary HTTP methods 2023-06-09 07:56:35 +02:00
Fabrice Reix
62243800e6
Delete Rust integ Test for libcurl/HTTP module
These tests should be covered in the .hurl integ tests.
2023-06-08 09:03:57 +00:00
hurl-bot
764eb52c8d
Update crates 2023-06-08 08:36:17 +00:00
jcamiel
927c6d69c4
Add waterfall to HTML report for a Hurl file. 2023-06-07 14:51:12 +02:00
jcamiel
3d78ba796b
Add HurlResult export to svg. 2023-06-06 21:54:34 +02:00
Fabrice Reix
7b20289446
Make curl import retry more explicit 2023-06-06 16:56:59 +02:00
hurl-bot
0e1dfc9c53
Update crates 2023-06-06 03:09:35 +00:00
hurl-bot
1215da6610
Update crates 2023-06-05 15:13:49 +00:00
Fabrice Reix
9a08e77904
Import --retry option from curl 2023-06-04 07:16:00 +00:00
hurl-bot
db60fb812b
Update crates 2023-06-04 03:15:15 +00:00
Fabrice Reix
595f654872
Fix clippy warnings 2023-06-02 07:07:41 +02:00
Fabrice Reix
78d4954164
Update Rust to 1.70.0 2023-06-02 07:06:45 +02:00
jcamiel
0ec43dd877
Rebuild Cargo.lock from scratch. 2023-06-01 18:30:13 +02:00
Fabrice Reix
56bb2042b8
Remove whitespace after comma 2023-06-01 17:27:00 +02:00
Fabrice Reix
c97cfb7cde
Fix Lint for GraphQL 2023-06-01 17:27:00 +02:00
Fabrice Reix
a3b6947eb7
Fix --in-place option for hurlfmt 2023-06-01 17:27:00 +02:00
Fabrice Reix
a149635409
Add Retry Type 2023-06-01 17:26:26 +02:00
Fabrice Reix
b5277b3349
Update --retry option to match curl option 2023-06-01 17:26:26 +02:00
jcamiel
b65bdf59cc
Upgrade Hurl version to 4.0.0 due to runner::run API change. 2023-06-01 17:26:15 +02:00
jcamiel
daeb37b286
Create LoggerOptions to configure a logger in runner::run method. 2023-06-01 17:26:15 +02:00
jcamiel
e476038440
Take error_format option into account. 2023-06-01 17:22:06 +02:00
jcamiel
0d152e31b1
Add new option error-format to enable HTTP request/response output when there are errors. 2023-06-01 17:22:06 +02:00
jcamiel
b624003679
Fix very-verbose taken into account only if verbose is true. 2023-06-01 17:22:06 +02:00
Fabrice Reix
0f759e6226
Support additional dot in jsonpath expression 2023-06-01 17:20:15 +02:00
jcamiel
a4fb260c0c
Make Call, Certificate, Cookie, Header, Request, Response, Timings, Version public. 2023-06-01 17:18:04 +02:00
Fabrice Reix
c6a3011a76
Fix output of hurlfmt for version/help 2023-06-01 17:17:53 +02:00
Fabrice Reix
62d85054d2
Refacto cli options 2023-06-01 17:17:35 +02:00
jcamiel
a2d91cc197
Add unit text for eval_html / encoding. 2023-06-01 17:17:21 +02:00
Fabrice Reix
5b911602d5
Update doc for jsonpath module 2023-06-01 17:16:08 +02:00
Fabrice Reix
fc9e8a97f6
Split jsonpath eval module into query/selector 2023-06-01 17:16:07 +02:00
Fabrice Reix
479e9e97cd
Split jsonpath index selector (unique/multiple index)
- specify one index to return one element
- specify two or more index to return a collection of elements
2023-06-01 17:16:07 +02:00
Fabrice Reix
1cf4476b8f
Change API in jsonpath / remove single-entry coercion 2023-06-01 17:16:07 +02:00
jcamiel
14aaa31372
Add quotes around certificate attribute in HTML export. 2023-06-01 17:15:15 +02:00
hurl-bot
6bf183845a
Update hurl version to 3.1.0-SNAPSHOT 2023-06-01 17:15:08 +02:00
hurl-bot
3d48b12900
Create 3.0.1 release 2023-06-01 14:35:26 +00:00
Fabrice Reix
34b97aa51a
Update version to 3.0.1 2023-06-01 15:59:52 +02:00
Fabrice Reix
e2442dafb8
Fix hurlfmt less predicate 2023-06-01 15:10:20 +02:00
jcamiel
d60160fc1e
Patch encoding issue with xpath and libxml 2.11.1+ 2023-06-01 15:10:20 +02:00
Fabrice Reix
b2ea23c0aa
Update test integ
normalize subject/issuer value in the test itself
2023-06-01 15:10:19 +02:00
Fabrice Reix
50e57fbfd5
Do not try to parse key/value in certificate subject/issuer any more 2023-06-01 13:32:33 +02:00
Fabrice Reix
67e1871a96
Update to version 3.0.1 2023-06-01 11:57:56 +02:00
hurl-bot
277393700b
Create 3.0.0 release 2023-05-03 13:32:58 +00:00
Fabrice Reix
f62fba6ab3
Update help/man for hurlfmt 2023-05-03 13:34:40 +02:00
jcamiel
13d3f9a6b7
Update docs with certificate. 2023-05-03 11:56:20 +02:00
hurl-bot
8978b4d773
Update crates 2023-05-03 03:02:29 +00:00
hurl-bot
8c49e7d84c
Update crates 2023-04-30 03:02:47 +00:00
jcamiel
7887248dca
Clean functions docs. 2023-04-28 11:14:14 +02:00
hurl-bot
6379aa788f
Update crates 2023-04-28 03:02:14 +00:00
jcamiel
749ba0eca2
Add timing info for libcurl < 7.61 (using second function timings). 2023-04-26 13:50:41 +02:00
jcamiel
e4a373266b
Add test unit on JUnit report. 2023-04-25 17:20:50 +02:00
Fabrice Reix
b90dbf4925
Add curl input to hurlfmt 2023-04-24 13:28:41 +02:00
Fabrice Reix
a68fa6f6ca
Refacto passing reference rather than owned value 2023-04-24 08:54:59 +02:00
Fabrice Reix
35ec0903a4
Add escaping in $'...' 2023-04-22 14:09:13 +02:00
joesantos418
f29899c033
Add test attributes to junit XML 2023-04-22 07:33:41 +00:00
jcamiel
cd62371fd1
Update to Rust 1.69. 2023-04-21 16:51:13 +02:00
Fabrice Reix
3e37931a49
Parse more curl options 2023-04-21 14:33:15 +00:00
hurl-bot
d9fd713ab5
Update crates 2023-04-21 12:52:33 +00:00
jcamiel
6f9faa5bb6
Add --cookie-jar integration test. 2023-04-21 13:14:11 +02:00
Fabrice Reix
31d4783366
Add module curl to parse curl command-line 2023-04-21 11:31:00 +02:00
hurl-bot
d88f79c468
Update crates 2023-04-21 03:02:21 +00:00
jcamiel
54b7d3766d
Add JUnit integration test. 2023-04-20 15:01:52 +02:00
hurl-bot
c473d698a3
Update crates 2023-04-19 17:08:56 +00:00
hurl-bot
606aae8235
Update crates 2023-04-19 03:02:12 +00:00
Fabrice Reix
dfcbad29a3
Add options --in and --out in hurlfmt
--out replaces the previous --format option

Currently --in can only take 'hurl' format,
but it will include other formats such as curl or har in the future.
2023-04-18 08:34:44 +02:00
jcamiel
7d12f1890c
Fix multiline export when used as predicate value. 2023-04-17 14:13:50 +02:00
jcamiel
0b761c49ad
Remove uncessay span around : and =. 2023-04-17 13:05:34 +02:00
jcamiel
330dd3d111
Rework Hurl HTML export. 2023-04-17 10:54:21 +02:00
Filipe PINTO
d7df56da44
Add exit code 0 in manual 2023-04-16 13:15:20 +00:00
jcamiel
bd2a7f4e9a
Documents Reader and use idiomatic naming for methods. 2023-04-16 14:32:46 +02:00
jcamiel
28292ef114
Fix performance issue in Reader reamaining method. 2023-04-15 10:07:10 +02:00
hurl-bot
2e2eb08e82
Update crates 2023-04-13 16:40:34 +00:00
Fabrice Reix
798d87979c
Parse empty JSON array 2023-04-13 12:44:46 +00:00
hurl-bot
a818624ab5
Update crates 2023-04-13 03:01:56 +00:00
jcamiel
7dab729cdf
Add errors in HTML report. 2023-04-11 17:02:43 +02:00
hurl-bot
82c3b88de5
Update crates 2023-04-11 12:18:18 +00:00
Filipe PINTO
453a99071d
Use squid instead of mitmproxy on ci 2023-04-09 14:03:14 +02:00
hurl-bot
2feade5a5c
Update crates 2023-04-09 09:11:33 +00:00
jcamiel
91dd3b124d
Simplify text summary. 2023-04-07 14:00:22 +02:00
hurl-bot
2ec5b9c85a
Update crates 2023-04-05 21:16:37 +00:00
hurl-bot
4ff99f8e9e
Update crates 2023-04-03 03:03:33 +00:00
hurl-bot
bba9a5949b
Update crates 2023-03-30 08:26:20 +00:00
hurl-bot
e236765724
Update crates 2023-03-29 08:07:07 +00:00
hurl-bot
198716f6be
Update crates 2023-03-28 12:46:49 +00:00
hurl-bot
1b4d4fe5a5
Update crates 2023-03-25 08:06:24 +00:00
hurl-bot
a2655d9196
Update crates 2023-03-24 07:24:20 +00:00
jcamiel
90631dc0b1
Add meta utf-8 charset to HTML report 2023-03-23 22:44:25 +01:00
hurl-bot
2a628524ca
Update crates 2023-03-23 21:19:24 +00:00