code-standards 7.11.2__tar.gz → 7.12.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.
- {code_standards-7.11.2 → code_standards-7.12.0}/PKG-INFO +5 -4
- {code_standards-7.11.2 → code_standards-7.12.0}/pyproject.toml +5 -4
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/api.py +23 -32
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/cli/main.py +1372 -565
- code_standards-7.12.0/src/sarj_standards/configs/cli-reference.v1.json +1 -0
- code_standards-7.12.0/src/sarj_standards/configs/eslint.application.mjs +2 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/eslint.peers.json +2 -2
- code_standards-7.11.2/src/sarj_standards/configs/eslint.application.mjs → code_standards-7.12.0/src/sarj_standards/configs/eslint.strict.mjs +94 -94
- code_standards-7.12.0/src/sarj_standards/configs/ruff.application.toml +2 -0
- code_standards-7.11.2/src/sarj_standards/configs/ruff.application.toml → code_standards-7.12.0/src/sarj_standards/configs/ruff.strict.toml +12 -79
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/rule-calibration-campaign.v1.json +8 -0
- code_standards-7.12.0/src/sarj_standards/configs/rule-inventory.v1.json +1 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/rule-ledger.json +3 -1
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/rule-warning-levels.v1.json +1 -1
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/configs.py +2 -2
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/doctor.py +15 -70
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/hooks.py +38 -28
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/launcher.py +14 -65
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/manifest.py +0 -1
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/scaffold.py +45 -50
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/service.py +1 -6
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/upgrade.py +2 -2
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/diagnostics/analysis.schema.json +1 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/diagnostics/models.py +7 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/diagnostics/serialize.py +18 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/analysis.py +2 -9
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/external.py +8 -7
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/library_policy.py +20 -17
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/runner.py +1 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/registry.py +38 -24
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/rollout.py +86 -35
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/cli_reference_artifact.py +58 -64
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/config_generation.py +43 -14
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/docs.py +17 -5
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/third_party_catalog_artifact.py +30 -19
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/schemas/rule-catalog.v1.json +1 -1
- code_standards-7.11.2/src/sarj_standards/configs/cli-reference.v1.json +0 -1
- code_standards-7.11.2/src/sarj_standards/configs/eslint.strict.mjs +0 -1236
- code_standards-7.11.2/src/sarj_standards/configs/ruff.strict.toml +0 -346
- code_standards-7.11.2/src/sarj_standards/configs/rule-inventory.v1.json +0 -1
- {code_standards-7.11.2 → code_standards-7.12.0}/.gitignore +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/LICENSE +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/README.md +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/__main__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/_meta.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/cli/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/Mintfile.mobile.strict +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/basedpyright.python315-watch.json +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/basedpyright.strict.json +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/detekt.strict.yml +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/doctor.config.json +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/eslint-compact-formatter.mjs +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/ktlint.strict.editorconfig +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/markdownlint.strict.yaml +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/mobile-tools.versions.json +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/mobsf.strict.yml +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/pyright.strict.json +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/ruff.python315-watch.toml +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/shellcheck.strict.rc +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/swiftformat.strict +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/swiftlint.strict.yml +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/taplo.strict.toml +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/configs/yamllint.strict.yaml +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/exclusions.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/lifecycle.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/packagemanager.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/retired_suppressions.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/transaction.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/adoption/uvtool.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/catalogs/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/catalogs/slack_automations.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/corpus/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/corpus/manifest.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/corpus/snapshot.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/diagnostics/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/diagnostics/baseline.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/diagnostics/source.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/filesystem.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/mobile_tools.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/policy.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/linting/textlint.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/_values.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/artifacts.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/causality.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/changes.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/process.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/publish.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/release_age.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/tags.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/release/typescript.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/comment_corpus.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/hooks.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/ledger.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/repository.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/rule_authoring.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/rule_catalog_artifact.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/rule_changes.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/rule_inventory_artifact.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/rule_lifecycle.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/repository/rule_maintenance.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/rules/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/rules/catalog.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/rules/contracts.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/rules/corpus_runner.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/rules/evaluation.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/rules/warning_levels.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/setup/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/libs/setup/repository.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/py.typed +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/schemas/__init__.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/schemas/_paths.py +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/schemas/rule-catalog.v1.schema.json +0 -0
- {code_standards-7.11.2 → code_standards-7.12.0}/src/sarj_standards/schemas/slack-automations.v1.schema.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: code-standards
|
|
3
|
-
Version: 7.
|
|
3
|
+
Version: 7.12.0
|
|
4
4
|
Summary: One deterministic quality gate for Sarj Python, TypeScript, Swift, Kotlin, shell, SQL, IaC, and repository policy.
|
|
5
5
|
Project-URL: Homepage, https://code-standards.sarj.ai/
|
|
6
6
|
Project-URL: Documentation, https://code-standards.sarj.ai/cli/
|
|
@@ -26,11 +26,12 @@ Requires-Dist: pydantic==2.13.5
|
|
|
26
26
|
Requires-Dist: pyyaml==6.0.3
|
|
27
27
|
Requires-Dist: repo-standards==5.11.4
|
|
28
28
|
Requires-Dist: ruff==0.16.5
|
|
29
|
-
Requires-Dist: sarj-iac-lint==0.15.
|
|
30
|
-
Requires-Dist: sarj-python-lint==0.80.
|
|
31
|
-
Requires-Dist: sarj-sql-lint==0.16.
|
|
29
|
+
Requires-Dist: sarj-iac-lint==0.15.4
|
|
30
|
+
Requires-Dist: sarj-python-lint==0.80.17
|
|
31
|
+
Requires-Dist: sarj-sql-lint==0.16.12
|
|
32
32
|
Requires-Dist: semgrep==1.175.0
|
|
33
33
|
Requires-Dist: shellcheck-py==0.11.0.1; (sys_platform == 'darwin' and platform_machine == 'arm64') or (sys_platform == 'darwin' and platform_machine == 'x86_64') or (sys_platform == 'linux' and platform_machine == 'x86_64') or (sys_platform == 'win32' and platform_machine == 'AMD64')
|
|
34
|
+
Requires-Dist: typer==0.27.2
|
|
34
35
|
Description-Content-Type: text/markdown
|
|
35
36
|
|
|
36
37
|
<!-- Generated by `code-standards maintain docs sync`; do not edit. -->
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "code-standards"
|
|
3
|
-
version = "7.
|
|
3
|
+
version = "7.12.0"
|
|
4
4
|
description = "One deterministic quality gate for Sarj Python, TypeScript, Swift, Kotlin, shell, SQL, IaC, and repository policy."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.14"
|
|
@@ -27,9 +27,10 @@ dependencies = [
|
|
|
27
27
|
"ruff==0.16.5",
|
|
28
28
|
"semgrep==1.175.0",
|
|
29
29
|
"shellcheck-py==0.11.0.1; (sys_platform == 'darwin' and platform_machine == 'arm64') or (sys_platform == 'darwin' and platform_machine == 'x86_64') or (sys_platform == 'linux' and platform_machine == 'x86_64') or (sys_platform == 'win32' and platform_machine == 'AMD64')",
|
|
30
|
-
"sarj-iac-lint==0.15.
|
|
31
|
-
"sarj-python-lint==0.80.
|
|
32
|
-
"sarj-sql-lint==0.16.
|
|
30
|
+
"sarj-iac-lint==0.15.4",
|
|
31
|
+
"sarj-python-lint==0.80.17",
|
|
32
|
+
"sarj-sql-lint==0.16.12",
|
|
33
|
+
"typer==0.27.2",
|
|
33
34
|
]
|
|
34
35
|
|
|
35
36
|
[project.scripts]
|
|
@@ -207,11 +207,7 @@ class Standards:
|
|
|
207
207
|
exit_code=_INVALID_EXIT,
|
|
208
208
|
)
|
|
209
209
|
try:
|
|
210
|
-
policy_findings = (
|
|
211
|
-
check_selected_library_policy(self.root, selected)
|
|
212
|
-
if adopted is not None and adopted.profile == "application"
|
|
213
|
-
else ()
|
|
214
|
-
)
|
|
210
|
+
policy_findings = check_selected_library_policy(self.root, selected)
|
|
215
211
|
except (OSError, TypeError, ValueError, ManifestPolicyError) as exc:
|
|
216
212
|
return Result(
|
|
217
213
|
Status.INVALID,
|
|
@@ -291,7 +287,7 @@ class Standards:
|
|
|
291
287
|
grouped=selected_groups,
|
|
292
288
|
rule_selection=rule_selection,
|
|
293
289
|
)
|
|
294
|
-
if
|
|
290
|
+
if rule_selection is None:
|
|
295
291
|
try:
|
|
296
292
|
policy = _filter_tool_report(_policy_report(self.root, active_selected), selection_policy)
|
|
297
293
|
except (OSError, TypeError, ValueError, ManifestPolicyError) as exc:
|
|
@@ -310,7 +306,7 @@ class Standards:
|
|
|
310
306
|
)
|
|
311
307
|
)
|
|
312
308
|
routed = _routed_for_selection(selected_groups, rule_selection)
|
|
313
|
-
if
|
|
309
|
+
if rule_selection is None:
|
|
314
310
|
routed.update(
|
|
315
311
|
item
|
|
316
312
|
for item in active_selected
|
|
@@ -545,7 +541,7 @@ def _verify(root: Path) -> int:
|
|
|
545
541
|
policy=policy,
|
|
546
542
|
):
|
|
547
543
|
return 1
|
|
548
|
-
if
|
|
544
|
+
if check_library_policy(root):
|
|
549
545
|
return 1
|
|
550
546
|
return execute(verification_commands(detect(root)))
|
|
551
547
|
|
|
@@ -575,16 +571,17 @@ def _operation_result(
|
|
|
575
571
|
*,
|
|
576
572
|
findings: tuple[Finding, ...] = (),
|
|
577
573
|
) -> Result:
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
574
|
+
match exit_code:
|
|
575
|
+
case 0:
|
|
576
|
+
status = Status.CHANGED if changes else Status.OK
|
|
577
|
+
case 1:
|
|
578
|
+
status = Status.DRIFT
|
|
579
|
+
case _ if exit_code == _INVALID_EXIT:
|
|
580
|
+
status = Status.INVALID
|
|
581
|
+
case _ if exit_code == _INTERRUPTED_EXIT:
|
|
582
|
+
status = Status.INTERRUPTED
|
|
583
|
+
case _:
|
|
584
|
+
status = Status.FAILED
|
|
588
585
|
return Result(status, findings, changes, exit_code)
|
|
589
586
|
|
|
590
587
|
|
|
@@ -616,21 +613,15 @@ def _without_baselined_diagnostics(
|
|
|
616
613
|
remaining[fingerprint] = budget - 1
|
|
617
614
|
return False
|
|
618
615
|
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
item
|
|
623
|
-
diagnostics=
|
|
624
|
-
|
|
625
|
-
analyzer_id=item.analyzer_id,
|
|
626
|
-
invocation_id=item.invocation_id,
|
|
627
|
-
version=item.version,
|
|
628
|
-
duration_ms=item.duration_ms,
|
|
629
|
-
file_count=item.file_count,
|
|
630
|
-
cache_status=item.cache_status,
|
|
616
|
+
def filter_tool(item: ToolReport) -> ToolReport:
|
|
617
|
+
diagnostics = tuple(diagnostic for diagnostic in item.diagnostics if active(diagnostic))
|
|
618
|
+
return replace(
|
|
619
|
+
item,
|
|
620
|
+
diagnostics=diagnostics,
|
|
621
|
+
baselined_count=item.baselined_count + len(item.diagnostics) - len(diagnostics),
|
|
631
622
|
)
|
|
632
|
-
|
|
633
|
-
)
|
|
623
|
+
|
|
624
|
+
tools = tuple(filter_tool(item) for item in report.tools)
|
|
634
625
|
return report_from_tools(report.root, tools)
|
|
635
626
|
|
|
636
627
|
|