sarj-python-lint 0.84.0__tar.gz → 0.84.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.
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/PKG-INFO +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/pyproject.toml +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/__main__.py +8 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/docstring_args_restate_signature.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/docstring_returns_restate_signature.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_copied_inherited_docstring.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_repeated_string_literal.py +2 -2
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_repeated_test_body.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_vague_suppression_description.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/phase_label_comment.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_class_row.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_self_documenting_constant.py +2 -2
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_struct_over_namedtuple.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/redundant_class_docstring.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/redundant_module_docstring.py +1 -1
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/restated_test_docstring.py +2 -2
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/.gitignore +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/LICENSE +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/README.md +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/__init__.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/_analysis_session.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/_filesystem.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/_python_target.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/_ratchet_cli.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/_secret_names.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/_version.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/py.typed +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/ratchet.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rule_base.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/__init__.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_ast_index.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_comments.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_docstrings.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_fastapi.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_first_party.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_fixed_record.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_imports.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_logging.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_paths.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_project_index.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_prose_budget.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_pytest.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_registry.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_sql.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_suppression_comments.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_test_assertions.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/complex_postgres_query_requires_architecture_review.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/defect_xfail_requires_explicit_strict.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/excessive_commentary.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/fakes_in_shared_location.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/fastapi_class_router_contract.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/fastapi_explicit_openapi_contract.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/iac_source_coupled_test.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/invalid_pydantic_field_default.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/mock_without_spec.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/negative_only_http_status_assertion.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_analytical_aggregation_in_postgres_store.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_comment_cruft.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_conftest_test_module_import.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_cors_wildcard_with_credentials.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_deleted_only_override_parameter.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_dunder_all.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_duplicate_dunder_all_entry.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_excessive_cognitive_complexity.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_fastapi_on_event.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_file_level_escape_hatch_suppression.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_first_party_private_import.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_frozen_after_validator_field_write.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_generic_single_export_module.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_hidden_constructor_fallback.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_invalid_argument_name_suppression.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_nested_pydantic_field_validator.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_offset_pagination.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_positional_psycopg_row_escape.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_psycopg_execution_outside_injected_owner.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_random_uuid_in_sql.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_raw_connection_in_tests.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_raw_source_text_test_oracle.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_redundant_literal_description.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_redundant_module_alias_exports.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_restated_comment.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_secret_in_log.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_select_star.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_service_behavior_in_settings.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_string_concat_in_loop.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_tautological_expect.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_typed_doc_sections.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_unique_violation_message_match.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_unnecessary_docstring.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_vague_annotations.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_whole_request_response_payload_in_log.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/opaque_parametrize_case_needs_id.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/over_mocked_test.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_collection_comprehension.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_constant_time_secret_compare.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_fstring_over_concat.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_immutable_module_constant.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_injected_dependency_over_monkeypatch.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_library_fake.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_match_assert_never.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_match_type_dispatch.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_match_value_dispatch.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_module_level_constant.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_monkeypatch_for_process_state_in_test.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_namedtuple_over_tuple_return.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_nominal_id_types.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_non_nullable_collection.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_or_pattern.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_self_type_annotation.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_set_isdisjoint.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_str_enum.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_walrus_awaited_none_guard.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_walrus_comprehension_filter.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_walrus_regex_match.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_walrus_stream_loop.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/production_derived_test_cases.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/pydantic_at_boundaries.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/pytest_fixture_returns_bare_tuple.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/redundant_docstring.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/repeated_kwarg_heavy_call_in_test.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/repeated_static_call_cases.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/require_keyword_only_swap_prone_params.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/require_nodecode_for_splitting_settings_field.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/require_port_for_service.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/require_pydantic_for_external_json.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/require_pydantic_for_structured_payload.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/require_pydantic_ordinal_lower_bound.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/require_typed_http_test_response.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/stepdown.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/store_get_delegates_to_bulk_read.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/store_insert_requires_on_conflict.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/timestamp_order_requires_tiebreaker.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/trailing_value_narration.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/typed_error_reasons.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/uncontrolled_randomness_in_test.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/unused_mock_setup.py +0 -0
- {sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/unused_test_factory_option.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: sarj-python-lint
|
|
3
|
-
Version: 0.84.
|
|
3
|
+
Version: 0.84.1
|
|
4
4
|
Summary: Custom Python lint rules — AST-based, pre-commit-friendly, hypermodern defaults
|
|
5
5
|
Project-URL: Homepage, https://code-standards.sarj.ai/rules/python/
|
|
6
6
|
Project-URL: Documentation, https://code-standards.sarj.ai/rules/python/
|
|
@@ -209,7 +209,7 @@ def _suppressed_diagnostics(
|
|
|
209
209
|
|
|
210
210
|
|
|
211
211
|
def _suppressed_codes(codes: dict[str, set[Severity]]) -> set[tuple[str, Severity]]:
|
|
212
|
-
|
|
212
|
+
suppressed = {
|
|
213
213
|
(generic, generic_severity)
|
|
214
214
|
for specific, generics in _DIAGNOSTIC_PRECEDENCE.items()
|
|
215
215
|
if specific in codes
|
|
@@ -217,6 +217,13 @@ def _suppressed_codes(codes: dict[str, set[Severity]]) -> set[tuple[str, Severit
|
|
|
217
217
|
for generic_severity in codes.get(generic, set())
|
|
218
218
|
if generic_severity is Severity.WARNING or Severity.ERROR in codes[specific]
|
|
219
219
|
}
|
|
220
|
+
# The promoted signature-restatement rules now block. Keep their errors and
|
|
221
|
+
# drop only the lower-severity typed-docstring twin at the same owner.
|
|
222
|
+
if Severity.WARNING in codes.get("SARJ092", set()) and any(
|
|
223
|
+
Severity.ERROR in codes.get(generic, set()) for generic in ("SARJ086", "SARJ087")
|
|
224
|
+
):
|
|
225
|
+
suppressed.add(("SARJ092", Severity.WARNING))
|
|
226
|
+
return suppressed
|
|
220
227
|
|
|
221
228
|
|
|
222
229
|
def _function_signature_owner_locations(source: str) -> dict[int, _OwnerLocation]:
|
|
@@ -181,7 +181,7 @@ class DocstringArgsRestateSignature(Rule):
|
|
|
181
181
|
f"`{node.name}` has an Args section whose entries only repeat matching parameter names or types; "
|
|
182
182
|
"remove that section or document a constraint not evident from the signature."
|
|
183
183
|
),
|
|
184
|
-
severity=Severity.
|
|
184
|
+
severity=Severity.ERROR,
|
|
185
185
|
)
|
|
186
186
|
)
|
|
187
187
|
|
|
@@ -252,7 +252,7 @@ class DocstringReturnsRestateSignature(Rule):
|
|
|
252
252
|
f"`{node.name}` {section.name} section only repeats its callable name or annotated result type; "
|
|
253
253
|
"remove that section or document result semantics not expressed by the signature."
|
|
254
254
|
),
|
|
255
|
-
severity=Severity.
|
|
255
|
+
severity=Severity.ERROR,
|
|
256
256
|
)
|
|
257
257
|
)
|
|
258
258
|
|
|
@@ -158,7 +158,7 @@ class NoCopiedInheritedDocstring(Rule):
|
|
|
158
158
|
f"Docstring has the same cleaned content as {parent.name}.{name}'s. Remove it only if no "
|
|
159
159
|
"consumer requires the override's direct `__doc__`; otherwise retain it with a narrow rationale."
|
|
160
160
|
),
|
|
161
|
-
severity=Severity.
|
|
161
|
+
severity=Severity.ERROR,
|
|
162
162
|
)
|
|
163
163
|
)
|
|
164
164
|
|
|
@@ -187,7 +187,7 @@ class NoRepeatedStringLiteral(Rule):
|
|
|
187
187
|
f"structured string literal {_preview(value)} duplicates module constant "
|
|
188
188
|
f"`{constant_name}` — reuse the canonical constant so the copies cannot drift."
|
|
189
189
|
),
|
|
190
|
-
severity=Severity.
|
|
190
|
+
severity=Severity.ERROR,
|
|
191
191
|
)
|
|
192
192
|
for node in function_nodes
|
|
193
193
|
)
|
|
@@ -209,7 +209,7 @@ class NoRepeatedStringLiteral(Rule):
|
|
|
209
209
|
f"callable scopes (first use at line {first.lineno}) — reuse a named binding "
|
|
210
210
|
"when they share ownership, or suppress with an independent-ownership rationale."
|
|
211
211
|
),
|
|
212
|
-
severity=Severity.
|
|
212
|
+
severity=Severity.ERROR,
|
|
213
213
|
)
|
|
214
214
|
for node in repeats
|
|
215
215
|
)
|
|
@@ -123,7 +123,7 @@ class NoVagueSuppressionDescription(Rule):
|
|
|
123
123
|
message=(
|
|
124
124
|
f'Suppression reason "{vague_reason}" is generic; name the concrete mismatch or safety invariant.'
|
|
125
125
|
),
|
|
126
|
-
severity=Severity.
|
|
126
|
+
severity=Severity.ERROR,
|
|
127
127
|
column_encoding=ColumnEncoding.CODEPOINTS,
|
|
128
128
|
)
|
|
129
129
|
)
|
|
@@ -112,7 +112,7 @@ class TestPhaseLabelComment(Rule):
|
|
|
112
112
|
f"Bare test phase comment {body.strip()!r} narrates structure; delete it or replace it "
|
|
113
113
|
"with non-obvious rationale."
|
|
114
114
|
),
|
|
115
|
-
severity=Severity.
|
|
115
|
+
severity=Severity.ERROR,
|
|
116
116
|
column_encoding=ColumnEncoding.CODEPOINTS,
|
|
117
117
|
)
|
|
118
118
|
for line, col, body in standalone
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_class_row.py
RENAMED
|
@@ -123,7 +123,7 @@ class PreferClassRow(Rule):
|
|
|
123
123
|
line=cursor.factory.lineno,
|
|
124
124
|
col=cursor.factory.col_offset + 1,
|
|
125
125
|
code=self.code,
|
|
126
|
-
severity=Severity.
|
|
126
|
+
severity=Severity.ERROR,
|
|
127
127
|
message=(
|
|
128
128
|
f"this dict row is immediately converted to `{model}`; use `class_row({model})` to "
|
|
129
129
|
"construct it during fetch"
|
|
@@ -345,7 +345,7 @@ class PreferSelfDocumentingConstant(Rule):
|
|
|
345
345
|
f"`{name}` contains bare HTTP status integers; use `http.HTTPStatus` members, "
|
|
346
346
|
"or their `.value` at an exact-integer boundary. Keep non-obvious rationale."
|
|
347
347
|
),
|
|
348
|
-
Severity.
|
|
348
|
+
Severity.ERROR,
|
|
349
349
|
)
|
|
350
350
|
)
|
|
351
351
|
continue
|
|
@@ -371,7 +371,7 @@ class PreferSelfDocumentingConstant(Rule):
|
|
|
371
371
|
f"`{name}` relies on its comment to identify {unit.label}; encode the unit in "
|
|
372
372
|
f"the constant name{alternative}.{compatibility} Keep non-obvious rationale."
|
|
373
373
|
),
|
|
374
|
-
Severity.
|
|
374
|
+
Severity.ERROR,
|
|
375
375
|
)
|
|
376
376
|
)
|
|
377
377
|
|
|
@@ -121,7 +121,7 @@ class PreferStructOverNamedtuple(Rule):
|
|
|
121
121
|
"static `collections.namedtuple` fields have no type declarations — prefer a class-based "
|
|
122
122
|
"`typing.NamedTuple`; change tuple semantics only after reviewing callers"
|
|
123
123
|
),
|
|
124
|
-
severity=Severity.
|
|
124
|
+
severity=Severity.ERROR,
|
|
125
125
|
)
|
|
126
126
|
|
|
127
127
|
|
|
@@ -333,7 +333,7 @@ class RestatedTestDocstring(Rule):
|
|
|
333
333
|
col=expr.col_offset + 1,
|
|
334
334
|
code=self.code,
|
|
335
335
|
message=_MESSAGE,
|
|
336
|
-
severity=Severity.
|
|
336
|
+
severity=Severity.ERROR,
|
|
337
337
|
)
|
|
338
338
|
)
|
|
339
339
|
|
|
@@ -369,7 +369,7 @@ class RestatedTestDocstring(Rule):
|
|
|
369
369
|
col=expr.col_offset + 1,
|
|
370
370
|
code=self.code,
|
|
371
371
|
message=_MESSAGE,
|
|
372
|
-
severity=Severity.
|
|
372
|
+
severity=Severity.ERROR,
|
|
373
373
|
)
|
|
374
374
|
)
|
|
375
375
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/_analysis_session.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_ast_index.py
RENAMED
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_docstrings.py
RENAMED
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_first_party.py
RENAMED
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_fixed_record.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_project_index.py
RENAMED
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_prose_budget.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/_test_assertions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/mock_without_spec.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_comment_cruft.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_dunder_all.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_secret_in_log.py
RENAMED
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/no_select_star.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/over_mocked_test.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_or_pattern.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/prefer_str_enum.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sarj_python_lint-0.84.0 → sarj_python_lint-0.84.1}/src/sarj_python_lint/rules/unused_mock_setup.py
RENAMED
|
File without changes
|
|
File without changes
|