# Hurl changelog > A command-line tool that runs and tests HTTP requests defined in plain-text files. - Vendor: Orange Open Source - Category: Developer Tools - Platforms: Desktop - Official site: https://hurl.dev - Tracked by: What's New (https://whatsnew.fyi/product/hurl) - Harvested from: GitHub (Orange-OpenSource/hurl) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## Releases ### 8.0.1 - Date: 2026-04-29 - Version: 8.0.1 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/8.0.1 - Permalink: https://whatsnew.fyi/product/hurl/releases/8.0.1 - Labels: Platforms: Desktop - **fixed** — Support _ in jsonpath member name shorthand [8.0.1 (2026-04-28)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#8.0.1) ======================================================================================================================== Thanks to [@verigak](https://github.com/verigak), Bugs Fixed: * Support _ in jsonpath member name shorthand [#4995](https://github.com/Orange-OpenSource/hurl/issues/4995) ### 8.0.0 - Date: 2026-04-27 - Version: 8.0.0 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/8.0.0 - Permalink: https://whatsnew.fyi/product/hurl/releases/8.0.0 - Labels: Platforms: Desktop - **removed** — Delete deprecated --interactive option - **changed** — Replace legacy env var variable configuration HURL_foo by HURL_VARIABLE_foo - **changed** — Rename ignore-asserts to no-assert - **changed** — Use new JSONPath module implementing RFC 9535 - **added** — Add raw multiline strings and remove deprecated multiline attributes - **added** — Add --no-cookie-store option to deactivate cookie storage for one file - **changed** — Rename --noproxy to --no-proxy with backward compatible alias - **changed** — Separate color usage (ANSI codes) for standard output and standard error - **added** — Add support for asserting and capturing TLS certificate value - **changed** — Use color and pretty when using output per request - **added** — Support color env variables configuration - **changed** — Enhance error message for invalid filter input on filters - **added** — Add rawbytes query - **added** — Add --verbosity option (globally and per request) - **added** — Add Subject Alt Name (SAN) attribute for certificate assertions - **fixed** — Reject invalid header value on command line option - **fixed** — Fix single quote in cookie value breaking curl output - **added** — Add support for curl --data-raw option in hurlfmt import - **fixed** — Fix truncating existing output file when response is tiny - **deprecated** — Add charsetDecode filter and make decode deprecated [8.0.0 (2026-04-24)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#8.0.0) ======================================================================================================================== Thanks to [@backtozero](https://github.com/backtozero), [@Hari-Oggy](https://github.com/Hari-Oggy), [@eyupcanakman](https://github.com/eyupcanakman), [@AdmiralRazorbeard](https://github.com/AdmiralRazorbeard), [@giorgiovilardo](https://github.com/giorgiovilardo), [@kikonen](https://github.com/kikonen), [@eirayuki](https://github.com/eirayuki), [@aageneralov](https://github.com/aageneralov), [@mateusz834](https://github.com/mateusz834), [@msterin](https://github.com/msterin), [@lillem4n](https://github.com/lillem4n), [@jwadolowski](https://github.com/jwadolowski), [@ashishajr](https://github.com/ashishajr), [@spiffytech](https://github.com/spiffytech), [@rajiv](https://github.com/rajiv), [Take a tour of this version here!](https://hurl.dev/blog/2026/04/27/announcing-hurl-8.0.0.html) Breaking Changes: * Use CookieStore in HurlResult (crate compatibility) [#4697](https://github.com/Orange-OpenSource/hurl/issues/4697) * Delete deprecated --interactive option [#4712](https://github.com/Orange-OpenSource/hurl/issues/4712) * Replace legacy env var variable configuration HURL_foo by HURL_VARIABLE_foo [#4882](https://github.com/Orange-OpenSource/hurl/issues/4882) * Rename ignore-asserts to no-assert [#4889](https://github.com/Orange-OpenSource/hurl/issues/4889) * Using new JSONPath module implementing RFC 9535 [#4270](https://github.com/Orange-OpenSource/hurl/issues/4270) Enhancements: * Add raw multiline strings and remove deprecated multiline attributes [#1733](https://github.com/Orange-OpenSource/hurl/issues/1733) * Add --no-cookie-store option to deactivate cookie storage for one file [#2168](https://github.com/Orange-OpenSource/hurl/issues/2168) * Rename --noproxy to --no-proxy with backward compatible alias [#4709](https://github.com/Orange-OpenSource/hurl/issues/4709) * Separate color usage (ANSI codes) for standard output and standard error [#4790](https://github.com/Orange-OpenSource/hurl/issues/4790) * Add support for asserting/capturing TLS certificate value [#4698](https://github.com/Orange-OpenSource/hurl/issues/4698) * Use color/pretty when using output per request [#4970](https://github.com/Orange-OpenSource/hurl/issues/4970) * Support color env variables configuration [#4777](https://github.com/Orange-OpenSource/hurl/issues/4777) * Enhance error message for invalid filter input on filters [#4381](https://github.com/Orange-OpenSource/hurl/issues/4381) * Add `rawbytes` query [#4250](https://github.com/Orange-OpenSource/hurl/issues/4250) * Using new JSONPath module implementing RFC 9535 [#4270](https://github.com/Orange-OpenSource/hurl/issues/4270) * Add --verbosity option (globally and per request) [#4613](https://github.com/Orange-OpenSource/hurl/issues/4613) * Add Subject Alt Name (SAN) attribute for certificate assertions [#4617](https://github.com/Orange-OpenSource/hurl/issues/4617) Bugs Fixed: * Reject invalid header value on command line option [#4843](https://github.com/Orange-OpenSource/hurl/issues/4843) * Fix single quote in cookie value breaking curl output [#4557](https://github.com/Orange-OpenSource/hurl/issues/4557) * Add support for curl --data-raw option in hurlfmt import [#4411](https://github.com/Orange-OpenSource/hurl/issues/4411) * Fix truncating existing output file when response is tiny [#4576](https://github.com/Orange-OpenSource/hurl/issues/4576) Deprecations: * Add charsetDecode filter and make decode deprecated [#4732](https://github.com/Orange-OpenSource/hurl/issues/4732) ### 7.1.0 - Date: 2025-11-20 - Version: 7.1.0 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/7.1.0 - Permalink: https://whatsnew.fyi/product/hurl/releases/7.1.0 - Labels: Platforms: Desktop - **added** — Add CLI option to pretty print the response body - **added** — Support adding secret with HURL_SECRET_foo env variable - **added** — Support `--secrets-file` for injecting secrets - **added** — Add `--ntlm` option per request - **added** — Add `--negotiate` option per request - **added** — Add utf8Decode/utf8Encode filters - **added** — Add support for hour duration - **added** — Add parsing support for more types of date time strings to toDate filter - **added** — Add retry count in the progress bar (only if retry >= 1) - **added** — Add isList predicate - **added** — Add isObject predicate - **changed** — Use happy path with http/https scheme for URL parsing to improve stress test use-cases - **changed** — Replace unmaintained encoding crate with encoding_rs crate - **changed** — Enhance logging for retry - **changed** — Enhance `--test` duration logging - **changed** — HTML report enhancements - **fixed** — Parse `--user`, `--negotiate`, and `--ntlm` options in hurlfmt - **fixed** — Accept more path names when appending HTML reports - **fixed** — Fix filtering of Authorization: and Cookie: headers when following redirections - **fixed** — Fix supporting space in cookie storage cookie values - **fixed** — Fix implicit "Content-Type" headers when following redirections [7.1.0 (2025-11-18)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#7.1.0) ======================================================================================================================== Thanks to [@Nezteb](https://github.com/Nezteb), [@quantonganh](https://github.com/quantonganh), [@lambrospetrou](https://github.com/lambrospetrou), [@linkdd](https://github.com/linkdd), [@gugahoa](https://github.com/gugahoa), [@MikhailWahib](https://github.com/MikhailWahib), [@ashishajr](https://github.com/ashishajr), [@rcrisanti](https://github.com/rcrisanti), [Take a tour of this version here!](https://hurl.dev/blog/2025/11/26/hurl-7.1.0-the-pretty-edition.html) Enhancements: * Add CLI option to pretty print the response body [#1760](https://github.com/Orange-OpenSource/hurl/issues/1760) * Add pretty print option [#1760](https://github.com/Orange-OpenSource/hurl/issues/1760) * Support adding secret with HURL_SECRET_foo env variable [#3901](https://github.com/Orange-OpenSource/hurl/issues/3901) * Use happy path with http/https scheme for URL parsing to improve stress test use-cases [#4144](https://github.com/Orange-OpenSource/hurl/issues/4144) * Support `--secrets-file` for injecting secrets [#4309](https://github.com/Orange-OpenSource/hurl/issues/4309) * Add `--ntlm` option per request [#4322](https://github.com/Orange-OpenSource/hurl/issues/4322) * Add `--negotiate` option per request [#4323](https://github.com/Orange-OpenSource/hurl/issues/4323) * Add utf8Decode/utf8Encode filters [#4382](https://github.com/Orange-OpenSource/hurl/issues/4382) * Replace unmaintained encoding crate with encoding_rs crate [#4399](https://github.com/Orange-OpenSource/hurl/issues/4399) * Enhance logging for retry [#4419](https://github.com/Orange-OpenSource/hurl/issues/4419) * Add support for hour duration [#4422](https://github.com/Orange-OpenSource/hurl/issues/4422) * Enhance `--test` duration logging [#4423](https://github.com/Orange-OpenSource/hurl/issues/4423) * Add parsing support for more types of date time strings to toDate filter [#4439](https://github.com/Orange-OpenSource/hurl/issues/4439) [#4440](https://github.com/Orange-OpenSource/hurl/issues/4440) [#4441](https://github.com/Orange-OpenSource/hurl/issues/4441) * HTML report enhancements [#4445](https://github.com/Orange-OpenSource/hurl/issues/4445) [#4446](https://github.com/Orange-OpenSource/hurl/issues/4446) * Add retry count in the progress bar (only if retry >= 1) [#4511](https://github.com/Orange-OpenSource/hurl/issues/4511) * Add isList predicate [#4520](https://github.com/Orange-OpenSource/hurl/issues/4520) * Add isObject predicate [#4520](https://github.com/Orange-OpenSource/hurl/issues/4520) Bugs Fixed: * Parse `--user`, `--negotiate`, and `--ntlm` options in hurlfmt [#4213](https://github.com/Orange-OpenSource/hurl/issues/4213) * Add parsing support for more types of date time strings to toDate filter [#4439](https://github.com/Orange-OpenSource/hurl/issues/4439) [#4440](https://github.com/Orange-OpenSource/hurl/issues/4440) [#4441](https://github.com/Orange-OpenSource/hurl/issues/4441) * Accept more path names when appending HTML reports [#4459](https://github.com/Orange-OpenSource/hurl/issues/4459) * Fix filtering of Authorization: and Cookie: headers when following redirections [#4460](https://github.com/Orange-OpenSource/hurl/issues/4460) * Fix supporting space in cookie storage cookie values [#4461](https://github.com/Orange-OpenSource/hurl/issues/4461) * Fix implicit "Content-Type" headers when following redirections [#4522](https://github.com/Orange-OpenSource/hurl/issues/4522) * Fix curl debug command with dot-prefixed cookie domain [#4558](https://github.com/Orange-OpenSource/hurl/issues/4558) ### 7.0.0 - Date: 2025-07-30 - Version: 7.0.0 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/7.0.0 - Permalink: https://whatsnew.fyi/product/hurl/releases/7.0.0 - Labels: Platforms: Desktop - **added** — Add query for HTTP redirects - **added** — Add urlQueryParam filter - **added** — Add option to configure max-time per request - **added** — Add date comparison predicates - **added** — Add pinnedpubkey cli option - **added** — Add base64 url safe encode and decode filters - **added** — Parse curl's --cookie flag - **added** — Add toHex filter - **added** — Add first and last filters - **added** — Add support for negative values for nth filter - **added** — Add option to configure pinnedpubkey per request - **added** — Support template in nth filter parameter - **added** — Implement predicate isUuid - **added** — Add --ntlm cli option - **added** — Add --negotiate option - **changed** — Add replaceRegex filter and fix replace filter to not take regex - **changed** — Show curl command when error format option is set to long - **changed** — Show hurl --help with color - **changed** — Remove hex crate dependency - **changed** — Small tweaks to --test progress output - **changed** — Improve captures error messages when filter chain returned no value - **fixed** — Fix incorrect curl command for POST redirect - **fixed** — Fix hurlfmt to disallow invalid header argument in curl command - **fixed** — Parse verbose flag in curl command - **fixed** — Keep secret value forever, even if a secret variable override an existing one - **fixed** — Fix zsh completion - **fixed** — Parse cookie Expires date attribute with '-' - **fixed** — Replace deprecated libxml2 initGenericErrorDefaultFunc with xmlSetGenericErrorFunc - **fixed** — HTML report: fix span for lines in comment - **fixed** — Fix HTML closing tag for line with trailing comment - **fixed** — Fix request body during redirections - **fixed** — Fix "variables" token in GraphQL HTML export - **fixed** — Support negative index in jsonpath - **security** — Fix JavaScript injection in HTML report through regex literal [7.0.0 (2025-07-28)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#7.0.0) ======================================================================================================================== Thanks to [@ecolinet](https://github.com/ecolinet), [@theoforger](https://github.com/theoforger), [@Muntaner](https://github.com/Muntaner), [@ashishajr](https://github.com/ashishajr), [@patkujawa-wf](https://github.com/patkujawa-wf), [@niklasweimann](https://github.com/niklasweimann), [@alanbondarun](https://github.com/alanbondarun), [@benkio](https://github.com/benkio), [@dhth](https://github.com/dhth), [@verigak](https://github.com/verigak), [@markphilpot](https://github.com/markphilpot), [@lambrospetrou](https://github.com/lambrospetrou), [@aresler](https://github.com/aresler), [@nfj25](https://github.com/nfj25), [@nwellnhof](https://github.com/nwellnhof), [@YannickAlex07](https://github.com/YannickAlex07), [@lu-zero](https://github.com/lu-zero), [@RaghavSood](https://github.com/RaghavSood), [@tjbrockmeyer](https://github.com/tjbrockmeyer), [Take a tour of this new version here!](https://hurl.dev/blog/2025/07/30/announcing-hurl-7.0.0.html) Breaking Changes: * Add replaceRegex filter and fix replace filter to not take regex [#4018](https://github.com/Orange-OpenSource/hurl/issues/4018) Enhancements: * Add query for HTTP redirects [#922](https://github.com/Orange-OpenSource/hurl/issues/922) * Add urlQueryParam filter [#2199](https://github.com/Orange-OpenSource/hurl/issues/2199) * Show curl command when error format option is set to long [#2226](https://github.com/Orange-OpenSource/hurl/issues/2226) * Add option to configure max-time per request [#3162](https://github.com/Orange-OpenSource/hurl/issues/3162) * Add date comparison predicates [#3480](https://github.com/Orange-OpenSource/hurl/issues/3480) * Add pinnedpubkey cli option [#3563](https://github.com/Orange-OpenSource/hurl/issues/3563) * Add base64 url safe encode and decode filters [#3840](https://github.com/Orange-OpenSource/hurl/issues/3840) * parse curl's --cookie flag [#3877](https://github.com/Orange-OpenSource/hurl/issues/3877) * Show hurl --help with color [#3882](https://github.com/Orange-OpenSource/hurl/issues/3882) * Add toHex filter [#3963](https://github.com/Orange-OpenSource/hurl/issues/3963) * Add first and last filters [#3998](https://github.com/Orange-OpenSource/hurl/issues/3998) * Remove hex crate dependency [#4011](https://github.com/Orange-OpenSource/hurl/issues/4011) * Small tweaks to --test progress output [#4028](https://github.com/Orange-OpenSource/hurl/issues/4028) * Add support for negative values for nth filter [#4050](https://github.com/Orange-OpenSource/hurl/issues/4050) * Add option to configure pinnedpubkey per request [#4084](https://github.com/Orange-OpenSource/hurl/issues/4084) * Add timeline link on status label in source and run pages [#4128](https://github.com/Orange-OpenSource/hurl/issues/4128) * Support template in nth filter parameter [#4152](https://github.com/Orange-OpenSource/hurl/issues/4152) * Implement predicate `isUuid` [#4179](https://github.com/Orange-OpenSource/hurl/issues/4179) * Improve captures error messages when filter chain returned no value [#4214](https://github.com/Orange-OpenSource/hurl/issues/4214) * Add --ntlm cli option [#4216](https://github.com/Orange-OpenSource/hurl/issues/4216) * Add --negotiate option [#4246](https://github.com/Orange-OpenSource/hurl/issues/4246) Bugs Fixed: * Fix incorrect curl command for POST redirect [#2797](https://github.com/Orange-OpenSource/hurl/issues/2797) * Fix hurlfmt to disallow invalid header argument in curl command [#3668](https://github.com/Orange-OpenSource/hurl/issues/3668) * Parse verbose flag in curl command [#3760](https://github.com/Orange-OpenSource/hurl/issues/3760) * Keep secret value forever, even if a secret variable override an existing one [#3898](https://github.com/Orange-O _[Truncated at 4000 characters — full notes: https://github.com/Orange-OpenSource/hurl/releases/tag/7.0.0]_ ### 6.1.1 - Date: 2025-03-24 - Version: 6.1.1 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/6.1.1 - Permalink: https://whatsnew.fyi/product/hurl/releases/6.1.1 - Labels: Platforms: Desktop - **fixed** — Fix hurlfmt spacing - **fixed** — Fix filename parsing - **fixed** — Fix jsonpath array wildcard with missing attribute - **fixed** — Fix predicate contains with none input [6.1.1 (2025-03-19)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#6.1.1) ======================================================================================================================== Thanks to [@lu-zero](https://github.com/lu-zero), [@andrejohansson](https://github.com/andrejohansson), [@demostanis](https://github.com/demostanis), [@techfg](https://github.com/techfg), Bugs Fixed: * Fix hurlfmt spacing [#3839](https://github.com/Orange-OpenSource/hurl/issues/3839) * Fix filename parsing [#3848](https://github.com/Orange-OpenSource/hurl/issues/3848) * Fix jsonpath array wildcard with missing attribute [#3859](https://github.com/Orange-OpenSource/hurl/issues/3859) [#3869](https://github.com/Orange-OpenSource/hurl/issues/3869) * Fix predicate `contains` with none input [#3868](https://github.com/Orange-OpenSource/hurl/issues/3868) ### 6.1.0 - Date: 2025-03-12 - Version: 6.1.0 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/6.1.0 - Permalink: https://whatsnew.fyi/product/hurl/releases/6.1.0 - Labels: Platforms: Desktop - **removed** — Remove deprecated predicates (notEquals, greaterThan etc.) in favor of operators - **removed** — Remove deprecated keyword HTTP/* for HTTP - **changed** — Remove limitation for --cookie-jar to use only one hurl file - **added** — Add HTTP version query - **added** — Add curl -H/--header option to globally add headers to all requests - **added** — Add toString filter - **added** — Add base64 decode filter - **added** — Add base64 encode filter - **changed** — Redact secrets from JUnit reports - **changed** — Redact secrets from JSON report - **changed** — Redact secrets from HTML report - **changed** — Redact secrets from curl export - **changed** — Redact secrets from cookies export - **added** — Add IP address query - **added** — Add isIpv4 and isIpv6 asserts on IP versions - **added** — Allow sending empty HTTP header - **changed** — Redact dynamic values from logs - **added** — Add header option per request - **fixed** — Fix invalid escape in hurlfmt parse func - **changed** — Use Hurl predicates identifiers for Hurl to JSON file export in hurlfmt [6.1.0 (2025-03-12)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#6.1.0) ======================================================================================================================== Thanks to [@lilyhuang-github](https://github.com/lilyhuang-github), [@ashishajr](https://github.com/ashishajr), [@kidbrax](https://github.com/kidbrax), [@theoforger](https://github.com/theoforger), [@smokedlinq](https://github.com/smokedlinq), [@docwhat](https://github.com/docwhat), [@glb-cblin](https://github.com/glb-cblin), [@Enoz](https://github.com/Enoz), [@ikorason](https://github.com/ikorason), [@uday-rana](https://github.com/uday-rana), [@lu-zero](https://github.com/lu-zero), [@nghiab1906724](https://github.com/nghiab1906724), [@overbyte](https://github.com/overbyte), See [a tour of this version here!](https://hurl.dev/blog/2025/03/14/announcing-hurl-6.1.0.html) Breaking Changes: * Remove deprecated predicates (notEquals, greaterThan etc...) in favor of operators [#3532](https://github.com/Orange-OpenSource/hurl/issues/3532) * Remove deprecated keyword HTTP/* for HTTP [#3697](https://github.com/Orange-OpenSource/hurl/issues/3697) Enhancements: * Removed limitation for --cookie-jar to use only one hurl file [#2537](https://github.com/Orange-OpenSource/hurl/issues/2537) * Add HTTP version query [#1706](https://github.com/Orange-OpenSource/hurl/issues/1706) * Add curl -H/--header option to globally add headers to all requests [#1905](https://github.com/Orange-OpenSource/hurl/issues/1905) [#2144](https://github.com/Orange-OpenSource/hurl/issues/2144) * Add toString Filter [#2035](https://github.com/Orange-OpenSource/hurl/issues/2035) [#3798](https://github.com/Orange-OpenSource/hurl/issues/3798) * Add base64 decode filter [#2145](https://github.com/Orange-OpenSource/hurl/issues/2145) * Add base64 encode filter [#2145](https://github.com/Orange-OpenSource/hurl/issues/2145) * Redacts secrets from JUnit reports [#2947](https://github.com/Orange-OpenSource/hurl/issues/2947) [#2972](https://github.com/Orange-OpenSource/hurl/issues/2972) * Redacts secrets from JSON report [#2947](https://github.com/Orange-OpenSource/hurl/issues/2947) [#2972](https://github.com/Orange-OpenSource/hurl/issues/2972) * Redact secret in HTML report [#2947](https://github.com/Orange-OpenSource/hurl/issues/2947) [#2972](https://github.com/Orange-OpenSource/hurl/issues/2972) * Redact secrets from curl export [#2947](https://github.com/Orange-OpenSource/hurl/issues/2947) [#2972](https://github.com/Orange-OpenSource/hurl/issues/2972) * Redact secrets from cookies export [#2947](https://github.com/Orange-OpenSource/hurl/issues/2947) [#2972](https://github.com/Orange-OpenSource/hurl/issues/2972) * Add IP address query [#3106](https://github.com/Orange-OpenSource/hurl/issues/3106) * Add isIpv4 / isIpv6 asserts on IP versions [#3106](https://github.com/Orange-OpenSource/hurl/issues/3106) * Allow sending empty HTTP header [#3536](https://github.com/Orange-OpenSource/hurl/issues/3536) * Redact dynamic values from logs [#3543](https://github.com/Orange-OpenSource/hurl/issues/3543) * Add header option per request [#3575](https://github.com/Orange-OpenSource/hurl/issues/3575) * Fix invalid escape in hurlfmt parse func [#3615](https://github.com/Orange-OpenSource/hurl/issues/3615) * hurlfmt: Use Hurl predicates identifiers for Hurl to JSON file export [#3662](https://github.com/Orange-OpenSource/hurl/issues/3662) * Add aarch64 deb package [#3829](https://github.com/Orange-OpenSource/hurl/issues/3829) Bugs Fixed: * Fix missing request line errors in HTML report [#3534](https://github.com/Orange-OpenSource/hurl/issues/3534) * Eval template in JSON object key [#3593](https://github.com/Orange-OpenSource/hurl/issues/3593) * Show error message if format is invalid in `format` filter [#3613](https://github.com/Orange-OpenSource/hurl/issues/3613) * Create parent folders if missing when using --cooki _[Truncated at 4000 characters — full notes: https://github.com/Orange-OpenSource/hurl/releases/tag/6.1.0]_ ### 6.0.0 - Date: 2024-12-04 - Version: 6.0.0 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/6.0.0 - Permalink: https://whatsnew.fyi/product/hurl/releases/6.0.0 - Labels: Platforms: Desktop - **removed** — Remove deprecated --fail-at-end option - **changed** — Change API for setting variable in hurl::runner::run - **removed** — Remove hurlfmt deprecated --format option - **changed** — Rename feature flag from vendored-openssl to static-openssl - **added** — Implement function newUuid - **added** — Implement --limit-rate option from curl - **added** — Add --curl option to export executed requests to curl commands - **changed** — Configure --connect-timeout per request - **added** — Support short name for sections [QueryStringParams] => [Query], [FormParams] => [Form], [MultipartFormData] => [Multipart] - **changed** — Remove url-specific parser to align with grammar - **added** — Add filter on boolean value in JSONPath - **added** — Add non-equal filter on string and number value in JSONPath - **added** — Add support for backtick strings in predicates values - **changed** — Categorise options in --help - **changed** — Support more JSON and XML like mimetypes with debug output - **added** — Add curl debug command to --json and JSON report - **added** — Add curl debug command to HTML report - **added** — Add newDate generator - **fixed** — Fix reading standard input multiple times - **fixed** — Support case-insensitive Cookie Attributes [6.0.0 (2024-12-03)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#6.0.0) ======================================================================================================================== Thanks to [@cemoktra](https://github.com/cemoktra), [@zikani03](https://github.com/zikani03), [@lambrospetrou](https://github.com/lambrospetrou), [@jmvargas](https://github.com/jmvargas), [@quantonganh](https://github.com/quantonganh), [@sandeshbhusal](https://github.com/sandeshbhusal), [@thePanz](https://github.com/thePanz), [@niklasweimann](https://github.com/niklasweimann), [@infogulch](https://github.com/infogulch), [@orlandow](https://github.com/orlandow), [@bp7968h](https://github.com/bp7968h), See a [tour of this version here!](https://hurl.dev/blog/2024/12/04/announcing-hurl-6.0.0.html) Breaking Changes: * Check that variables do not conflict with existing functions [#3229](https://github.com/Orange-OpenSource/hurl/issues/3229) * Remove deprecated --fail-at-end option [#3430](https://github.com/Orange-OpenSource/hurl/issues/3430) * Change API for setting variable in hurl::runner::run [#3440](https://github.com/Orange-OpenSource/hurl/issues/3440) * Remove hurlfmt deprecated --format option [#3445](https://github.com/Orange-OpenSource/hurl/issues/3445) * Rename feature flag from vendored-openssl to static-openssl [#3460](https://github.com/Orange-OpenSource/hurl/issues/3460) Enhancements: * Implement function newUuid [#973](https://github.com/Orange-OpenSource/hurl/issues/973) * Implement --limit-rate from curl [#1222](https://github.com/Orange-OpenSource/hurl/issues/1222) * Add --curl option to export executed requests to curl commands [#2679](https://github.com/Orange-OpenSource/hurl/issues/2679) * Configure --connect-timeout per request [#3163](https://github.com/Orange-OpenSource/hurl/issues/3163) * Support short name for sections [QueryStringParams] => [Query], [FormParams] => [Form], [MultipartFormData] => [Multipart] [#3238](https://github.com/Orange-OpenSource/hurl/issues/3238) * Remove url-specific parser (align with grammar) [#3244](https://github.com/Orange-OpenSource/hurl/issues/3244) * Remove the crate float-cmp [#3247](https://github.com/Orange-OpenSource/hurl/issues/3247) * Jsonpath / Add filter on boolean value [#3252](https://github.com/Orange-OpenSource/hurl/issues/3252) * Jsonpath / Add non-equal filter on string and number value [#3261](https://github.com/Orange-OpenSource/hurl/issues/3261) * Add support for backtick strings in predicates values [#3317](https://github.com/Orange-OpenSource/hurl/issues/3317) * Categorise options in --help [#3339](https://github.com/Orange-OpenSource/hurl/issues/3339) * Support more JSON / XML "like" mimetypes with debug output [#3343](https://github.com/Orange-OpenSource/hurl/issues/3343) * Add curl debug command to --json and JSON report [#3374](https://github.com/Orange-OpenSource/hurl/issues/3374) * Add curl debug command to HTML report [#3386](https://github.com/Orange-OpenSource/hurl/issues/3386) * Render Date value [#3431](https://github.com/Orange-OpenSource/hurl/issues/3431) * Add newDate generator [#3443](https://github.com/Orange-OpenSource/hurl/issues/3443) Bugs Fixed: * Fix reading standard input multiple times [#3216](https://github.com/Orange-OpenSource/hurl/issues/3216) * Fix filename parsing (used by cert option) [#3242](https://github.com/Orange-OpenSource/hurl/issues/3242) * Add additional check for --max-filesize option [#3245](https://github.com/Orange-OpenSource/hurl/issues/3245) * Support case-insensitive Cookie Attributes [#3265](https://github.com/Orange-OpenSource/hurl/issues/3265) * Allow any string in Location Header when not following redirection [#3293](https://github.com/Orange-OpenSource/hurl/issues/3293) * Fix graceful shutdown of workers threads in --test [#3297](https://github.com/Orange-OpenSource/hurl/issues/3297) * Fix missing space in variable option HTML _[Truncated at 4000 characters — full notes: https://github.com/Orange-OpenSource/hurl/releases/tag/6.0.0]_ ### 5.0.1 - Date: 2024-08-30 - Version: 5.0.1 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/5.0.1 - Permalink: https://whatsnew.fyi/product/hurl/releases/5.0.1 - Labels: Platforms: Desktop - **fixed** — Fix regression in --output when output file doesn't exist [5.0.1 (2024-08-30)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#5.0.1) ======================================================================================================================== Bugs Fixed: * Fix regression in --output when output file doesn't exist [#3195](https://github.com/Orange-OpenSource/hurl/issues/3195) ### 5.0.0 - Date: 2024-08-28 - Version: 5.0.0 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/5.0.0 - Permalink: https://whatsnew.fyi/product/hurl/releases/5.0.0 - Labels: Platforms: Desktop - **changed** — Encode oneline string only with one backtick - **added** — Create intermediary directories if necessary when producing TAP report - **added** — Expose request comments in --out json (hurlfmt) - **added** — Create intermediary directories if necessary when producing JUnit report - **added** — Add global requests count in test summary - **changed** — Replace output warnings by errors - **fixed** — Fix inconsistent case for fields queryString and httpVersion in --json - **added** — Run tests in parallel - **added** — Add support for importing curl url option in hurlfmt - **added** — Add JSON report - **added** — Add repeat option to repeat a sequence of Hurl file - **added** — Add repeat option per request - **added** — Add optional duration unit - **changed** — Apply delay only once per entry, no matter how many retry - **added** — Add toFloat filter - **added** — Accept directory as Hurl arguments for processing file - **fixed** — Get SSL certificates info on reused connections, from a cache - **fixed** — Fix max-redirs: -1 in [Options] section - **fixed** — Fix error displayed in double with bad option - **fixed** — Fix hurlfmt exit code with lint error [5.0.0 (2024-08-29)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#5.0.0) ======================================================================================================================== Thanks to [@lambrospetrou](https://github.com/lambrospetrou), [@OverkillGuy](https://github.com/OverkillGuy), [@badboy](https://github.com/badboy), [@DenuxPlays](https://github.com/DenuxPlays), [@linkdd](https://github.com/linkdd), [@nkback](https://github.com/nkback), [@claytonneal](https://github.com/claytonneal), See a [tour of this version here!](https://hurl.dev/blog/2024/08/29/hurl-5.0.0-the-parallel-edition.html) Breaking Changes: * Encode oneline string only with one backtick [#3113](https://github.com/Orange-OpenSource/hurl/issues/3113) Enhancements: * Create intermediary directories if necessary when producing TAP report [#2860](https://github.com/Orange-OpenSource/hurl/issues/2860) * Expose request comments in --out json (hurlfmt) [#2850](https://github.com/Orange-OpenSource/hurl/issues/2850) * Create intermediary directories if necessary when producing JUnit report [#2842](https://github.com/Orange-OpenSource/hurl/issues/2842) * Add global requests count in test summary [#2832](https://github.com/Orange-OpenSource/hurl/issues/2832) * Replace output warnings by errors [#2815](https://github.com/Orange-OpenSource/hurl/issues/2815) * Fix inconsistent case for fields queryString and httpVersion in --json [#2804](https://github.com/Orange-OpenSource/hurl/issues/2804) * Run tests in parallel [#2753](https://github.com/Orange-OpenSource/hurl/issues/2753) * Add support for importing curl url option in hurlfmt [#2750](https://github.com/Orange-OpenSource/hurl/issues/2750) * Add JSON report [#2738](https://github.com/Orange-OpenSource/hurl/issues/2738) * Add repeat option to repeat a sequence of Hurl file [#2680](https://github.com/Orange-OpenSource/hurl/issues/2680) * Add repeat option per request [#2680](https://github.com/Orange-OpenSource/hurl/issues/2680) * Add optional duration unit [#2653](https://github.com/Orange-OpenSource/hurl/issues/2653) * Apply delay only once per entry, no matter how many retry [#1973](https://github.com/Orange-OpenSource/hurl/issues/1973) * Add toFloat filter [#1732](https://github.com/Orange-OpenSource/hurl/issues/1732) * Accept directory as Hurl arguments for processing file [#1446](https://github.com/Orange-OpenSource/hurl/issues/1446) Bugs Fixed: * Get SSL certificates info on reused connections, from a cache [#3031](https://github.com/Orange-OpenSource/hurl/issues/3031) * Fix max-redirs: -1 in [Options] section [#3023](https://github.com/Orange-OpenSource/hurl/issues/3023) * Fix error displayed in double with bad option [#2920](https://github.com/Orange-OpenSource/hurl/issues/2920) * Fix hurlfmt exit code with lint error [#2919](https://github.com/Orange-OpenSource/hurl/issues/2919) * Truncate file then append it when dumping response with --output. [#2886](https://github.com/Orange-OpenSource/hurl/issues/2886) * Fix crash with --json option when capturing 'HttpOnly' and 'Secure' cookie attribute [#2871](https://github.com/Orange-OpenSource/hurl/issues/2871) * Fix crash when capturing 'Expires' cookie attribute [#2870](https://github.com/Orange-OpenSource/hurl/issues/2870) * Fix empty JSON key parsing [#2836](https://github.com/Orange-OpenSource/hurl/issues/2836) * Do not filter 'Authorization' header if host doesn't change while following redirect [#2823](https://github.com/Orange-OpenSource/hurl/issues/2823) * Fix sending 'Authorization' header from --user when following redirect [#2812](https://github.com/Orange-OpenSource/hurl/issues/2812) * Fix URL when following redirect for certain 'Location' header [#2783](https://github.com/Orange-OpenSource/hurl/issues/2783) * Fix powershell completion file [#2729](https://github.com/Orange-OpenSource/hurl/issues/2729) ### 4.3.0 - Date: 2024-04-24 - Version: 4.3.0 - Original notes: https://github.com/Orange-OpenSource/hurl/releases/tag/4.3.0 - Permalink: https://whatsnew.fyi/product/hurl/releases/4.3.0 - Labels: Platforms: Desktop - **added** — Support --user option per request - **added** — Add isNumber predicate - **added** — Add isIsoDate predicate to check YYYY-MM-DDTHH:mm:sssZ format - **added** — Add --from-entry option to execute a file from a given entry - **added** — Add --max-filesize option to limit HTTP response - **added** — Add --netrc, --netrc-file and --netrc-optional options - **added** — Add bash, powershell, fish, and zsh completion for hurl and hurlfmt - **added** — Add experimental --parallel and --jobs options - **changed** — Create intermediate directory when using --report-html - **changed** — Use '-' to read Hurl file from standard input - **changed** — Add completion files in Linux/MacOS packages - **changed** — Fix tarball layout to Linux filesystem - **changed** — Display source request when there are asserts or runtime errors - **changed** — Use explicit stdout output - **changed** — Prevent raw binary response from being displayed on standard output - **fixed** — Export begin_call and end_call timings fields to RFC3339 with microseconds precision - **fixed** — Fix standalone css for regex - **fixed** — Fix charset parsing logic of Content-Type header - **fixed** — Fix filename templatization bug under certain conditions - **fixed** — Fix empty glob not always returning an error - **fixed** — Fix hurlfmt query certificate for hurl output format - **fixed** — Fix --test progress bar not displayed when verbose is used - **fixed** — Per request output takes file-root into account for path resolving - **fixed** — Fix silent error when verbose option uses unset variable - **fixed** — Fix Content-type header override when used in lowercase - **security** — Prevent script injection in HTML report [4.3.0 (2024-04-23)](https://github.com/Orange-OpenSource/hurl/blob/master/CHANGELOG.md#4.3.0) ======================================================================================================================== Thanks to [@tarampampam](https://github.com/tarampampam), [@CMiksche](https://github.com/CMiksche), [@CodeMan99](https://github.com/CodeMan99), [@OverkillGuy](https://github.com/OverkillGuy), [@hsanson](https://github.com/hsanson), [@jaminalder](https://github.com/jaminalder), [@teto](https://github.com/teto), [@humphd](https://github.com/humphd), [@mohammed90](https://github.com/mohammed90), See a [tour of this version here!](https://hurl.dev/blog/2024/04/24/announcing-hurl-4.3.0.html) Enhancements: * Support --user option per request [#2585](https://github.com/Orange-OpenSource/hurl/issues/2585) * Add isNumber predicate [#2538](https://github.com/Orange-OpenSource/hurl/issues/2538) * Create intermediate directory when using --report-html [#2531](https://github.com/Orange-OpenSource/hurl/issues/2531) * Use '-' to read Hurl file from standard input [#2523](https://github.com/Orange-OpenSource/hurl/issues/2523) * Add --from-entry option to execute a file from a given entry [#2500](https://github.com/Orange-OpenSource/hurl/issues/2500) * Add isIsoDate predicate (take a string, checks YYYY-MM-DDTHH:mm:sssZ) [#2427](https://github.com/Orange-OpenSource/hurl/issues/2427) * Add completion files in Linux/MacOS packages [#2401](https://github.com/Orange-OpenSource/hurl/issues/2401) * Fix tarball layout to Linux filesystem [#2401](https://github.com/Orange-OpenSource/hurl/issues/2401) * Add --max-filesize option to limit HTTP response [#2353](https://github.com/Orange-OpenSource/hurl/issues/2353) * Display source request when there are asserts/runtime errors [#2351](https://github.com/Orange-OpenSource/hurl/issues/2351) * Using explicit stdout output [#2312](https://github.com/Orange-OpenSource/hurl/issues/2312) * Prevent raw binary response to be displayed on standard output [#2306](https://github.com/Orange-OpenSource/hurl/issues/2306) * Add --netrc, --netrc-file and --netrc-optional options [#2094](https://github.com/Orange-OpenSource/hurl/issues/2094) * Generate bash completion for hurl/hurlfmt [#1864](https://github.com/Orange-OpenSource/hurl/issues/1864) * Generate powershell completion for hurl/hurlfmt [#1864](https://github.com/Orange-OpenSource/hurl/issues/1864) * Generate fish completion for hurl/hurlfmt [#1864](https://github.com/Orange-OpenSource/hurl/issues/1864) * Generate zsh completion for hurl/hurlfmt [#1864](https://github.com/Orange-OpenSource/hurl/issues/1864) * Add experimental --parallel / --jobs options [#88](https://github.com/Orange-OpenSource/hurl/issues/88) [#87](https://github.com/Orange-OpenSource/hurl/issues/87) Bugs Fixed: * Export begin_call, end_call timings fields to RFC3339 (microseconds) [#2699](https://github.com/Orange-OpenSource/hurl/issues/2699) * Fix standalone css for regex [#2693](https://github.com/Orange-OpenSource/hurl/issues/2693) * Fix charset parsing logic of Content-Type header [#2540](https://github.com/Orange-OpenSource/hurl/issues/2540) * Fix filename templatization bug under certain conditions [#2533](https://github.com/Orange-OpenSource/hurl/issues/2533) * Fix empty glob not always returning an error [#2517](https://github.com/Orange-OpenSource/hurl/issues/2517) * Fix hurlfmt query certificate for hurl output format [#2511](https://github.com/Orange-OpenSource/hurl/issues/2511) * Fix --test progress bar not displayed when verbose is used [#2506](https://github.com/Orange-OpenSource/hurl/issues/2506) * Per request output takes file-root into account for path resolving [#2445](https://github.com/Orange-OpenSource/hurl/issues/2445) * Fix silent error when verbose option use unset variable [#2444](https://github.com/Orange-OpenSource/hurl/issues/2444) * Fix Content-type header override when used in lowercase [#2416](ht _[Truncated at 4000 characters — full notes: https://github.com/Orange-OpenSource/hurl/releases/tag/4.3.0]_