bevyengine / bevy_github_ci_template

Apache License 2.0
202 stars 45 forks source link

Allow some clippy lints that complain about common bevy code #16

Closed rparrett closed 2 years ago

rparrett commented 2 years ago

It's pretty common when writing bevy code to create complex types or systems with a lot of arguments.

Users may just ignore these lints locally if they use clippy at all. But the current CI setup would then fail and force the user to dig into the workflows which may be rather arcane to a user unaccustomed to using github workflows.

I think that these defaults might be better for new users. Bevy itself allows type_complexity in CI and allows too_many_arguments in many files in the repo.

mockersf commented 2 years ago

I personally would never allow those lints directly in CI, but I'm not the target user for the template 🤷

rparrett commented 2 years ago

Do you mean that you would prefer skipping the workflow change, but keeping the attributes in main.rs? I wouldn't mind that.

alice-i-cecile commented 2 years ago

Do you mean that you would prefer skipping the workflow change, but keeping the attributes in main.rs? I wouldn't mind that.

Yes, I think that's a more idiomatic approach here :)

rparrett commented 2 years ago

Sounds good. I also thought it might be a good idea to add a comment explaining why those are being allowed.

Let me know what you think about that. It takes up a fair bit of space, but globally disabling lints without some sort of explanation doesn't seem quite right.

mockersf commented 2 years ago

Do you mean that you would prefer skipping the workflow change, but keeping the attributes in main.rs? I wouldn't mind that.

No, I heavily dislike blanket allowing lints on my personal projects...

But this change makes sense for ease of use