sarj-python-lint 0.9.0__tar.gz → 0.10.1__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 (35) hide show
  1. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/PKG-INFO +1 -1
  2. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/pyproject.toml +1 -1
  3. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_repeated_string_literal.py +3 -3
  4. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/.gitignore +0 -0
  5. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/README.md +0 -0
  6. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/__init__.py +0 -0
  7. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/__main__.py +0 -0
  8. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/_secret_names.py +0 -0
  9. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/py.typed +0 -0
  10. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rule_base.py +0 -0
  11. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/__init__.py +0 -0
  12. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/_logging.py +0 -0
  13. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/_registry.py +0 -0
  14. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/_sql.py +0 -0
  15. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/inefficient_string_concat_in_loop.py +0 -0
  16. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_aggregation_in_store_query.py +0 -0
  17. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_comment_cruft.py +0 -0
  18. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_fat_try_blocks.py +0 -0
  19. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_fstring_in_log.py +0 -0
  20. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_isinstance_union_chain.py +0 -0
  21. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_query_with_many_joins.py +0 -0
  22. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_secret_in_log.py +0 -0
  23. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_select_star.py +0 -0
  24. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_sentinel_return_on_except.py +0 -0
  25. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_sequential_await.py +0 -0
  26. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/no_unreachable_after_terminal.py +0 -0
  27. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/prefer_class_row.py +0 -0
  28. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/prefer_constant_time_secret_compare.py +0 -0
  29. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/prefer_str_enum.py +0 -0
  30. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/prefer_struct_over_namedtuple.py +0 -0
  31. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/prefer_timedelta_for_durations.py +0 -0
  32. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/pydantic_at_boundaries.py +0 -0
  33. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/single_public_export.py +0 -0
  34. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/stepdown.py +0 -0
  35. {sarj_python_lint-0.9.0 → sarj_python_lint-0.10.1}/src/sarj_python_lint/rules/store_insert_requires_on_conflict.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sarj-python-lint
3
- Version: 0.9.0
3
+ Version: 0.10.1
4
4
  Summary: Custom Python lint rules — AST-based, pre-commit-friendly, hypermodern defaults
5
5
  Project-URL: Homepage, https://github.com/sarj-ai/standards/tree/main/packages/python
6
6
  Project-URL: Repository, https://github.com/sarj-ai/standards
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sarj-python-lint"
3
- version = "0.9.0"
3
+ version = "0.10.1"
4
4
  description = "Custom Python lint rules — AST-based, pre-commit-friendly, hypermodern defaults"
5
5
  readme = "README.md"
6
6
  authors = [{ name = "sarj-ai" }]
@@ -1,7 +1,7 @@
1
1
  """SARJ024: a structured string literal repeated across functions — extract a named constant.
2
2
 
3
- The same long, *structured* string literal appearing in two or more different
4
- functions of a module is a real maintenance hazard: when one copy is edited the
3
+ The same long, *structured* string literal repeated three or more times across
4
+ two or more different functions of a module is a real maintenance hazard: when one copy is edited the
5
5
  others silently drift, and (unlike SQL/log/prompt scaffolding) the strings that
6
6
  qualify here cannot plausibly be equal by coincidence. Derived from the
7
7
  magic-values audit corpus ("Repeated Complex String Literal").
@@ -56,7 +56,7 @@ if TYPE_CHECKING:
56
56
 
57
57
 
58
58
  _MIN_LENGTH = 40
59
- _MIN_OCCURRENCES = 2
59
+ _MIN_OCCURRENCES = 3
60
60
  _MIN_DISTINCT_SCOPES = 2
61
61
  _PREVIEW_LENGTH = 40
62
62