lychee/examples
Matthias 166c86c30e
Use tokenizer for extraction; add benchmark (#424)
This avoids creating a DOM tree for link extraction and instead uses a `TokenSink` for on-the-fly extraction. In hyperfine benchmarks it was about 10-25% faster than the master.

Old: 4.557 s ± 0.404 s
New: 3.832 s ± 0.131 s

The performance fluctuates a little less as well.

Some missing element/attribute pairs were also added, which contain links according to the HTML spec. These occur very rarely, but it's good to parse them for completeness' sake.

Furthermore tried to clean up a lot of papercuts around our types. We now differentiate between a `RawUri` (stringy-types) and a Uri, which is a properly parsed `URI` type.
The extractor now only deals with extracting `RawUri`s while the collector creates the request objects.
2021-12-16 18:45:52 +01:00
..
builder Bump reqwest from 0.11.6 to 0.11.7 (#415) 2021-12-01 16:06:38 +01:00
client_pool Use tokenizer for extraction; add benchmark (#424) 2021-12-16 18:45:52 +01:00
collect_links Use tokenizer for extraction; add benchmark (#424) 2021-12-16 18:45:52 +01:00
extract Use tokenizer for extraction; add benchmark (#424) 2021-12-16 18:45:52 +01:00
simple Bump version to 0.8.1 (#396) 2021-11-18 00:59:28 +01:00