This project has one already, so this isn't as much a copy & paste job. The main thing is to have the same things in the select block.
Then in django-cms you'll see it uses extend-ignore and extend-exclude. So where projects like this on have exclude and ignore, we want to update these to the extend- versions.
Then you'll see a # TODO fix separately block. Create one of these that includes all the checks that currently fail. These can be fixed in smaller PRs.
To make sure you can run ruff, it's a python package. So in your virtual env run python -m pip install ruff
Now any commits you make will get checked by the project's hooks. And if you add more, you just run the pre-commit install again.
Now you can run ruff using ruff check .
This will run the defined checks against the current directory. It's at this point you need to make judgements on if it's running on any directories that you could exclude because it's not part of the project. And then start adding to that # TODO list of rules.
Hopefully that's enough info to get started, but let me know if you've any questions. And of course, you can query things on slack as well. Maybe using the contributors channel for things realted to these changes.
I've made changes over the weekend to the pre-commit hooks in django-cms.
Ideally we'll have these consistent between projects. The main thing in the change is adopting the ruff linter and formatter.
In theory you should be able to just copy & paste the config from django-cms into these other projects;
https://github.com/django-cms/django-cms/blob/develop-4/.pre-commit-config.yml
The way ruff works is dictated by the
pyproject.toml
config which you can see here;https://github.com/django-cms/django-cms/blob/develop-4/pyproject.toml
This project has one already, so this isn't as much a copy & paste job. The main thing is to have the same things in the
select
block.Then in django-cms you'll see it uses
extend-ignore
andextend-exclude
. So where projects like this on haveexclude
andignore
, we want to update these to theextend-
versions.Then you'll see a
# TODO fix separately
block. Create one of these that includes all the checks that currently fail. These can be fixed in smaller PRs.To make sure you can run ruff, it's a python package. So in your virtual env run
python -m pip install ruff
Also make sure you have pre-commit setup;
Now any commits you make will get checked by the project's hooks. And if you add more, you just run the
pre-commit install
again.Now you can run ruff using
ruff check .
This will run the defined checks against the current directory. It's at this point you need to make judgements on if it's running on any directories that you could exclude because it's not part of the project. And then start adding to that
# TODO
list of rules.Hopefully that's enough info to get started, but let me know if you've any questions. And of course, you can query things on slack as well. Maybe using the contributors channel for things realted to these changes.