Skip to content

Update scraper to crates.io #285

@haydonryan

Description

@haydonryan

Heya - thanks for an awesome crate. :)

I'm using this in my project to scrape html. Today I introduced a cargo deny check step to my workflow which failed due to:

error[unmaintained]: fxhash - no longer maintained
   ┌─ /home/haydon/workspace/rust-ebook-tts/Cargo.lock:22:1
   │
22 │ fxhash 0.2.1 registry+https://github.com/rust-lang/crates.io-index
   │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ unmaintained advisory detected
   │
   ├ ID: RUSTSEC-2025-0057
   ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2025-0057
   ├ The fxhash crate is no longer maintained.

     The repository is stale and owner is no longer active on GitHub.

     Please take a look at [rustc-hash](https://github.com/rust-lang/rustc-hash) instead.
     ```
   ├ Announcement: https://github.com/cbreeden/fxhash/issues/20
   ├ Solution: No safe upgrade is available!
   ├ fxhash v0.2.1
     └── selectors v0.31.0
         └── scraper v0.24.0
             └── ebook2audiobook v0.2.0

Looking at this repository - the main branch was updated two weeks ago to use selectors v0.33 this version contains the commit which replaces fxhash with rust-hash.

Your last release v0.24.0 lists bumping selectors to v0.28, but crates.io has this as 0.31.0.

Would you please be able to cut a new release with the current main branch and upload to crates if it's ready to go?

Would you consider adding cargo deny check to your CI? (I'm happy to submit a PR for this).

If you don't mind me suggesting but here are some potential ideas for improvements to Release Process:

  1. Automate creating a draft release if you tag a commit with a version number. (I'm doing this here: mine is complicated as I'm providing a matrix of binaries). By creating a draft it allows you to edit the notes etc before publishing.
  2. Trigger a second workflow to push to crates.io when a release is published (via 1)

I'm happy to help draft up some actions here, but personally feel it's better done by the owner of the repo.

Have a great day!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions