gac 2.5.0__tar.gz → 2.5.2__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 gac might be problematic. Click here for more details.

Files changed (44) hide show
  1. {gac-2.5.0 → gac-2.5.2}/PKG-INFO +2 -4
  2. {gac-2.5.0 → gac-2.5.2}/README.md +1 -3
  3. {gac-2.5.0 → gac-2.5.2}/src/gac/__version__.py +1 -1
  4. {gac-2.5.0 → gac-2.5.2}/src/gac/cli.py +1 -1
  5. {gac-2.5.0 → gac-2.5.2}/src/gac/main.py +2 -2
  6. {gac-2.5.0 → gac-2.5.2}/src/gac/workflow_utils.py +5 -2
  7. {gac-2.5.0 → gac-2.5.2}/.gitignore +0 -0
  8. {gac-2.5.0 → gac-2.5.2}/LICENSE +0 -0
  9. {gac-2.5.0 → gac-2.5.2}/pyproject.toml +0 -0
  10. {gac-2.5.0 → gac-2.5.2}/src/gac/__init__.py +0 -0
  11. {gac-2.5.0 → gac-2.5.2}/src/gac/ai.py +0 -0
  12. {gac-2.5.0 → gac-2.5.2}/src/gac/ai_utils.py +0 -0
  13. {gac-2.5.0 → gac-2.5.2}/src/gac/config.py +0 -0
  14. {gac-2.5.0 → gac-2.5.2}/src/gac/config_cli.py +0 -0
  15. {gac-2.5.0 → gac-2.5.2}/src/gac/constants.py +0 -0
  16. {gac-2.5.0 → gac-2.5.2}/src/gac/diff_cli.py +0 -0
  17. {gac-2.5.0 → gac-2.5.2}/src/gac/errors.py +0 -0
  18. {gac-2.5.0 → gac-2.5.2}/src/gac/git.py +0 -0
  19. {gac-2.5.0 → gac-2.5.2}/src/gac/init_cli.py +0 -0
  20. {gac-2.5.0 → gac-2.5.2}/src/gac/language_cli.py +0 -0
  21. {gac-2.5.0 → gac-2.5.2}/src/gac/preprocess.py +0 -0
  22. {gac-2.5.0 → gac-2.5.2}/src/gac/prompt.py +0 -0
  23. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/__init__.py +0 -0
  24. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/anthropic.py +0 -0
  25. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/cerebras.py +0 -0
  26. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/chutes.py +0 -0
  27. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/custom_anthropic.py +0 -0
  28. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/custom_openai.py +0 -0
  29. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/deepseek.py +0 -0
  30. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/fireworks.py +0 -0
  31. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/gemini.py +0 -0
  32. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/groq.py +0 -0
  33. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/lmstudio.py +0 -0
  34. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/minimax.py +0 -0
  35. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/mistral.py +0 -0
  36. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/ollama.py +0 -0
  37. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/openai.py +0 -0
  38. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/openrouter.py +0 -0
  39. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/streamlake.py +0 -0
  40. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/synthetic.py +0 -0
  41. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/together.py +0 -0
  42. {gac-2.5.0 → gac-2.5.2}/src/gac/providers/zai.py +0 -0
  43. {gac-2.5.0 → gac-2.5.2}/src/gac/security.py +0 -0
  44. {gac-2.5.0 → gac-2.5.2}/src/gac/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gac
3
- Version: 2.5.0
3
+ Version: 2.5.2
4
4
  Summary: LLM-powered Git commit message generator with multi-provider support
5
5
  Project-URL: Homepage, https://github.com/cellwebb/gac
6
6
  Project-URL: Documentation, https://github.com/cellwebb/gac#readme
@@ -56,7 +56,7 @@ Description-Content-Type: text/markdown
56
56
  [![Contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg)](docs/en/CONTRIBUTING.md)
57
57
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
58
58
 
59
- **English** | [简体中文](docs/zh-CN/README.md) | [繁體中文](docs/zh-TW/README.md) | [日本語](docs/ja/README.md) | [한국어](docs/ko/README.md) | [हिन्दी](docs/hi/README.md) | [Français](docs/fr/README.md) | [Русский](docs/ru/README.md) | [Español](docs/es/README.md) | [Português](docs/pt/README.md) | [Deutsch](docs/de/README.md) | [Nederlands](docs/nl/README.md)
59
+ **English** | [简体中文](docs/zh-CN/README.md) | [繁體中文](docs/zh-TW/README.md) | [日本語](docs/ja/README.md) | [한국어](docs/ko/README.md) | [हिन्दी](docs/hi/README.md) | [Tiếng Việt](docs/vi/README.md) | [Français](docs/fr/README.md) | [Русский](docs/ru/README.md) | [Español](docs/es/README.md) | [Português](docs/pt/README.md) | [Norsk](docs/no/README.md) | [Svenska](docs/sv/README.md) | [Deutsch](docs/de/README.md) | [Nederlands](docs/nl/README.md) | [Italiano](docs/it/README.md)
60
60
 
61
61
  **LLM-powered commit messages that understand your code!**
62
62
 
@@ -76,8 +76,6 @@ Intelligent, contextual messages that explain the **why** behind your changes:
76
76
 
77
77
  <!-- markdownlint-enable MD033 MD036 -->
78
78
 
79
- <!-- markdownlint-enable MD033 MD036 -->
80
-
81
79
  ## Quick Start
82
80
 
83
81
  ### Use gac without installing
@@ -14,7 +14,7 @@
14
14
  [![Contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg)](docs/en/CONTRIBUTING.md)
15
15
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
16
16
 
17
- **English** | [简体中文](docs/zh-CN/README.md) | [繁體中文](docs/zh-TW/README.md) | [日本語](docs/ja/README.md) | [한국어](docs/ko/README.md) | [हिन्दी](docs/hi/README.md) | [Français](docs/fr/README.md) | [Русский](docs/ru/README.md) | [Español](docs/es/README.md) | [Português](docs/pt/README.md) | [Deutsch](docs/de/README.md) | [Nederlands](docs/nl/README.md)
17
+ **English** | [简体中文](docs/zh-CN/README.md) | [繁體中文](docs/zh-TW/README.md) | [日本語](docs/ja/README.md) | [한국어](docs/ko/README.md) | [हिन्दी](docs/hi/README.md) | [Tiếng Việt](docs/vi/README.md) | [Français](docs/fr/README.md) | [Русский](docs/ru/README.md) | [Español](docs/es/README.md) | [Português](docs/pt/README.md) | [Norsk](docs/no/README.md) | [Svenska](docs/sv/README.md) | [Deutsch](docs/de/README.md) | [Nederlands](docs/nl/README.md) | [Italiano](docs/it/README.md)
18
18
 
19
19
  **LLM-powered commit messages that understand your code!**
20
20
 
@@ -34,8 +34,6 @@ Intelligent, contextual messages that explain the **why** behind your changes:
34
34
 
35
35
  <!-- markdownlint-enable MD033 MD036 -->
36
36
 
37
- <!-- markdownlint-enable MD033 MD036 -->
38
-
39
37
  ## Quick Start
40
38
 
41
39
  ### Use gac without installing
@@ -1,3 +1,3 @@
1
1
  """Version information for gac package."""
2
2
 
3
- __version__ = "2.5.0"
3
+ __version__ = "2.5.2"
@@ -133,7 +133,7 @@ def cli(
133
133
  no_verify=no_verify,
134
134
  skip_secret_scan=skip_secret_scan or bool(config.get("skip_secret_scan", False)),
135
135
  language=resolved_language,
136
- hook_timeout=hook_timeout if hook_timeout > 0 else int(config.get("hook_timeout", 120)),
136
+ hook_timeout=hook_timeout if hook_timeout > 0 else int(config.get("hook_timeout", 120) or 120),
137
137
  )
138
138
  except Exception as e:
139
139
  handle_error(e, exit_program=True)
@@ -340,7 +340,7 @@ def execute_grouped_commits_workflow(
340
340
  try:
341
341
  for file_path in commit["files"]:
342
342
  run_git_command(["add", "-A", file_path])
343
- execute_commit(commit["message"], no_verify)
343
+ execute_commit(commit["message"], no_verify, hook_timeout)
344
344
  console.print(f"[green]✓ Commit {idx}/{num_commits} created[/green]")
345
345
  except Exception as e:
346
346
  console.print(f"[red]✗ Failed at commit {idx}/{num_commits}: {e}[/red]")
@@ -448,7 +448,7 @@ def execute_single_commit_workflow(
448
448
  console.print(f"Would commit {len(staged_files)} files")
449
449
  logger.info(f"Would commit {len(staged_files)} files")
450
450
  else:
451
- execute_commit(commit_message, no_verify)
451
+ execute_commit(commit_message, no_verify, hook_timeout)
452
452
 
453
453
  if push:
454
454
  try:
@@ -5,6 +5,8 @@ from pathlib import Path
5
5
  import click
6
6
  from rich.console import Console
7
7
 
8
+ from gac.constants import EnvDefaults
9
+
8
10
  logger = logging.getLogger(__name__)
9
11
  console = Console()
10
12
 
@@ -57,13 +59,14 @@ def handle_confirmation_loop(
57
59
  return ("regenerate", commit_message, conversation_messages)
58
60
 
59
61
 
60
- def execute_commit(commit_message: str, no_verify: bool) -> None:
62
+ def execute_commit(commit_message: str, no_verify: bool, hook_timeout: int | None = None) -> None:
61
63
  from gac.git import run_git_command
62
64
 
63
65
  commit_args = ["commit", "-m", commit_message]
64
66
  if no_verify:
65
67
  commit_args.append("--no-verify")
66
- run_git_command(commit_args)
68
+ effective_timeout = hook_timeout if hook_timeout and hook_timeout > 0 else EnvDefaults.HOOK_TIMEOUT
69
+ run_git_command(commit_args, timeout=effective_timeout)
67
70
  logger.info("Commit created successfully")
68
71
  console.print("[green]Commit created successfully[/green]")
69
72
 
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