Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Example of ecosystem overview #63

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Wodann
Copy link
Contributor

@Wodann Wodann commented Oct 14, 2019

An example implementation of the proposal in rust-gamedev/rust-gamedev.github.io#6 for a WG-controlled ecosystem overview.

1. Liveness

  • Flag to indicate whether the crate is actively/passively/not maintained
  • Version of latest crate release
  • Version of crate when it was last evaluated
  • Number of Github stars (to indicate popularity)

Functionality is limited as this is merely Markdown. If we have a website, we could allow sorting and filtering of crates.

2. Feature comparison

I chose to highlight which graphics drivers are supported by the different crate, but I am open to input on the features that we want to compare.

One issue that I ran into is that the number of columns that can be used is limited.

3. Compatibility

I'd have liked to add the minimum rustc version, but it wasn't known for these specific crates.

I wasn't able to clearly show dependencies between different layers in the topmost ecosystem table. If anyone has any nice ideas how to do this in Markdown, please let me know. Otherwise putting this on the website might be an option.

@Lokathor
Copy link
Member

Do people use the github stars for crates they use? I only use it for the occasional non-rust project I want to look at again later, and I try to keep my stars list as small as possible.

@Wodann
Copy link
Contributor Author

Wodann commented Oct 14, 2019

An alternative would be the number of downloads on crates.io. You can use the total number of downloads of a crate or the number of downloads for a specific version. The latter might be a better option as the total downloads can be skewed if you compare two crates that are on a short and long release cycle, respectively.

@Lokathor
Copy link
Member

Yeah, downloads of the version evaluated would be good.

@Lokathor
Copy link
Member

  1. We think that a wiki page might be a better place to put this than in the repo files.

  2. format changes:

  • Deprecated crates should go in a separated list, at the end of this page or on some other page. Either way, we want to filter them away from being mixed in with the active and stable-maintained crates.
  • We should try and display automated info for downloads/past-90-days or whatever other automated download rate info crates.io has. This is not a perfect metric, but it's a rough metric of how many people are using a crate, which determines roughly how easy it is to get help.

@Wodann
Copy link
Contributor Author

Wodann commented Oct 17, 2019

  1. Sounds good to me.

Deprecated crates should go in a separated list, at the end of this page or on some other page. Either way, we want to filter them away from being mixed in with the active and stable-maintained crates.

Is the idea to remove the maintenance tag altogether in that case? The only remaining two options are: actively-developed and passively-developed, I think.

We should try and display automated info for downloads/past-90-days or whatever other automated download rate info crates.io has. This is not a perfect metric, but it's a rough metric of how many people are using a crate, which determines roughly how easy it is to get help.

Are there any options for automatically deploying this to Github wikis? I am not that familiar with that particular use case.

Did anyone have any ideas for showing dependencies between different layers in the topmost ecosystem table?

@17cupsofcoffee
Copy link
Collaborator

17cupsofcoffee commented Oct 17, 2019

For total download counts, you can use Shields.io to embed a badge. Unfortunately, there isn't one for monthly downloads yet - I imagine if Crates.io exposes that data it could be added, though?

EDIT: The API does indeed return a recent_downloads metric (although what exactly is considered 'recent' isn't clear to me - I think it's 90 days?). I might raise a PR to add that to Shields.io later.

@17cupsofcoffee
Copy link
Collaborator

17cupsofcoffee commented Oct 17, 2019

Raised an PR on Shields.io to make recent download information available in pretty badge format: badges/shields#4187

@17cupsofcoffee
Copy link
Collaborator

17cupsofcoffee commented Oct 17, 2019

My PR got merged (the people working on Shields are lovely, by the by 😄) - the recent downloads badge should show up on https://shields.io/category/downloads in the next few days.

EDIT: And it's live 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants