Commit Graph

1013 Commits

Author SHA1 Message Date
jcamiel
5ee6aa393b
Synchronise manual with http1.0, http1.1, http2, http3, ipv4 and ipv6 options. 2023-10-19 13:39:18 +00:00
jcamiel
662c550eb8
Add --ipv4/--ipv6 option 2023-10-18 14:37:42 +00:00
hurl-bot
398a991510
Update crates 2023-10-18 13:16:45 +00:00
Fabrice Reix
b3e72f900b
Extract option parser in its own module 2023-10-17 10:53:24 +02:00
hurl-bot
03ee2840db
Update crates 2023-10-17 03:01:54 +00:00
Fabrice Reix
089dd46132
Refacto eval_expression returning a Value rather than a String 2023-10-16 08:56:34 +02:00
jcamiel
6a66b1dcd2
Remove unused url field in some errors structs 2023-10-14 23:33:52 +02:00
jcamiel
61fd37b2ae
Add error message for unsupported HTTP version. 2023-10-14 23:33:35 +02:00
hurl-bot
efadd8d858
Update crates 2023-10-14 20:26:20 +00:00
hurl-bot
897da088b8
Update crates 2023-10-13 06:32:25 +00:00
jcamiel
9d5b611b9e
Adapt test excepted stderr to take libcurl multipart boundary size change in 8.4.0+.
See https://github.com/curl/curl/pull/11838/files where `define MIME_RAND_BOUNDARY_CHARS` has been changed from 16 to 22.
The new pattern on 'Content-Lenght' works for previsous and newer libcurl version.
2023-10-12 23:23:11 +02:00
jcamiel
d58ecce62b
Change field name. 2023-10-11 10:23:38 +02:00
jcamiel
4363aa9875
Force refreshing libcurl connections if HTTP version requested change 2023-10-11 09:13:44 +02:00
jcamiel
8c57a78f08
Introduce RequestedHttpVersion enum for specify the requested HTTP version. 2023-10-10 18:47:39 +02:00
jcamiel
e843dc7785
Remove unnecessary clone. 2023-10-10 15:04:19 +02:00
hurl-bot
3d79234674
Update crates 2023-10-10 03:01:48 +00:00
jcamiel
4ae0465839
Add integration test for hurl --help. 2023-10-09 18:13:03 +02:00
Zac Pitones
f2e4023218
add timestamps to HTML reports 2023-10-09 09:58:43 -05:00
hurl-bot
b31a26f41d
Update crates 2023-10-09 14:14:06 +00:00
jcamiel
1986c0ca13
Add --http3 option. 2023-10-08 17:25:00 +02:00
jcamiel
473084aeb7
Add integration test for --http2 option. 2023-10-08 14:38:36 +00:00
jcamiel
b4e53f1489
Add --http2 option. 2023-10-08 14:38:35 +00:00
jcamiel
50adeccdfa
Upgrade to Rust 1.73 2023-10-08 00:49:02 +02:00
Niklas Mollenhauer
6ec6a889d5
cargo fmt 2023-10-07 08:57:18 +00:00
Niklas Mollenhauer
d6d14cfec7
Fix report version marker 2023-10-07 08:57:17 +00:00
Niklas Mollenhauer
581e8865d8
Add support for TAP version header
TAPv13 states that there might be a version header:
https://testanything.org/tap-version-13-specification.html

This change is compatible with earlier TAP versions,
because they should ignore all output that does not start with `ok`/`not ok`

There are TAP consumers that require a TAP version to be present [1].

[1]: https://github.com/test-summary/action
2023-10-07 08:57:16 +00:00
jcamiel
ee98301902
Hide deprecated fail-at-end flag. 2023-10-06 17:24:33 +02:00
Fabrice Reix
aeca943cf7
Support template in keys 2023-10-06 10:18:52 +02:00
Jean-Christophe Amiel
d990877486
Fix delay field order. 2023-10-04 15:25:27 +00:00
jcamiel
9623b76409
Add http1.1 per request option. 2023-10-04 14:42:47 +02:00
jcamiel
cf8dffba03
Reset libcurl handle at the start of the execute function.
Actually, we can exit from the `client::execute` function without reseting the libcurl handle.
It seems more cautious to reset the curl handle at the start of the function, prior to set everything.
2023-10-03 18:22:51 +02:00
jcamiel
411f0ed8f5
Add --http1.1 option 2023-10-03 13:41:58 +02:00
jcamiel
17ec6c8b1a
Add --http1.0 per request option. 2023-10-03 12:58:11 +02:00
jcamiel
2438905850
Add --http1.0 option 2023-10-03 09:33:35 +00:00
jcamiel
67eee892fb
Credits all hard work maintainers. 2023-10-02 10:27:26 +02:00
jcamiel
fef53861ae
Change HTTP version enum from response/Version to core/HttpVersion.
The new enum implements now Copy, and has a HTTP3 variant.
2023-10-02 05:45:35 +00:00
hurl-bot
f4243b6b1f
Update crates 2023-10-01 20:49:25 +00:00
hurl-bot
f30f559ad0
Update crates 2023-10-01 03:02:12 +00:00
jcamiel
cf5d404fa3
Remove strict feature from Cargo toml.
See bdd4ff7b14
2023-09-30 10:03:11 +00:00
hurl-bot
2867cbd19d
Update crates 2023-09-30 09:26:56 +00:00
jcamiel
f0c1982ced
Fix some case. 2023-09-29 13:29:47 +02:00
Josh Soref
8d9291ac64
reword url ParseResult comment
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:15 +02:00
Josh Soref
a22eb36c53
spelling: the
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:14 +02:00
Josh Soref
aeea28e857
spelling: reproduce
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:14 +02:00
Josh Soref
6137a6b69a
spelling: previously
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:14 +02:00
Josh Soref
554f6b7206
spelling: parser
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:14 +02:00
Josh Soref
b19a6c9820
spelling: nonexistent
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:13 +02:00
Josh Soref
e843b00bb5
spelling: duration
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:12 +02:00
Josh Soref
b8c6c17a30
spelling: can
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-09-29 09:08:11 +02:00
hurl-bot
1c028dd598
Update crates 2023-09-29 03:01:45 +00:00
Guilherme Puida
90576a9620
Use get_non_default_options to filter logs
This uses the previously created get_non_default_options instead of
inline logic when logging runner options.

Also fixes integration tests.
2023-09-28 15:11:44 -03:00
Guilherme Puida
b076266635
Extract log filtering logic to a separate function 2023-09-28 14:39:39 -03:00
Guilherme Puida
ff366b581e
Log only non-default options in verbose mode
This patch alters the logging of options to only display non-default
options when running with --verbose. The behavior of --very-verbose
is not affected.

This commit also fixes all integration tests that were broken with
the change to the logger output.
2023-09-27 20:14:41 -03:00
hurl-bot
5e646b8827
Update crates 2023-09-26 16:24:17 +00:00
hurl-bot
4dac6e09f4
Update crates 2023-09-26 03:01:41 +00:00
jcamiel
07845377f4
Use generic GitHub release link in installation instructions. 2023-09-21 13:26:18 +00:00
hurl-bot
6870aaa5f5
Update hurl version to 4.2.0-SNAPSHOT 2023-09-21 12:08:40 +00:00
hurl-bot
b12b761921
Create 4.1.0 release 2023-09-21 10:56:10 +00:00
Fabrice Reix
50f8901f60
Update Rust to 1.72.1 2023-09-20 14:15:54 +00:00
jcamiel
fee45c9c6e
Fix path-as-is vs path_as_is 2023-09-20 14:43:44 +02:00
jcamiel
419c377f31
Update docs. 2023-09-19 15:12:18 +02:00
hurl-bot
ba8e7f6250
Update crates 2023-09-19 03:01:58 +00:00
hurl-bot
50c20d3863
Update crates 2023-09-16 03:01:42 +00:00
jcamiel
8829b393b3
Update docs. 2023-09-14 16:18:20 +02:00
hurl-bot
989603c545
Update crates 2023-09-14 03:01:59 +00:00
Fabrice Reix
11628d4766
Add delay CLI option 2023-09-13 16:18:28 +02:00
hurl-bot
0d79aa9e71
Update crates 2023-09-13 03:01:44 +00:00
jcamiel
f82ed05d9a
Refacto for XML parsing.
Previously, the parser was rather raw: we processed the buffer bytes by bytes, checking if the buffer was a valid XML file.
Now, we use libxml SAX parser to detect the end of the XML.
2023-09-12 12:15:35 +00:00
jcamiel
d48dc7e296
Fix typo. 2023-09-11 13:31:55 +02:00
jcamiel
336ab101c8
Remove unused enum variant. 2023-09-11 11:32:25 +02:00
Fabrice Reix
915f539a4e
Fix parsing jsonpath slice 2023-09-11 09:00:26 +00:00
hurl-bot
91af068cb2
Update crates 2023-09-11 03:01:52 +00:00
jcamiel
b457ea8f30
Remove static lifetimes from parsing functions. 2023-09-08 15:43:34 +02:00
jcamiel
30657d84a9
Add more tests units on XML parser. 2023-09-08 13:50:57 +02:00
jcamiel
c2342b90cb
Use operator for equals predicate in tests. 2023-09-08 11:12:09 +02:00
jcamiel
35beab2c18
Fix deprecated calls. 2023-09-08 09:25:17 +02:00
hurl-bot
2eb22da885
Update crates 2023-09-08 03:02:02 +00:00
jcamiel
c56bc1380e
Print host architecture with --version 2023-09-07 15:45:52 +02:00
hurl-bot
025a453b97
Update crates 2023-09-06 03:01:56 +00:00
hurl-bot
7d8cc1edac
Update crates 2023-09-04 03:02:09 +00:00
hurl-bot
20c228db19
Update crates 2023-09-01 03:01:51 +00:00
Fabrice Reix
9e3a9ae3b2
Fix typos 2023-08-31 12:11:00 +02:00
Fabrice Reix
da233dbd7a
Fix clippy warnings 2023-08-31 11:36:52 +02:00
Fabrice Reix
1ddda4c86b
Update Rust to 1.72 2023-08-31 11:27:36 +02:00
hurl-bot
a1ddd2f82b
Update crates 2023-08-31 03:01:55 +00:00
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