-
Notifications
You must be signed in to change notification settings - Fork 37
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
Create a place where community rules can be stored #809
Comments
For me anything that meets basic criteria - and if we are flooded, we can start adding special rules (but I doubt it will be the issue). I believe selecting issues could be easier if we add "disabled" feature to the rules - allowing rules to be disabled by default and only included if there are enabled (maybe similarly to Robotidy with -c rule-name:enabled=True, or --enable). Thanks for that we can avoid situation where users include two contradicting rules to the project. With this feature we could set all issues in this project as disabled. I agree on id convention. To make adding the rules easier we should have precommit that would warn if rule with such id or name already exists (and maybe even propose next free id). |
A man learns his entire life :) Good idea with disabled by default. We can also provide a default
I agree that having people frequently contributing to the core repo may increase the risk of some errors and bugs. On the other hand, it will only increase the popularity of the package. If there would be a separate repository, it would be hard to promote it in the community, I think. I'm not saying we should go this way, just pointing out a "marketing" side of it. 😃
What would be better?
I think I have answered myself, but let's hear from you. |
This default configuration file is very good idea - maybe we can provide something like that for default rules as well? There was similar idea (to generate config file from current config) but maybe we can just provide "generate default as config file, together with short description as comment". It would make it easy to see what rules are active, and to enable/disable them if necessary. Yeah, it's easier to markete something that we already have (just 'extension' or extra place for rules in our place) and have already some recognition. I'm also in favour of 3 option - we avoid risk of confliccts and it will be easier to see that given rule is "custom offical" one. |
Summing up...
On the 6th point, I am not entirely sure. Maybe we should install the community rules by default as well, but just keep them disabled until the users explicitly allow them in their configuration files? Let me know if all of the above is true and agreed or we need some more discussion. |
Very good summary.
We can install them by default. If they are disabled by default and will go by review process it should be fine. |
There's one more thing that needs to be decided. How we are going to handle these community rules from the CLI?
|
My idea of community rules are optional rules, that can be easily enabled by the users if they want to. They should work the same as built in rules but only be disabled by default. With that, I think:
|
I agree, all that makes sense. Although, I am not able to start working on that for the next month, as I have some other stuff to do and I will be unavailable for some time also. Just letting you know :) |
It's very good to have everything planned to avoid unnecessary work / initial issues. I still have some work in the Robotidy so I will focus on that, then take some old issues from the Robocop first. |
Yes, we should create more issues, I already forgot about some tasks here and I had to reread it all :) |
Ok, I will create them by the end of tomorrow 👍🏻 |
As the idea sparked in the comments of #680, here is a follow-up issue to discuss the topic and how it can be achieved.
The idea
A centralized place for the rules that do not fit into the core of Robocop, from where the users can easily download them and use in their projects.
The reasons why a rule may not fit into the core of Robocop:
I imagine this in 3 ways (but there may be more, and even better than these):
pip install robotframework-robocop[extra-rules]
which will install them to their local Robocop instance (proposed by @bhirsz here).Things for further investigation
Rule candidates
I'll just mention the issues where the users asked for a specific rule to be added, which we rejected, due to various reasons.
Test Teardown
/Setup
andTeardown
/Setup
are used within the same test suiterobot:continue-on-failure
tag[ Tags ]
) or not ([Tags]
)Let's see where we can get with this idea.
The text was updated successfully, but these errors were encountered: