crackerjack 0.24.10__tar.gz → 0.25.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.
Potentially problematic release.
This version of crackerjack might be problematic. Click here for more details.
- {crackerjack-0.24.10 → crackerjack-0.25.0}/PKG-INFO +1 -1
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/crackerjack.py +5 -5
- {crackerjack-0.24.10/crackerjack → crackerjack-0.25.0}/pyproject.toml +1 -1
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_crackerjack.py +28 -4
- {crackerjack-0.24.10 → crackerjack-0.25.0}/uv.lock +1 -1
- {crackerjack-0.24.10 → crackerjack-0.25.0}/.envrc +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/.github/FUNDING.yml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/.gitignore +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/.libcst.codemod.yaml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/.pre-commit-config-ai.yaml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/.pre-commit-config.yaml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/CLAUDE.md +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/LICENSE +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/README-AI-AGENT.md +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/README.md +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/RULES.md +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/.gitignore +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/.libcst.codemod.yaml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/.pdm.toml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/.pre-commit-config-ai.yaml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/.pre-commit-config.yaml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/__init__.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/__main__.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/errors.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/interactive.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/crackerjack/py313.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0/crackerjack}/pyproject.toml +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/TESTING.md +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/__init__.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/conftest.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/data/comments_sample.txt +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/data/docstrings_sample.txt +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/data/expected_comments_sample.txt +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/data/init.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_crackerjack_runner.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_errors.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_interactive.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_interactive_run.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_main.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_multiline_functions.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_py313_advanced.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_py313_features.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_pytest_features.py +0 -0
- {crackerjack-0.24.10 → crackerjack-0.25.0}/tests/test_structured_errors.py +0 -0
|
@@ -634,7 +634,7 @@ class CodeCleaner(BaseModel, arbitrary_types_allowed=True):
|
|
|
634
634
|
temp_path.write_text(code)
|
|
635
635
|
try:
|
|
636
636
|
result = subprocess.run(
|
|
637
|
-
["ruff", "format", str(temp_path)],
|
|
637
|
+
["uv", "run", "ruff", "format", str(temp_path)],
|
|
638
638
|
check=False,
|
|
639
639
|
capture_output=True,
|
|
640
640
|
text=True,
|
|
@@ -887,7 +887,7 @@ class ProjectManager(BaseModel, arbitrary_types_allowed=True):
|
|
|
887
887
|
self.execute_command(["git", "branch", "-m", "main"])
|
|
888
888
|
self.execute_command(["git", "add", "pyproject.toml", "uv.lock"])
|
|
889
889
|
self.execute_command(["git", "config", "advice.addIgnoredFile", "false"])
|
|
890
|
-
install_cmd = ["pre-commit", "install"]
|
|
890
|
+
install_cmd = ["uv", "run", "pre-commit", "install"]
|
|
891
891
|
if hasattr(self, "options") and getattr(self.options, "ai_agent", False):
|
|
892
892
|
install_cmd.extend(["-c", ".pre-commit-config-ai.yaml"])
|
|
893
893
|
self.execute_command(install_cmd)
|
|
@@ -899,7 +899,7 @@ class ProjectManager(BaseModel, arbitrary_types_allowed=True):
|
|
|
899
899
|
"[bold bright_cyan]🔍 HOOKS[/bold bright_cyan] [bold bright_white]Running code quality checks[/bold bright_white]"
|
|
900
900
|
)
|
|
901
901
|
self.console.print("-" * 60 + "\n")
|
|
902
|
-
cmd = ["pre-commit", "run", "--all-files"]
|
|
902
|
+
cmd = ["uv", "run", "pre-commit", "run", "--all-files"]
|
|
903
903
|
if hasattr(self, "options") and getattr(self.options, "ai_agent", False):
|
|
904
904
|
cmd.extend(["-c", ".pre-commit-config-ai.yaml"])
|
|
905
905
|
check_all = self.execute_command(cmd)
|
|
@@ -990,7 +990,7 @@ class Crackerjack(BaseModel, arbitrary_types_allowed=True):
|
|
|
990
990
|
|
|
991
991
|
def _update_precommit(self, options: t.Any) -> None:
|
|
992
992
|
if self.pkg_path.stem == "crackerjack" and options.update_precommit:
|
|
993
|
-
update_cmd = ["pre-commit", "autoupdate"]
|
|
993
|
+
update_cmd = ["uv", "run", "pre-commit", "autoupdate"]
|
|
994
994
|
if options.ai_agent:
|
|
995
995
|
update_cmd.extend(["-c", ".pre-commit-config-ai.yaml"])
|
|
996
996
|
self.execute_command(update_cmd)
|
|
@@ -1076,7 +1076,7 @@ class Crackerjack(BaseModel, arbitrary_types_allowed=True):
|
|
|
1076
1076
|
test.append("-xvs")
|
|
1077
1077
|
|
|
1078
1078
|
def _prepare_pytest_command(self, options: OptionsProtocol) -> list[str]:
|
|
1079
|
-
test = ["pytest"]
|
|
1079
|
+
test = ["uv", "run", "pytest"]
|
|
1080
1080
|
project_size = self._detect_project_size()
|
|
1081
1081
|
test_timeout = self._get_test_timeout(options, project_size)
|
|
1082
1082
|
if getattr(options, "ai_agent", False):
|
|
@@ -909,7 +909,9 @@ class TestCrackerjackProcess:
|
|
|
909
909
|
with patch.object(cj, "_setup_package"):
|
|
910
910
|
with patch.object(cj, "_update_project"):
|
|
911
911
|
cj.process(options)
|
|
912
|
-
mock_cj_execute.assert_any_call(
|
|
912
|
+
mock_cj_execute.assert_any_call(
|
|
913
|
+
["uv", "run", "pre-commit", "autoupdate"]
|
|
914
|
+
)
|
|
913
915
|
|
|
914
916
|
def test_update_precommit_ai_agent(
|
|
915
917
|
self,
|
|
@@ -927,7 +929,14 @@ class TestCrackerjackProcess:
|
|
|
927
929
|
with patch.object(cj, "_update_project"):
|
|
928
930
|
cj.process(options)
|
|
929
931
|
mock_cj_execute.assert_any_call(
|
|
930
|
-
[
|
|
932
|
+
[
|
|
933
|
+
"uv",
|
|
934
|
+
"run",
|
|
935
|
+
"pre-commit",
|
|
936
|
+
"autoupdate",
|
|
937
|
+
"-c",
|
|
938
|
+
".pre-commit-config-ai.yaml",
|
|
939
|
+
]
|
|
931
940
|
)
|
|
932
941
|
|
|
933
942
|
def test_run_pre_commit_ai_agent(
|
|
@@ -943,7 +952,15 @@ class TestCrackerjackProcess:
|
|
|
943
952
|
mock_project.execute_command.return_value = MagicMock(returncode=0)
|
|
944
953
|
ProjectManager.run_pre_commit(mock_project)
|
|
945
954
|
mock_project.execute_command.assert_called_with(
|
|
946
|
-
[
|
|
955
|
+
[
|
|
956
|
+
"uv",
|
|
957
|
+
"run",
|
|
958
|
+
"pre-commit",
|
|
959
|
+
"run",
|
|
960
|
+
"--all-files",
|
|
961
|
+
"-c",
|
|
962
|
+
".pre-commit-config-ai.yaml",
|
|
963
|
+
]
|
|
947
964
|
)
|
|
948
965
|
|
|
949
966
|
def test_pre_commit_install_ai_agent(
|
|
@@ -965,7 +982,14 @@ class TestCrackerjackProcess:
|
|
|
965
982
|
original_method = ProjectManager.update_pkg_configs
|
|
966
983
|
original_method(mock_project)
|
|
967
984
|
mock_execute.assert_any_call(
|
|
968
|
-
[
|
|
985
|
+
[
|
|
986
|
+
"uv",
|
|
987
|
+
"run",
|
|
988
|
+
"pre-commit",
|
|
989
|
+
"install",
|
|
990
|
+
"-c",
|
|
991
|
+
".pre-commit-config-ai.yaml",
|
|
992
|
+
]
|
|
969
993
|
)
|
|
970
994
|
|
|
971
995
|
def test_process_with_precommit_failure(
|
|
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
|
|
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
|