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_asciiandto_unicode). - Ada 2.0.0 can parse a URL into two different data structures, depending on your needs. The
ada::urlstructure stores the components of the parsed URL in different string instances, making updates fast. The newada::url_aggregatorstructure uses a single string buffer, thus minimizing memory usage at the expense of more work during updates. We expect that many users will adopt theada::url_aggregatorstructure.
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
- @vanemoraess made their first contribution in #245
- @OkanPinar made their first contribution in #254
Full Changelog: v1.0.4...v2.0.0