Skip to content

Commit 4ec6905

Browse files
committed
Add section about pylint to known issues in design document
1 parent 96a117d commit 4ec6905

File tree

1 file changed

+34
-8
lines changed

1 file changed

+34
-8
lines changed

doc/design.rst

Lines changed: 34 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,7 @@ Known Issues
216216

217217
This section documents flaws, sins, and known issues with the current design and/or its current implementation that were either known upfront or surfaced through the course of implementing it. Additionally, it attempts to explain why certain choices were made at the time, so one can better understand whether it may be reasonable to make changes now or in the future.
218218

219+
219220
Passing files as individual arguments on the CLI
220221
++++++++++++++++++++++++++++++++++++++++++++++++
221222

@@ -378,31 +379,56 @@ Advantages:
378379
- Simplifies adopting ruff for linting
379380

380381

381-
Pylint Instead of Ruff
382-
+++++++++++++++++++++++
382+
Pylint
383+
++++++
383384

384385
**Description:**
386+
We are currently using Pylint instead of Ruff.
385387

386388
**Downsides:**
387389

388-
- Pylint slower and less usable in pre-commit hooks.
390+
- Pylint is slower and less usable in pre-commit hooks
391+
- It is an additional tool, therefore at leas one more processing run of the code is required
392+
- No LSP (e.g. compare to `ruff lsp`)
389393

390394
**Rationale/History:**
391395

392-
- Transitioning to Ruff provides better usability and speed for linting processes.
393-
- Pylint was used, but Ruff's emergence offers superior performance in many areas.
396+
- Well known
397+
- Pylint provides built-in project score/rating
398+
- Project score is good for improving legacy code bases which haven't been linted previously
399+
- Plugin support
394400

395401
**Ideas/Possible Solutions:**
396402

397-
- Tentatively use Ruff for linting:
398-
- Evaluate impacts on scoring and migration strategy adjustments.
399-
- Continue using Pylint for evaluation/rating while Ruff is integrated for linting.
403+
Replacing Pylint with Ruff for linting would provide significant performance improvement. Additionally, Ruff offers an LSP and IDE integrations and is widely used these days. Additionaly there would be an additional synergy if we adopt ruff for formatting the code base.
404+
405+
Transitioning to Ruff requires us to adjust the migration and improvement strategies for our projects:
406+
407+
- Currently, our codebase improvements are guided by scores. However, with Ruff, a new approach is necessary. For example, we could incrementally introduce specific linting rules, fix the related issues, and then enforce these rules.
408+
409+
- The project rating and scoring system will also need modification. One possiblity would be to run Ruff and Pylint in parallel, utilizing Pylint solely for rating and issue resolution while Ruff is incorporated for linting tasks.
410+
411+
412+
Security Linter
413+
+++++++++++++++
414+
Currently the secuexit zero
415+
416+
417+
Rationale:
418+
- simplify adaption into projects
419+
- rating makes it still visiable
420+
-
400421

401422

402423
Workflows Dependency Structure
403424
++++++++++++++++++++++++++++++
404425

405426
**Description:**
427+
The common Workflows have been undergooging common and frequent changes, as their full
428+
required features are still discovered. Therfore no clear interface and reqruirements
429+
on the workflow "interfaces" have been documented. Currently it is with most workflows
430+
either get all of them or understand what they do and exchange before one can easily
431+
customize the workflows.
406432

407433
**Downsides:**
408434

0 commit comments

Comments
 (0)