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

Add READMEs to all crates and clarify they are part of Bevy #9995

Closed
wants to merge 7 commits into from

Conversation

ameknite
Copy link
Contributor

@ameknite ameknite commented Oct 2, 2023

Objective

The majority of the Bevy crates don't have a README.md.

Screenshot 2023-10-01 at 20 19 33

I want to add a README so that when search for a crate on crates.io, it reports that:

  • The crate is a component of the BevyEngine.
  • The crate is not intended for independent use.

- Clarify that they are components of the BevyEngine.
- Emphasize that they are not intended for independent use.
crates/bevy_utils/README.md Outdated Show resolved Hide resolved
@alice-i-cecile alice-i-cecile added C-Docs An addition or correction to our documentation A-Meta About the project itself labels Oct 2, 2023
Copy link
Member

@alice-i-cecile alice-i-cecile left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A little more color about what each crate does wouldn't hurt, but I think this is an improvement.

@Vrixyz
Copy link
Member

Vrixyz commented Oct 2, 2023

A readme for each crate is definitely an improvement.

I'm approving that PR, but I'd like to nitpick on potential problems:

modular design

We should make sure the wording

It is not intended for independent use, use it only as a part of Bevy

is not too strong for a few crates?

As bevy_ecs can be (and is1) used without all other bevy ecosystem, adding this disclosure to the wrong crate might drive users off the carefully though out modularity.

From my understanding, the crates listed seem to be indeed not thought out for independent use (yet ?) 👍.

Trust authority

Bevy Animation is a component of the Bevy Engine

I agree it's a good information to share, but it might be a dangerous information to have in readme, because it teaches users to rely on readme information, where a malicious user could create a fake Readme saying their crate is part of bevy organisation and then do bad things™️ (phishing, malicious packages...).

Footnotes

  1. https://store.steampowered.com/app/2198150/Tiny_Glade/

@ameknite
Copy link
Contributor Author

ameknite commented Oct 2, 2023

@Vrixyz
What about something like this?

Bevy App

Bevy App is a component of the Bevy Engine. You can revise the list of official crates here.

This crate is intended to be used as a part of Bevy and not independently. However, feel free to use it if it fits your needs.

@ameknite
Copy link
Contributor Author

ameknite commented Oct 2, 2023

@Vrixyz

"and then do bad things™️ (phishing, malicious packages...)."
I don't think the crates.io policy allows it.
rust-lang/rfcs#3463

Copy link
Member

@alice-i-cecile alice-i-cecile left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"revise" needs to change to "review". This is better boilerplate otherwise though!

crates/bevy_a11y/README.md Outdated Show resolved Hide resolved
crates/bevy_app/README.md Outdated Show resolved Hide resolved
Indicate bevy crate
crates/bevy_a11y/README.md Outdated Show resolved Hide resolved
@mockersf
Copy link
Member

mockersf commented Oct 3, 2023

I think linking to the GitHub repo for the list of crates is wrong. To have a good list, we could add a GitHub group to the authorised publishers on crates.io, then we could link to it.

A team named official would have a link like https://crates.io/teams/github:bevyengine:official. It doesn't work for now as it doesn't exist. Currently all crates are listed at https://crates.io/users/cart but there are a few extra things.

@ameknite
Copy link
Contributor Author

ameknite commented Oct 3, 2023

@mockersf Oh, that would be great, but I think Cart is the only one with the permissions. For now, I believe linking to the GitHub repo is a good temporary solution. Or should I change the link to https://crates.io/users/cart ?

@mockersf
Copy link
Member

mockersf commented Oct 4, 2023

let's try and see if we can get that team created and added as a publisher 👍

@mockersf
Copy link
Member

we now have https://crates.io/teams/github:bevyengine:publish as an owner of the crates on crates.io 🎉

@ameknite ameknite closed this May 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Meta About the project itself C-Docs An addition or correction to our documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants