ace-git-copilot 0.3.4__tar.gz → 0.3.5__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 (126) hide show
  1. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/PKG-INFO +4 -1
  2. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/README.md +3 -0
  3. ace_git_copilot-0.3.5/ace/__init__.py +1 -0
  4. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/cli.py +16 -4
  5. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/pyproject.toml +1 -1
  6. ace_git_copilot-0.3.4/ace/__init__.py +0 -1
  7. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/AGENTS.md +0 -0
  8. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/BRIEFING.md +0 -0
  9. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/ORIGINAL_REQUEST.md +0 -0
  10. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/e2e_testing_track/BRIEFING.md +0 -0
  11. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/e2e_testing_track/ORIGINAL_REQUEST.md +0 -0
  12. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/e2e_testing_track/SCOPE.md +0 -0
  13. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/e2e_testing_track/progress.md +0 -0
  14. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/BRIEFING.md +0 -0
  15. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/ORIGINAL_REQUEST.md +0 -0
  16. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/emojis_list.txt +0 -0
  17. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/find_unused_modules.py +0 -0
  18. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/handoff.md +0 -0
  19. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/measure_lazy_startup.py +0 -0
  20. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/measure_startup.py +0 -0
  21. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/profile_imports.py +0 -0
  22. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/progress.md +0 -0
  23. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/run_importtime.py +0 -0
  24. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/search_banner.py +0 -0
  25. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/search_emojis.py +0 -0
  26. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/search_git_usages.py +0 -0
  27. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/search_usages.py +0 -0
  28. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/test_import_profiler.py +0 -0
  29. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/explorer_init/test_mocked_sys.py +0 -0
  30. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/handoff.md +0 -0
  31. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/implementation_track/BRIEFING.md +0 -0
  32. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/implementation_track/ORIGINAL_REQUEST.md +0 -0
  33. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/implementation_track/explorer_initial_report.md +0 -0
  34. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/implementation_track/progress.md +0 -0
  35. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/orchestrator/.gitkeep +0 -0
  36. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/orchestrator/BRIEFING.md +0 -0
  37. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/orchestrator/ORIGINAL_REQUEST.md +0 -0
  38. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/orchestrator/PROJECT.md +0 -0
  39. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/orchestrator/progress.md +0 -0
  40. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/teamwork_preview_explorer_e2e_explore/BRIEFING.md +0 -0
  41. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/teamwork_preview_explorer_e2e_explore/ORIGINAL_REQUEST.md +0 -0
  42. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/teamwork_preview_explorer_e2e_explore/handoff.md +0 -0
  43. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/teamwork_preview_explorer_e2e_explore/progress.md +0 -0
  44. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/worker_e2e_testing/BRIEFING.md +0 -0
  45. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/worker_e2e_testing/ORIGINAL_REQUEST.md +0 -0
  46. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/worker_e2e_testing/progress.md +0 -0
  47. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/worker_m1_startup/BRIEFING.md +0 -0
  48. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/worker_m1_startup/ORIGINAL_REQUEST.md +0 -0
  49. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.agents/worker_m1_startup/progress.md +0 -0
  50. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.env.example +0 -0
  51. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.github/workflows/tests.yml +0 -0
  52. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/.gitignore +0 -0
  53. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/CODE_OF_CONDUCT.md +0 -0
  54. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/CONTRIBUTING.md +0 -0
  55. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/LICENSE +0 -0
  56. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/PROJECT.md +0 -0
  57. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/SECURITY.md +0 -0
  58. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/SUPPORT.md +0 -0
  59. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/TEST_INFRA.md +0 -0
  60. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/TEST_READY.md +0 -0
  61. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/__main__.py +0 -0
  62. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/changelog_generator.py +0 -0
  63. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/code_reviewer.py +0 -0
  64. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/commit_generator.py +0 -0
  65. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/conflict_resolver.py +0 -0
  66. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/gitignore_generator.py +0 -0
  67. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/history_analyzer.py +0 -0
  68. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/intent_parser.py +0 -0
  69. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/llm_factory.py +0 -0
  70. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/pr_drafter.py +0 -0
  71. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/changelog.py +0 -0
  72. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/commit.py +0 -0
  73. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/conflict.py +0 -0
  74. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/doctor.py +0 -0
  75. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/explain.py +0 -0
  76. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/ignore.py +0 -0
  77. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/intent.py +0 -0
  78. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/pr.py +0 -0
  79. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/rebase.py +0 -0
  80. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/review.py +0 -0
  81. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/search.py +0 -0
  82. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/prompts/undo.py +0 -0
  83. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ai/rebase_helper.py +0 -0
  84. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/core/config.py +0 -0
  85. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/core/context.py +0 -0
  86. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/core/diagnostics.py +0 -0
  87. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/core/git_ops.py +0 -0
  88. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/core/hooks.py +0 -0
  89. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/core/safety.py +0 -0
  90. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ui/banner.py +0 -0
  91. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ui/dashboard.py +0 -0
  92. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ui/display.py +0 -0
  93. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ui/prompts.py +0 -0
  94. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/ui/themes.py +0 -0
  95. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/utils/conflict_parser.py +0 -0
  96. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/utils/diff_parser.py +0 -0
  97. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/ace/utils/json_utils.py +0 -0
  98. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/conftest.py +0 -0
  99. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/e2e/conftest.py +0 -0
  100. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/e2e/test_tier1_features.py +0 -0
  101. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/e2e/test_tier2_boundaries.py +0 -0
  102. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/e2e/test_tier3_combinations.py +0 -0
  103. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/e2e/test_tier4_workloads.py +0 -0
  104. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_changelog_generator.py +0 -0
  105. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_code_reviewer.py +0 -0
  106. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_config_atomic_write.py +0 -0
  107. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_conflict_resolver.py +0 -0
  108. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_conflict_resolver_backup.py +0 -0
  109. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_context_gitdir_detection.py +0 -0
  110. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_diagnostics.py +0 -0
  111. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_diff_trimmer.py +0 -0
  112. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_git_ops.py +0 -0
  113. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_git_ops_execute.py +0 -0
  114. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_help.py +0 -0
  115. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_history_analyzer.py +0 -0
  116. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_hooks.py +0 -0
  117. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_ignore.py +0 -0
  118. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_intent_parser.py +0 -0
  119. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_llm_factory.py +0 -0
  120. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_llm_factory_ollama.py +0 -0
  121. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_pr_drafter.py +0 -0
  122. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_rebase_helper.py +0 -0
  123. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_safety.py +0 -0
  124. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_search.py +0 -0
  125. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_undo.py +0 -0
  126. {ace_git_copilot-0.3.4 → ace_git_copilot-0.3.5}/tests/test_workspace.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ace-git-copilot
3
- Version: 0.3.4
3
+ Version: 0.3.5
4
4
  Summary: AI-powered Git copilot — talk to Git in plain English
5
5
  Project-URL: Homepage, https://github.com/jachinsamuel/Ace
6
6
  Project-URL: Documentation, https://github.com/jachinsamuel/Ace#readme
@@ -199,6 +199,9 @@ Distributed under the MIT License. See [LICENSE](LICENSE) for more details.
199
199
 
200
200
  ## Changelog
201
201
 
202
+ ### v0.3.5 — Empty Diff Handling (2026-07-11)
203
+ * Improved warning panel message and title when committing empty files or mode changes to prevent confusing users when files are already staged.
204
+
202
205
  ### v0.3.4 — Workspace Management (2026-07-11)
203
206
  * Added new `workspace` command (alias `ws`) to scan, monitor, and navigate multiple repositories.
204
207
  * Shows active branch, staged/unstaged/untracked file counts, and local upstream sync offsets in a Rich Table.
@@ -166,6 +166,9 @@ Distributed under the MIT License. See [LICENSE](LICENSE) for more details.
166
166
 
167
167
  ## Changelog
168
168
 
169
+ ### v0.3.5 — Empty Diff Handling (2026-07-11)
170
+ * Improved warning panel message and title when committing empty files or mode changes to prevent confusing users when files are already staged.
171
+
169
172
  ### v0.3.4 — Workspace Management (2026-07-11)
170
173
  * Added new `workspace` command (alias `ws`) to scan, monitor, and navigate multiple repositories.
171
174
  * Shows active branch, staged/unstaged/untracked file counts, and local upstream sync offsets in a Rich Table.
@@ -0,0 +1 @@
1
+ __version__ = "0.3.5"
@@ -299,10 +299,22 @@ def commit_cmd(
299
299
  with spinner("Analyzing changes and generating commit message..."):
300
300
  msg = generator.generate_message(format_type=format_type, offline=offline)
301
301
  except NoStagedChangesError as e:
302
- show_warning_panel(
303
- f"{str(e)}\n\n[bold]Tip:[/bold] Stage your files first: [command]git add <files>[/command]",
304
- "No Staged Changes"
305
- )
302
+ staged_files = []
303
+ try:
304
+ staged_files = git_ops.get_status().get("staged", [])
305
+ except Exception:
306
+ pass
307
+
308
+ if staged_files:
309
+ show_warning_panel(
310
+ f"{str(e)}\n\n[bold]Tip:[/bold] Use [command]git commit -m \"message\"[/command] to commit these changes manually, or add content to the files.",
311
+ "Empty Staged Diff"
312
+ )
313
+ else:
314
+ show_warning_panel(
315
+ f"{str(e)}\n\n[bold]Tip:[/bold] Stage your files first: [command]git add <files>[/command]",
316
+ "No Staged Changes"
317
+ )
306
318
  raise typer.Exit(code=0)
307
319
  except LLMConfigurationError as e:
308
320
  show_error_panel(f"{str(e)}\n\nRun [bold]ace setup[/bold] to configure your AI credentials.", "Configuration Error")
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "ace-git-copilot"
3
- version = "0.3.4"
3
+ version = "0.3.5"
4
4
  description = "AI-powered Git copilot — talk to Git in plain English"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -1 +0,0 @@
1
- __version__ = "0.3.4"
File without changes