Cargo thanks & fund tools

Hi,

I think that it would be good to have two cargo tools:

  • cargo fund - that displays information about possible ways to financially support crate author(s)
  • cargo thanks - that allows to star GitHub repos

Similar tools are present in other package managers in different languages.

Recently I updated a crate that allows to star repos GitHub - woxtu/cargo-thank-you-stars: Give your dependencies stars on GitHub! , but unfortunatelly contact with crate author is difficult. Because of that I started to think that maybe it would be best to provide such tools directly on cargo level.

Please let me know what do you think about such possibility? If I would write such tools directly for cargo would such contribution be accepted?

Best regards, Michal

Issue about cargo fund Feature request : adding a funding field to manifest file format · Issue #8846 · rust-lang/cargo · GitHub

cargo fund already exists.

4 Likes

Note that placing that information in Cargo.toml as the primary source would make it hard to change in old versions. IIRC, the Cargo defaults were updated to not include author names by default. Are you sure Cargo.toml would be the right place for such forward-looking information?

5 Likes

Adding money to a system does have some potential negative effects.

  • Psychologically, it can turn a labor of love or fun hobby into underpaid work.
  • Also, if publishing packages looks like a way to profit, there's an incentive for people to produce more attractive-seeming packages of their own rather than to contribute improvements to existing packages.

Of course, the upside is that people get (some) compensation for (some) work. But, the most important thing for designing the system is: how good are the contents of crates.io, in the long run?

9 Likes

I would love to see metadata about financial support provided as first-party metadata from crates.io.

As others have mentioned, I don't think it should be embedded in the manifest, because that makes it harder to update. I think it makes sense to allow owners to set that information, and to also allow owners to set a default for all their crates.

Once that metadata is readily available, first party, then I would personally be thrilled to see tooling like this integrated into cargo.

1 Like

Tidelift supports crates-io crates:

1 Like

thanks.dev is another one that has support for the Rust ecosystem. I had never heard of it before December when Sentry started using it (a nice surprise to me!)

1 Like