dotless 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. dotless-1.0.0/.pre-commit-hooks.yaml +6 -0
  2. dotless-1.0.0/CHANGELOG.md +32 -0
  3. dotless-1.0.0/LICENSE +674 -0
  4. dotless-1.0.0/MANIFEST.in +3 -0
  5. dotless-1.0.0/PKG-INFO +278 -0
  6. dotless-1.0.0/README.md +242 -0
  7. dotless-1.0.0/pyproject.toml +60 -0
  8. dotless-1.0.0/setup.cfg +4 -0
  9. dotless-1.0.0/src/dotless/__init__.py +3 -0
  10. dotless-1.0.0/src/dotless/__main__.py +3 -0
  11. dotless-1.0.0/src/dotless/analysis.py +350 -0
  12. dotless-1.0.0/src/dotless/cli.py +173 -0
  13. dotless-1.0.0/src/dotless/config.py +91 -0
  14. dotless-1.0.0/src/dotless/formats.py +148 -0
  15. dotless-1.0.0/src/dotless/lexer.py +286 -0
  16. dotless-1.0.0/src/dotless/rules.py +127 -0
  17. dotless-1.0.0/src/dotless/runtime.py +132 -0
  18. dotless-1.0.0/src/dotless/scanner.py +418 -0
  19. dotless-1.0.0/src/dotless.egg-info/PKG-INFO +278 -0
  20. dotless-1.0.0/src/dotless.egg-info/SOURCES.txt +37 -0
  21. dotless-1.0.0/src/dotless.egg-info/dependency_links.txt +1 -0
  22. dotless-1.0.0/src/dotless.egg-info/entry_points.txt +2 -0
  23. dotless-1.0.0/src/dotless.egg-info/requires.txt +3 -0
  24. dotless-1.0.0/src/dotless.egg-info/top_level.txt +1 -0
  25. dotless-1.0.0/tests/fixtures/c/bad.c +90 -0
  26. dotless-1.0.0/tests/fixtures/c/safe.c +67 -0
  27. dotless-1.0.0/tests/fixtures/js/bad.js +27 -0
  28. dotless-1.0.0/tests/fixtures/js/safe.js +30 -0
  29. dotless-1.0.0/tests/fixtures/python/bad.py +25 -0
  30. dotless-1.0.0/tests/fixtures/python/safe.py +28 -0
  31. dotless-1.0.0/tests/fixtures/rust/bad.rs +17 -0
  32. dotless-1.0.0/tests/fixtures/rust/safe.rs +19 -0
  33. dotless-1.0.0/tests/fixtures/vala/bad.vala +30 -0
  34. dotless-1.0.0/tests/fixtures/vala/safe.vala +23 -0
  35. dotless-1.0.0/tests/test_cli.py +174 -0
  36. dotless-1.0.0/tests/test_formats.py +69 -0
  37. dotless-1.0.0/tests/test_robustness.py +41 -0
  38. dotless-1.0.0/tests/test_rules.py +119 -0
  39. dotless-1.0.0/tests/test_runtime.py +50 -0
@@ -0,0 +1,6 @@
1
+ - id: dotless
2
+ name: dotless
3
+ description: Find dotted/dotless I bugs caused by locale-dependent case mapping.
4
+ entry: dotless scan --force-exclude
5
+ language: python
6
+ files: '\.(c|h|cc|cpp|cxx|hh|hpp|vala|gs|py|js|mjs|rs)$'
@@ -0,0 +1,32 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project are documented in this file. The format
4
+ is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the
5
+ project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [1.0.0] - 2026-11-04
8
+
9
+ First release.
10
+
11
+ ### Added
12
+
13
+ - `dotless scan` for C/C++, Vala, Python, JavaScript (gjs) and Rust, with a
14
+ lexer that ignores comments and string contents.
15
+ - Nine rules (DL001–DL009), each backed by measurements under `C.UTF-8`,
16
+ `tr_TR.UTF-8`, `az_AZ.UTF-8` and `tr_TR.ISO-8859-9` on glibc
17
+ (`docs/research.md`).
18
+ - Severity analysis: **high** when the result is compared with an ASCII
19
+ constant containing the affected letter, or used as a lookup key; findings
20
+ that compare only with constants without i/I are not reported.
21
+ - Output formats: text, JSON, SARIF 2.1.0 and GitLab Code Quality.
22
+ - `[tool.dotless]` configuration in `pyproject.toml` (`exclude`,
23
+ `min-severity`, `disable`; Python 3.11+).
24
+ - `--disable`, `--color`, `--force-exclude`, `--config`, `--no-config` and
25
+ `--exit-zero` options; exit status 0/1/2.
26
+ - Inline suppression with `dotless: ignore`, `dotless: ignore[RULE]` and
27
+ `dotless: ignore-file`.
28
+ - `dotless run -- COMMAND` to compare a program's output under Turkish and
29
+ Azerbaijani locales with `C.UTF-8`.
30
+ - pre-commit hook, GitLab CI template and GitHub Actions example.
31
+
32
+ [1.0.0]: https://gitlab.com/rehimovv/dotless/-/releases/v1.0.0