Skip to content

Releases: ada-url/ada

v2.2.0

21 Apr 00:07
Compare
Choose a tag to compare

What's changed

  • upgrade release script by @anonrig in #332
  • refactor: normalize has_credentials method name by @anonrig in #333
  • fix: bad usage of std::string_view::npos by @lemire and @codebytere in #334
  • refactor base prefix and rename fragment to hash by @anonrig in #335
  • adds friend declarations to ada::url and ada::url_aggregator by @lemire in #337
  • refactor: move update base methods to private by @anonrig in #338
  • build: add missing import.cmake by @anonrig in #341
  • feat: adding a new high-precision benchmarking tool (for Linux only). by @lemire in #343
  • fix: look for ICU. by @lemire in #344

Full Changelog: v2.1.0...v2.2.0

v2.1.0

17 Apr 17:53
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.0.0...v2.1.0

v2.0.0

30 Mar 21:05
302b7f3
Compare
Choose a tag to compare

We are happy to announce the second release of ada (v2.0.0), a fast WHATWG-compliant URL parser written in modern C++. The Ada parser has been part of Node.js since version v19.7.0

What is new in version 2.0.0

  • The first version of Ada required the ICU library as a dependency. Unfortunately, ICU is not always available: it is rarely present under Windows or Android. Ada 2.0.0 has no dependency: we implement our fast Unicode functions (to_ascii and to_unicode).
  • Ada 2.0.0 can parse a URL into two different data structures, depending on your needs. The ada::url structure stores the components of the parsed URL in different string instances, making updates fast. The new ada::url_aggregator structure uses a single string buffer, thus minimizing memory usage at the expense of more work during updates. We expect that many users will adopt the ada::url_aggregator structure.

For some tasks, the new ada::url_aggregator can be nearly twice as fast while using less memory.

We present more details and benchmarks in the blog post: https://yagiz.co/announcing-ada-url-parser-v2-0

This release was produced by Yagiz Nizipli, Daniel Lemire, and Miguel Teixeira. We are thankful to the whole community for their comments and support.

New Contributors

Full Changelog: v1.0.4...v2.0.0

v1.0.4

26 Feb 20:17
880f10c
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.0.3...v1.0.4

v1.0.3

22 Feb 19:24
Compare
Choose a tag to compare

What's Changed

  • fix: check and eliminate non-ascii on port setter by @anonrig in #230

Full Changelog: v1.0.2...v1.0.3

v1.0.2

22 Feb 14:53
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.0.1...v1.0.2

v1.0.1

07 Feb 22:30
Compare
Choose a tag to compare

This release fixes a bug of not stripping trailing whitespace from pathname when input is empty on URL search and hash setter.

What's Changed

  • test: add code coverage for nodejs by @anonrig in #212
  • fix: potentially strip trailing spaces from the opaque path by @anonrig in #213

Full Changelog: v1.0.0...v1.0.1

v1.0.0

06 Feb 19:18
Compare
Choose a tag to compare

We are happy to announce the first release of ada (v1.0.0) a fast WHATWG-compliant URL parser written in modern C++.

  • It has been adopted by Node.js and will be part of future releases.
  • The parser is fast. In some cases, it is almost twice as fast as the C++ URL parser present in recent versions of Node.js.
  • The parser is correct: it passes the full WHATWG and Node.js test suites.
  • Its modern and safe interface avoids bad surprises.
  • It supports both exception and exception-free usage.
  • We provide complete and accurate documentation.
  • We run complete continuous-integration tests on varied systems supporting C++17: big- and little-endian, windows, macOS, Linux, etc.
  • It is available both as a CMake library and as a single-header package (simply drop ada.h and ada.cpp in your project).

This release would not have been possible without the contributions of Robert Nagy, Miguel Teixeira, and Anna Henningsen.