19 Commits

Author SHA1 Message Date
Stephen Finucane
164e5d0f5f Run mypy from tox
This avoids the need to duplicate our dependency list in multiple
places and allows us to take advantage of tox's dependency management
infrastructure, to ensure we always get the latest and greatest version
of a package allowed by upper-constraints.

While here, we also update the versions of the remaining pre-commit
hooks and change the indentation of the tox file to align with the two
indent spacing used for other SDK projects. This makes copy-pasting
easier.

Change-Id: Ibde8ecda673b2346c82aab68d4f4b49be08414ae
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2026-02-13 15:45:03 +00:00
Stephen Finucane
eb7c4c61a9 Add new hacking rules
To catch some obvious issues.

Change-Id: Ic0ddc95100811e7b313b519aad7d687a1415020b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-11-07 15:45:51 +00:00
Stephen Finucane
20ad83bf84 pre-commit: Bump versions
We need to rename two hooks.

Change-Id: I15582a23da6ea6babf2b277ff443b7cdb764c9f9
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-10-10 10:40:55 +01:00
Stephen Finucane
7c7c066096 Bump Python version used for linters to 3.10
Change-Id: I693516fc2a08218c50d83a3ab121b51254f97958
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-05-07 17:55:39 +01:00
Stephen Finucane
ec4fd81c11 pre-commit: Enable mypy
To ease migration of various commands from OSC to SDK.

Change-Id: I4645237e8808239e4d605f7f45138449c9439949
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-04-01 13:14:47 +01:00
Stephen Finucane
9c7a5d4e51 pre-commit: Bump versions
Apply manual changes required by ruff. Automatic changes were done
separately.

Change-Id: I7db65bd2ac3f31b0479699946398752d8d729338
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-03-31 17:48:31 +01:00
Stephen Finucane
f98006ca9d pre-commit: Migrate pyupgrade to ruff
Change-Id: Ic50d2a5e0bc9dcdfe29f382607135cab510cd396
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-09-12 18:08:23 +01:00
Stephen Finucane
fc6852cd94 pre-commit: Migrate bandit to ruff
The name of the errors change and we need to move things around a
little, but it's otherwise a straight swap.

Change-Id: I0a19765ebeaa14c0534faa1542165b76ed2bf4e2
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-09-12 18:08:23 +01:00
Stephen Finucane
519fa7aabc pre-commit: Migrate from black to ruff format
Change-Id: I28ca7d31d30272002799f3e2832105dc67c60538
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-08-29 15:55:39 +01:00
Stephen Finucane
2ba90581d5 pre-commit: Migrate from flake8 to ruff
Well, mostly. We still keep our own flake8 hooks and the hacking hooks
enabled. Everything else can be handled by ruff.

Doing this enables a couple of hacking checks that were previously
unaddressed. It also highlights a few cases that flake8 missed. Both are
addressed.

Change-Id: If81c7055e9ef692425da2789bae18a96d04b104f
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-08-29 15:55:13 +01:00
Stephen Finucane
869b07eded pre-commit: Bump versions
We also drop the default language setting: everything is Python 3
nowadays.

Change-Id: I9dc9573a86c93416d1bbbc782dac76ecdda6effd
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-08-29 10:58:38 +01:00
Stephen Finucane
0fd107e6c7 pre-commit: Add pyupgrade hook
Another day, another useful hook. We also ignore the preceding patch
that actually did the work, renaming the incorrect named file in the
process.

Change-Id: I412827761fbdeb36702ebaf5c1b727c62e629299
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-05-03 19:18:45 +01:00
Stephen Finucane
0646f9b4e4 tox: Remove bandit skips, run via pre-commit
Most of these skips were unnecessary. The few that did generate warnings
could be skipped.

We also set 'skip_install' since there's no reason to build the package
for linting purposes.

Change-Id: I9644e5c19720b9c41c60e0a5882b7cd7f6a71f7b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-04-26 13:17:15 +01:00
Stephen Finucane
ee23995004 pre-commit: Bump versions
We fold in the new black changes also.

Change-Id: I326a0529b6b9f2aa9fbc33862567131839460797
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-04-23 12:22:26 +01:00
Stephen Finucane
9c2e5d5648 pre-commit: Bump linter versions
We also migrate to the native hacking pre-commit hook.

Change-Id: Idb5a825c20cb7f189997a4d6c3a9a88218fdb335
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-01-23 11:47:52 +00:00
Stephen Finucane
3c9afe69bb pre-commit: Enable black
Since our pep8 tox env now runs pre-commit, we can ensure that black
styling will be maintained.

Change-Id: Ifad1d67a83c4979b4f4de71de0124613d1133560
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2023-05-10 10:51:30 +01:00
Stephen Finucane
5cb16aebcc Use pre-commit for 'pep8' tox target, bump versions
We want to bump the versions of hacking, but doing so requires changes
in two places: '.pre-commit-config.yaml' and 'tox.ini'. This is silly:
we can simply use tox to handle pre-commit and leave all other
dependencies to pre-commit. Do this, migrating bandit to pre-commit and
bumping the other dependencies in the process.

We remove the 'fast8' target and tool, since pre-commit is plenty fast
here.

Change-Id: Ifdc582ecc3b4479ea9ed9abcb16577c6e8b2f5c1
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2023-05-10 10:51:00 +01:00
Stephen Finucane
e49ad1795b pre-commit: Allow unsafe YAML
We're using tags in '.zuul.yaml', which requires use of the unsafe
parser [1].

[1] https://stackoverflow.com/a/45967047

Change-Id: Ib97480f6fcaba7406ffe284e1935744346684b8b
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2022-07-04 12:16:16 +01:00
Stephen Finucane
87e6828678 Add pre-commit
This is helpful to automate code style checks at runtime. We include
documentation on how to run this as well as a general overview of style
guidelines in OSC.

Change-Id: I2dc5a0f760ce53269ae25677560b2611cc6bfd91
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2021-03-11 16:20:15 +00:00