hurl/CHANGELOG.md
2023-07-03 16:08:18 +00:00

27 KiB

4.0.0 (2023-06-28)

Thanks to @elbart, @dross-carve, @kaala, @phaza, @FiloSottile, @linker3000, @pfeiferj, @devnoname120, @jasonkarns,

Breaking Changes:

  • The option --retry now takes a number that specifies the explicit number of retries (same behaviour than curl)
  • The jsonpath query/filter does not coerce single-entry collection any more #1469
  • hurl crate: LoggerOptionsBuilder replaces LoggerOption, retry option from RunnerOptionsBuilder have changed, and verbose option have been moved from RunnerOptionsBuilder to LoggerOptionsBuilder

Enhancements:

  • Add xpath filter #1698

  • Introduce curl --path-as-is option #1669

  • Deprecate word predicate when operator is available #1662

  • Make hurlfmt support several input files (like Hurl) #1650

  • Add timings info to very verbose mode #1644

  • Add waterfall to HTML report for a Hurl file #1613

  • Add proxy in Options section #1602

  • Add decode filter #1560

  • Add --error-format option to output HTTP context on errors #1542

  • Update --retry option to match curl option #1475

  • Add support for LINK, UNLINK, PURGE, LOCK, UNLOCK, PROPFIND and VIEW HTTP method #967

  • Support arbitrary HTTP methods #967

Bugs Fixed:

  • Export [Options] to JSON #1673

  • Use --data-binary for log curl command when posting file #1654

  • Fix extra request headers logs with large body. #1651

  • Print error message when no file is found with --glob option #1638

  • Support additional dot in jsonpath expression #1555

  • Make Call, Certificate, Cookie, Header, Request, Response, Timings, Version public #1548

  • Add quotes around certificate attribute in HTML export #1515

  • Change API in jsonpath / remove single-entry coercion #1469

3.0.1 (2023-06-01)

Thanks to @RWDai, @plul,

Bugs Fixed:

  • Do not parse key/value in certificate subject/issue any more #1583

  • Fix hurlfmt less predicate #1577

  • Patch encoding issue with xpath and libxml 2.11.1+ #1535

3.0.0 (2023-05-03)

Thanks to @DannyBen, @dermetfan, @joesantos418

3.0.0 is a major update because of breaking changes in Hurl crates.

Enhancements:

  • Add test attributes to JUnit XML #1460

  • Add certificate query #1384

  • Add daysAfterNow / daysBeforeNow filters #1309

  • Add errors in HTML report #1286

  • Use long options for curl command #1236

  • Add progress bar for tests #1224

  • Add date value/filters #1206

  • Implement isEmpty predicate #849

  • Add curl input to hurlfmt #316

Bugs Fixed:

  • Fix performance issue in Reader remaining method #1456

  • Parse empty JSON array body #1424

  • Add meta utf-8 charset to HTML report #1366

  • Use an uuid as identifier for the HTML Hurl file run report #1285 #1283

  • Improve HTML export #1059

2.0.1 (2023-02-01)

Thanks to @softprops,

Bugs Fixed:

  • Fix GraphQL query with variables to HTTP body request #1218

2.0.0 (2023-01-25)

Thanks to @imsVLC, @ad8lmondy, @jlecour, @ako, @jmoore34, @robjtede, @devnoname120, @dalejefferson-rnf, @dnsmichi,

Enhancements:

  • Add option ssl-no-revoke #1163

  • Add client cert/key to command line args and options #1129

  • Add connect-to option #1079

  • Add name attribute to JUnit report #1078

  • Check HTTP version and status first, then other asserts #1072

  • Support new one line string #1041

  • Add filters for htmlEscape and htmlUnescape #1038

  • Add toInt filter #1029

  • Use HTTP instead of HTTP/* for any HTTP version match #975

  • Add RunnerOptionsBuilder to create instance of RunnerOptions #972

  • Add support for LINK, UNLINK, PURGE, LOCK, UNLOCK, PROPFIND and VIEW HTTP method #967

  • Accept multiple --variables-file options #532

  • Add GraphQL support #504

  • Add --resolve option #379

Bugs Fixed:

  • Support '-' in JSONPath dot notation #1174

  • Fix cargo test --doc on Alpine #1124

  • Do not add newline at eof with --no-format option #1058

  • Fix variables update #1037

  • Fix querystring key parsing #1027

1.8.0 (2022-11-02)

Thanks to @chenrui333, @Jiehong, @Goffen,

Enhancements:

  • Add curl logs #899

  • Add query url #895

  • Make compact help #861

  • List all libcurl features with --version #836

  • Add --retry and --retry-interval option to retry request until asserts and captures are ok #525

Bugs Fixed:

  • Fix hurlfmt --color crash #957

  • Fix missing line in HTML output #924

  • Fix HTTP HEAD #903

  • Fix relative redirect #875

1.7.0 (2022-09-13)

Thanks to @danielbprice, @fourjay, @datamuc, @bdmorin, @humphd, @kautsig, @Karrq, @balroggg,

Enhancements:

  • Add string comparison predicates #798

  • Improve text summary #779 #593

  • Support NO_COLOR env variable (https://no-color.org) #713

  • Improve URL parsing error message #662

  • Display deprecated warning when using --progress and --summary option #637

  • Log body request in very verbose #628

  • Add options section #612

  • Install Hurl with npm #544

  • Add very verbose option #499

  • Add support for XML namespaces in XPath query #493

  • Use Template type for cookie value #473

Bugs Fixed:

  • Accept expression in comparison predicate #799

  • Fix file access authorization #674

  • Fix body file access #674

  • Fix implicit body asserts on compressed response body #567

  • Fix Brotli response body decoding #564

  • Fix sha256, md5, bytes query on compressed body #563

  • Fix redirection not followed #552

  • Encode string variables in JSON body #530

  • Fix curl export shell escape #530

  • Allow different types in JSON array #495

1.6.1 (2022-03-25)

Thanks to @humphd

Bugs Fixes:

  • Support @ for the username in [BasicAuth] section #513

  • Fix panicking while processing expected Regex value #514

1.6.0 (2022-02-10)

Thanks to @linjan, @adworacz, @humphd, @jpluscplusm,

Changes:

  • Add -A/--user-agent curl option to specify a User Agent for all requests of a file #452

  • Support filter with nested object in jsonpath expression #423

  • Add BasicAuth section #360

  • Add next request in interactive mode #268

  • Improving pattern for regex capture and matches predicates #4

Bugs Fixes:

  • Add additional characters in cookie value #466

  • Add square brackets in key-string #457

  • Fix Build in Alpine #448

  • Check that data file is a child of user provided context dir #405

  • Report error on missing closing quote for quoted String #403

1.5.0 (2021-12-09)

Thanks to @humphd, @tbolon, @ansscfc, @atcol, @realtica, @ramkumarkb

Changes:

  • Support globs with --test arg #387

  • Add ARM Testing with Circle CI #335

  • Option --html renamed to --report-html #333

  • Add JUnit XML Report Output #326

  • Add option --cacert #314

  • Display libcurl error code/message #310

  • Display curl -V version in hurl -V #309

  • Use --json parameter to write JSON to stdout #283

  • Using Environment Variables in Hurl files #122

Bugs Fixes:

  • Fix memory allocation #380

  • Fix Decimal float values #363

  • Fix build for ARM #334

1.4.0 (2021-10-18)

Thanks to @youhavethewrong, @fourjay, @tbolon, @Morreski, @andrejohansson

Changes:

  • Install via Scoop #289

  • Support spaces in filenames #287

  • Remove deprecated option --append #262

  • Improve HTML output for hurlfmt #260

  • Add option --ignore-asserts #254

Bugs Fixes:

  • Support tilde in URL #294

  • Fix Windows Terminal output for non-UTF-8 byte sequences #292

  • Fix asserts entries in JSON report #286

  • Fix --test mode in Windows (/dev/null) #273

  • Support key with underscore in jsonpath dot notation #269

  • Fix Windows installer PATH #267

1.3.1 (2021-09-11)

Bugs Fixes:

  • Accept hyphen in variable name #258

  • Support # in header value #255

1.3.0 (2021-09-03)

Changes:

  • Simplify JSON/HTML report generation #241

  • Add --progress option to print progressive status and executed count #236

  • Add endsWith predicate #234

  • Add --summary option to print tests metrics #232

  • Add md5 query #231

  • Add Hex body #230

  • Add dependency check in the CI #226

  • Use startswith/contains predicate with bytearray #224

  • Add subquery count #217

  • Add notEquals (!=) predicate #216

  • Accept predicate value raw-string and base64 #215

  • improve error messages when syntax is not recognized #213

  • Add operators for arithmetic predicates #210

  • Improve error messages if the URL contains an illegal character #207

  • Improve Error message for the countEquals predicate #195

  • Improve Error Message "Could not Resolve Host" #194

  • Add HTTP Headers in the session json file. #191

  • Improve Hurl Report #190

  • Output curl command-line in verbose mode #179

  • Normalize win64 packages names #178

  • Add checksum body query (md5, sha1, sha256) #102

Bugs Fixes:

  • Fix incorrect JSON export for lessThan predicate #212

  • Fix segmentation fault with Invalid XPath Assert #192

1.2.0 (2021-03-03)

Hurl 1.2.0 is now available for Windows.

Changes:

  • Create release for Windows #174

  • Run Test Integ in Windows #160

  • Support terminal colors in Windows #159

  • Update to Rust 1.50.0 #156

  • Support Hurl File with UTF8 BOM #151

  • Type input variables #120

Bugs Fixes:

  • Support wildcard in jsonpath #169

  • Reading body file is too slow #144

1.1.0 (2021-02-07)

Changes:

  • Add windows build documentation #150

  • Add verbose output when a ssl error occurs #145

  • Migrate integration scripts to python #126

  • Add option --interactive #121

  • Improve Template Support in JSON body #116

  • Update to Rust 1.49.0 #112

  • Add option --variables-file / --variables #42

Bugs Fixes:

  • Insecure mode for a full session #143

  • Display error message when hurl input can not be decoded #139

  • Cookie value in cookie section doesn't accept some value #132

  • Running cargo test in windows #128

  • Input Cookie file #124

1.0.0 (2020-12-18)

Changes:

  • Update to Rust 1.48.0 #107

  • Add type predicates #98

  • Arithmetic predicates for number (Integer or Float) #95

  • Add predicates to test value types #94

  • Add duration query #90

  • Add comparison predicates #89

Bugs Fixes:

  • Serialization of cookie query for Expires attributes with hurlfmt #100

  • Valid Jsonpath query is not parsed #93

0.99.14 (2020-11-17)

Changes:

  • Update hurlfmt usage #81

  • Migrate fully to Github Actions #69

  • Add Hurl File JSON export #65

  • Support wildcard value in implicit status code response #55

Bugs Fixes:

  • Can not parse user in URL (Basic Authentication) #73

  • MultipartFormData is not present in json export #63

  • Hurl usage doesn't end with newline #60

0.99.13 (2020-10-28)

Hurl 0.99.13 now uses libcurl under the hood instead of reqwest rust crate. This makes hurl even closer to curl in terms of behavior and semantic.

Changes:

  • Improve Cookie Asserts #5

  • Request Cookies Section should not change cookie store #25

  • Uncompress response body for queries #35

  • Add option --compressed #36

  • Predicates with not qualifier #39

  • Support Multiple Content-Encoding (at the same time) #40

  • Add option -u, --user #41

  • Do not add header Expect automatically #44

  • Add timeout option (--connect-timeout and --max-time) #30

  • Add option --compressed #34

  • Decompress response body #38

Bugs Fixes:

  • Fix Host" request header with specific port #6

  • Fix Assert with different types of values #37

0.99.12 (2020-08-27)

Initial Release (beta)