git-copilot-commit 0.1.5__tar.gz → 0.1.7__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.
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/PKG-INFO +8 -4
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/README.md +6 -2
- git_copilot_commit-0.1.7/pyproject.toml +108 -0
- git_copilot_commit-0.1.7/src/git_copilot_commit/__init__.py +3 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/src/git_copilot_commit/cli.py +24 -6
- git_copilot_commit-0.1.7/src/git_copilot_commit/version.py +40 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/uv.lock +65 -64
- git_copilot_commit-0.1.5/pyproject.toml +0 -22
- git_copilot_commit-0.1.5/src/git_copilot_commit/__init__.py +0 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/.github/workflows/ci.yml +0 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/.gitignore +0 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/.python-version +0 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/LICENSE +0 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/src/git_copilot_commit/git.py +0 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/src/git_copilot_commit/py.typed +0 -0
- {git_copilot_commit-0.1.5 → git_copilot_commit-0.1.7}/src/git_copilot_commit/settings.py +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: git-copilot-commit
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.7
|
|
4
4
|
Summary: Automatically generate and commit changes using copilot
|
|
5
5
|
Author-email: Dheepak Krishnamurthy <1813121+kdheepak@users.noreply.github.com>
|
|
6
6
|
License-File: LICENSE
|
|
7
7
|
Requires-Python: >=3.12
|
|
8
|
-
Requires-Dist: pycopilot>=0.1.
|
|
8
|
+
Requires-Dist: pycopilot>=0.1.6
|
|
9
9
|
Requires-Dist: rich>=14.0.0
|
|
10
10
|
Requires-Dist: typer>=0.16.0
|
|
11
11
|
Requires-Dist: xdg-base-dirs>=6.0.2
|
|
@@ -33,8 +33,6 @@ Install using uv (recommended):
|
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
35
|
uv tool install git-copilot-commit
|
|
36
|
-
# or
|
|
37
|
-
uvx git-copilot-commit
|
|
38
36
|
```
|
|
39
37
|
|
|
40
38
|
Or with pip:
|
|
@@ -43,6 +41,12 @@ Or with pip:
|
|
|
43
41
|
pipx install git-copilot-commit
|
|
44
42
|
```
|
|
45
43
|
|
|
44
|
+
Or without installing:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
uvx git-copilot-commit --help
|
|
48
|
+
```
|
|
49
|
+
|
|
46
50
|
## Prerequisites
|
|
47
51
|
|
|
48
52
|
**GitHub Copilot Access**: You need an active GitHub Copilot subscription
|
|
@@ -20,8 +20,6 @@ Install using uv (recommended):
|
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
uv tool install git-copilot-commit
|
|
23
|
-
# or
|
|
24
|
-
uvx git-copilot-commit
|
|
25
23
|
```
|
|
26
24
|
|
|
27
25
|
Or with pip:
|
|
@@ -30,6 +28,12 @@ Or with pip:
|
|
|
30
28
|
pipx install git-copilot-commit
|
|
31
29
|
```
|
|
32
30
|
|
|
31
|
+
Or without installing:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
uvx git-copilot-commit --help
|
|
35
|
+
```
|
|
36
|
+
|
|
33
37
|
## Prerequisites
|
|
34
38
|
|
|
35
39
|
**GitHub Copilot Access**: You need an active GitHub Copilot subscription
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "git-copilot-commit"
|
|
3
|
+
version = "0.1.7"
|
|
4
|
+
description = "Automatically generate and commit changes using copilot"
|
|
5
|
+
readme = "README.md"
|
|
6
|
+
authors = [
|
|
7
|
+
{ name = "Dheepak Krishnamurthy", email = "1813121+kdheepak@users.noreply.github.com" },
|
|
8
|
+
]
|
|
9
|
+
requires-python = ">=3.12"
|
|
10
|
+
dependencies = [
|
|
11
|
+
"pycopilot>=0.1.6",
|
|
12
|
+
"rich>=14.0.0",
|
|
13
|
+
"typer>=0.16.0",
|
|
14
|
+
"xdg-base-dirs>=6.0.2",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
[project.scripts]
|
|
18
|
+
git-copilot-commit = "git_copilot_commit.cli:app"
|
|
19
|
+
|
|
20
|
+
[build-system]
|
|
21
|
+
requires = ["hatchling"]
|
|
22
|
+
build-backend = "hatchling.build"
|
|
23
|
+
|
|
24
|
+
[tool.semantic_release]
|
|
25
|
+
assets = []
|
|
26
|
+
build_command_env = []
|
|
27
|
+
commit_message = "{version}\n\nAutomatically generated by python-semantic-release"
|
|
28
|
+
commit_parser = "conventional"
|
|
29
|
+
logging_use_named_masks = false
|
|
30
|
+
major_on_zero = true
|
|
31
|
+
allow_zero_version = false
|
|
32
|
+
repo_dir = "."
|
|
33
|
+
no_git_verify = false
|
|
34
|
+
tag_format = "v{version}"
|
|
35
|
+
version_toml = ["pyproject.toml:project.version"]
|
|
36
|
+
|
|
37
|
+
[tool.semantic_release.branches.main]
|
|
38
|
+
match = "(main|master)"
|
|
39
|
+
prerelease_token = "rc"
|
|
40
|
+
prerelease = false
|
|
41
|
+
|
|
42
|
+
[tool.semantic_release.changelog]
|
|
43
|
+
changelog_file = ""
|
|
44
|
+
exclude_commit_patterns = []
|
|
45
|
+
mode = "update"
|
|
46
|
+
insertion_flag = "<!-- version list -->"
|
|
47
|
+
template_dir = "templates"
|
|
48
|
+
|
|
49
|
+
[tool.semantic_release.changelog.default_templates]
|
|
50
|
+
changelog_file = "CHANGELOG.md"
|
|
51
|
+
output_format = "md"
|
|
52
|
+
mask_initial_release = true
|
|
53
|
+
|
|
54
|
+
[tool.semantic_release.changelog.environment]
|
|
55
|
+
block_start_string = "{%"
|
|
56
|
+
block_end_string = "%}"
|
|
57
|
+
variable_start_string = "{{"
|
|
58
|
+
variable_end_string = "}}"
|
|
59
|
+
comment_start_string = "{#"
|
|
60
|
+
comment_end_string = "#}"
|
|
61
|
+
trim_blocks = false
|
|
62
|
+
lstrip_blocks = false
|
|
63
|
+
newline_sequence = "\n"
|
|
64
|
+
keep_trailing_newline = false
|
|
65
|
+
extensions = []
|
|
66
|
+
autoescape = false
|
|
67
|
+
|
|
68
|
+
[tool.semantic_release.commit_author]
|
|
69
|
+
env = "GIT_COMMIT_AUTHOR"
|
|
70
|
+
default = "semantic-release <semantic-release>"
|
|
71
|
+
|
|
72
|
+
[tool.semantic_release.commit_parser_options]
|
|
73
|
+
minor_tags = ["feat"]
|
|
74
|
+
patch_tags = ["fix", "perf"]
|
|
75
|
+
other_allowed_tags = [
|
|
76
|
+
"build",
|
|
77
|
+
"chore",
|
|
78
|
+
"ci",
|
|
79
|
+
"docs",
|
|
80
|
+
"style",
|
|
81
|
+
"refactor",
|
|
82
|
+
"test",
|
|
83
|
+
]
|
|
84
|
+
allowed_tags = [
|
|
85
|
+
"feat",
|
|
86
|
+
"fix",
|
|
87
|
+
"perf",
|
|
88
|
+
"build",
|
|
89
|
+
"chore",
|
|
90
|
+
"ci",
|
|
91
|
+
"docs",
|
|
92
|
+
"style",
|
|
93
|
+
"refactor",
|
|
94
|
+
"test",
|
|
95
|
+
]
|
|
96
|
+
default_bump_level = 0
|
|
97
|
+
parse_squash_commits = true
|
|
98
|
+
ignore_merge_commits = true
|
|
99
|
+
|
|
100
|
+
[tool.semantic_release.remote]
|
|
101
|
+
name = "origin"
|
|
102
|
+
type = "github"
|
|
103
|
+
ignore_token_for_push = false
|
|
104
|
+
insecure = false
|
|
105
|
+
|
|
106
|
+
[tool.semantic_release.publish]
|
|
107
|
+
dist_glob_patterns = ["dist/*"]
|
|
108
|
+
upload_to_vcs_release = true
|
|
@@ -7,18 +7,31 @@ from rich.console import Console
|
|
|
7
7
|
from rich.prompt import Confirm
|
|
8
8
|
from rich.panel import Panel
|
|
9
9
|
from rich.table import Table
|
|
10
|
+
import rich
|
|
10
11
|
|
|
11
12
|
from pycopilot.copilot import Copilot
|
|
12
13
|
from pycopilot.auth import Authentication
|
|
13
14
|
from .git import GitRepository, GitError, NotAGitRepositoryError, GitStatus
|
|
14
15
|
from .settings import Settings
|
|
16
|
+
from .version import __version__
|
|
15
17
|
|
|
16
18
|
console = Console()
|
|
17
19
|
app = typer.Typer(help=__doc__, add_completion=False)
|
|
18
20
|
|
|
19
21
|
|
|
22
|
+
def version_callback(value: bool):
|
|
23
|
+
if value:
|
|
24
|
+
rich.print(f"git-copilot-version [bold green]{__version__}[/]")
|
|
25
|
+
raise typer.Exit()
|
|
26
|
+
|
|
27
|
+
|
|
20
28
|
@app.callback(invoke_without_command=True)
|
|
21
|
-
def main(
|
|
29
|
+
def main(
|
|
30
|
+
ctx: typer.Context,
|
|
31
|
+
version: bool = typer.Option(
|
|
32
|
+
False, "--version", callback=version_callback, help="Show version and exit"
|
|
33
|
+
),
|
|
34
|
+
):
|
|
22
35
|
"""
|
|
23
36
|
Automatically commit changes in the current git repository.
|
|
24
37
|
"""
|
|
@@ -162,11 +175,13 @@ Return the commit message as the output without any additional text, explanation
|
|
|
162
175
|
{recent_commits_text}
|
|
163
176
|
|
|
164
177
|
`git status`:
|
|
178
|
+
|
|
165
179
|
```
|
|
166
180
|
{status.get_porcelain_output()}
|
|
167
181
|
```
|
|
168
182
|
|
|
169
183
|
`git diff --staged`:
|
|
184
|
+
|
|
170
185
|
```
|
|
171
186
|
{status.staged_diff}
|
|
172
187
|
```
|
|
@@ -224,13 +239,15 @@ def commit(
|
|
|
224
239
|
|
|
225
240
|
if status.has_unstaged_changes:
|
|
226
241
|
if Confirm.ask(
|
|
227
|
-
"Modified files found. Add [bold yellow]all unstaged changes[/] to staging?"
|
|
242
|
+
"Modified files found. Add [bold yellow]all unstaged changes[/] to staging?",
|
|
243
|
+
default=True,
|
|
228
244
|
):
|
|
229
245
|
repo.stage_modified()
|
|
230
246
|
console.print("[green]Staged modified files.[/green]")
|
|
231
247
|
if status.has_untracked_files:
|
|
232
248
|
if Confirm.ask(
|
|
233
|
-
"Untracked files found. Add [bold yellow]all untracked files and unstaged changes[/] to staging?"
|
|
249
|
+
"Untracked files found. Add [bold yellow]all untracked files and unstaged changes[/] to staging?",
|
|
250
|
+
default=True,
|
|
234
251
|
):
|
|
235
252
|
repo.stage_files()
|
|
236
253
|
console.print("[green]Staged untracked files.[/green]")
|
|
@@ -243,10 +260,11 @@ def commit(
|
|
|
243
260
|
raise typer.Exit()
|
|
244
261
|
|
|
245
262
|
# Generate or use provided commit message
|
|
246
|
-
console.
|
|
247
|
-
with console.status("[cyan]Generating commit message using Copilot API...[/cyan]"):
|
|
263
|
+
with console.status("[cyan]Generating commit message...[/cyan]"):
|
|
248
264
|
commit_message = generate_commit_message(repo, status, model)
|
|
249
265
|
|
|
266
|
+
console.print("[cyan]Generated commit message...[/cyan]")
|
|
267
|
+
|
|
250
268
|
# Display commit message
|
|
251
269
|
console.print(Panel(commit_message, title="Commit Message", border_style="green"))
|
|
252
270
|
|
|
@@ -292,7 +310,7 @@ def commit(
|
|
|
292
310
|
@app.command()
|
|
293
311
|
def authenticate():
|
|
294
312
|
"""Autheticate with GitHub Copilot."""
|
|
295
|
-
Authentication().
|
|
313
|
+
Authentication().auth()
|
|
296
314
|
|
|
297
315
|
|
|
298
316
|
@app.command()
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import subprocess
|
|
2
|
+
import shlex
|
|
3
|
+
from importlib import metadata
|
|
4
|
+
import os
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
DIR = os.path.dirname(os.path.realpath(__file__))
|
|
8
|
+
|
|
9
|
+
VERSION = metadata.version(__package__ or "git-copilot-commit")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def cmd(cmd, kind="") -> str:
|
|
13
|
+
"""
|
|
14
|
+
Get git subprocess output
|
|
15
|
+
"""
|
|
16
|
+
output = "unknown"
|
|
17
|
+
try:
|
|
18
|
+
output = (
|
|
19
|
+
subprocess.check_output(shlex.split(cmd), cwd=DIR, stderr=subprocess.STDOUT)
|
|
20
|
+
.decode()
|
|
21
|
+
.strip()
|
|
22
|
+
)
|
|
23
|
+
except Exception as _:
|
|
24
|
+
...
|
|
25
|
+
return f"{kind}{output}"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def last_commit_id() -> str:
|
|
29
|
+
return cmd("git describe --always --dirty --abbrev=7")
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def branch() -> str:
|
|
33
|
+
return cmd("git rev-parse --abbrev-ref HEAD")
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def get_git_version() -> str:
|
|
37
|
+
return f"{last_commit_id()}-{branch()}"
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
__version__ = f"v{VERSION}-{get_git_version()}"
|
|
@@ -12,47 +12,26 @@ wheels = [
|
|
|
12
12
|
]
|
|
13
13
|
|
|
14
14
|
[[package]]
|
|
15
|
-
name = "
|
|
16
|
-
version = "
|
|
15
|
+
name = "anyio"
|
|
16
|
+
version = "4.9.0"
|
|
17
17
|
source = { registry = "https://pypi.org/simple" }
|
|
18
|
-
|
|
18
|
+
dependencies = [
|
|
19
|
+
{ name = "idna" },
|
|
20
|
+
{ name = "sniffio" },
|
|
21
|
+
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
|
22
|
+
]
|
|
23
|
+
sdist = { url = "https://files.pythonhosted.org/packages/95/7d/4c1bd541d4dffa1b52bd83fb8527089e097a106fc90b467a7313b105f840/anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028", size = 190949, upload-time = "2025-03-17T00:02:54.77Z" }
|
|
19
24
|
wheels = [
|
|
20
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
25
|
+
{ url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c", size = 100916, upload-time = "2025-03-17T00:02:52.713Z" },
|
|
21
26
|
]
|
|
22
27
|
|
|
23
28
|
[[package]]
|
|
24
|
-
name = "
|
|
25
|
-
version = "
|
|
29
|
+
name = "certifi"
|
|
30
|
+
version = "2025.7.14"
|
|
26
31
|
source = { registry = "https://pypi.org/simple" }
|
|
27
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
32
|
+
sdist = { url = "https://files.pythonhosted.org/packages/b3/76/52c535bcebe74590f296d6c77c86dabf761c41980e1347a2422e4aa2ae41/certifi-2025.7.14.tar.gz", hash = "sha256:8ea99dbdfaaf2ba2f9bac77b9249ef62ec5218e7c2b2e903378ed5fccf765995", size = 163981, upload-time = "2025-07-14T03:29:28.449Z" }
|
|
28
33
|
wheels = [
|
|
29
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
30
|
-
{ url = "https://files.pythonhosted.org/packages/ee/8a/1a5e33b73e0d9287274f899d967907cd0bf9c343e651755d9307e0dbf2b3/charset_normalizer-3.4.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cddf7bd982eaa998934a91f69d182aec997c6c468898efe6679af88283b498d3", size = 143790, upload-time = "2025-05-02T08:32:35.768Z" },
|
|
31
|
-
{ url = "https://files.pythonhosted.org/packages/66/52/59521f1d8e6ab1482164fa21409c5ef44da3e9f653c13ba71becdd98dec3/charset_normalizer-3.4.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcbe676a55d7445b22c10967bceaaf0ee69407fbe0ece4d032b6eb8d4565982a", size = 153924, upload-time = "2025-05-02T08:32:37.284Z" },
|
|
32
|
-
{ url = "https://files.pythonhosted.org/packages/86/2d/fb55fdf41964ec782febbf33cb64be480a6b8f16ded2dbe8db27a405c09f/charset_normalizer-3.4.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d41c4d287cfc69060fa91cae9683eacffad989f1a10811995fa309df656ec214", size = 146626, upload-time = "2025-05-02T08:32:38.803Z" },
|
|
33
|
-
{ url = "https://files.pythonhosted.org/packages/8c/73/6ede2ec59bce19b3edf4209d70004253ec5f4e319f9a2e3f2f15601ed5f7/charset_normalizer-3.4.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e594135de17ab3866138f496755f302b72157d115086d100c3f19370839dd3a", size = 148567, upload-time = "2025-05-02T08:32:40.251Z" },
|
|
34
|
-
{ url = "https://files.pythonhosted.org/packages/09/14/957d03c6dc343c04904530b6bef4e5efae5ec7d7990a7cbb868e4595ee30/charset_normalizer-3.4.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cf713fe9a71ef6fd5adf7a79670135081cd4431c2943864757f0fa3a65b1fafd", size = 150957, upload-time = "2025-05-02T08:32:41.705Z" },
|
|
35
|
-
{ url = "https://files.pythonhosted.org/packages/0d/c8/8174d0e5c10ccebdcb1b53cc959591c4c722a3ad92461a273e86b9f5a302/charset_normalizer-3.4.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a370b3e078e418187da8c3674eddb9d983ec09445c99a3a263c2011993522981", size = 145408, upload-time = "2025-05-02T08:32:43.709Z" },
|
|
36
|
-
{ url = "https://files.pythonhosted.org/packages/58/aa/8904b84bc8084ac19dc52feb4f5952c6df03ffb460a887b42615ee1382e8/charset_normalizer-3.4.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a955b438e62efdf7e0b7b52a64dc5c3396e2634baa62471768a64bc2adb73d5c", size = 153399, upload-time = "2025-05-02T08:32:46.197Z" },
|
|
37
|
-
{ url = "https://files.pythonhosted.org/packages/c2/26/89ee1f0e264d201cb65cf054aca6038c03b1a0c6b4ae998070392a3ce605/charset_normalizer-3.4.2-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:7222ffd5e4de8e57e03ce2cef95a4c43c98fcb72ad86909abdfc2c17d227fc1b", size = 156815, upload-time = "2025-05-02T08:32:48.105Z" },
|
|
38
|
-
{ url = "https://files.pythonhosted.org/packages/fd/07/68e95b4b345bad3dbbd3a8681737b4338ff2c9df29856a6d6d23ac4c73cb/charset_normalizer-3.4.2-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:bee093bf902e1d8fc0ac143c88902c3dfc8941f7ea1d6a8dd2bcb786d33db03d", size = 154537, upload-time = "2025-05-02T08:32:49.719Z" },
|
|
39
|
-
{ url = "https://files.pythonhosted.org/packages/77/1a/5eefc0ce04affb98af07bc05f3bac9094513c0e23b0562d64af46a06aae4/charset_normalizer-3.4.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dedb8adb91d11846ee08bec4c8236c8549ac721c245678282dcb06b221aab59f", size = 149565, upload-time = "2025-05-02T08:32:51.404Z" },
|
|
40
|
-
{ url = "https://files.pythonhosted.org/packages/37/a0/2410e5e6032a174c95e0806b1a6585eb21e12f445ebe239fac441995226a/charset_normalizer-3.4.2-cp312-cp312-win32.whl", hash = "sha256:db4c7bf0e07fc3b7d89ac2a5880a6a8062056801b83ff56d8464b70f65482b6c", size = 98357, upload-time = "2025-05-02T08:32:53.079Z" },
|
|
41
|
-
{ url = "https://files.pythonhosted.org/packages/6c/4f/c02d5c493967af3eda9c771ad4d2bbc8df6f99ddbeb37ceea6e8716a32bc/charset_normalizer-3.4.2-cp312-cp312-win_amd64.whl", hash = "sha256:5a9979887252a82fefd3d3ed2a8e3b937a7a809f65dcb1e068b090e165bbe99e", size = 105776, upload-time = "2025-05-02T08:32:54.573Z" },
|
|
42
|
-
{ url = "https://files.pythonhosted.org/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0", size = 199622, upload-time = "2025-05-02T08:32:56.363Z" },
|
|
43
|
-
{ url = "https://files.pythonhosted.org/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf", size = 143435, upload-time = "2025-05-02T08:32:58.551Z" },
|
|
44
|
-
{ url = "https://files.pythonhosted.org/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e", size = 153653, upload-time = "2025-05-02T08:33:00.342Z" },
|
|
45
|
-
{ url = "https://files.pythonhosted.org/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1", size = 146231, upload-time = "2025-05-02T08:33:02.081Z" },
|
|
46
|
-
{ url = "https://files.pythonhosted.org/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c", size = 148243, upload-time = "2025-05-02T08:33:04.063Z" },
|
|
47
|
-
{ url = "https://files.pythonhosted.org/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691", size = 150442, upload-time = "2025-05-02T08:33:06.418Z" },
|
|
48
|
-
{ url = "https://files.pythonhosted.org/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0", size = 145147, upload-time = "2025-05-02T08:33:08.183Z" },
|
|
49
|
-
{ url = "https://files.pythonhosted.org/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b", size = 153057, upload-time = "2025-05-02T08:33:09.986Z" },
|
|
50
|
-
{ url = "https://files.pythonhosted.org/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff", size = 156454, upload-time = "2025-05-02T08:33:11.814Z" },
|
|
51
|
-
{ url = "https://files.pythonhosted.org/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b", size = 154174, upload-time = "2025-05-02T08:33:13.707Z" },
|
|
52
|
-
{ url = "https://files.pythonhosted.org/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148", size = 149166, upload-time = "2025-05-02T08:33:15.458Z" },
|
|
53
|
-
{ url = "https://files.pythonhosted.org/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7", size = 98064, upload-time = "2025-05-02T08:33:17.06Z" },
|
|
54
|
-
{ url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980", size = 105641, upload-time = "2025-05-02T08:33:18.753Z" },
|
|
55
|
-
{ url = "https://files.pythonhosted.org/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0", size = 52626, upload-time = "2025-05-02T08:34:40.053Z" },
|
|
34
|
+
{ url = "https://files.pythonhosted.org/packages/4f/52/34c6cf5bb9285074dc3531c437b3919e825d976fde097a7a73f79e726d03/certifi-2025.7.14-py3-none-any.whl", hash = "sha256:6b31f564a415d79ee77df69d757bb49a5bb53bd9f756cbbe24394ffd6fc1f4b2", size = 162722, upload-time = "2025-07-14T03:29:26.863Z" },
|
|
56
35
|
]
|
|
57
36
|
|
|
58
37
|
[[package]]
|
|
@@ -78,7 +57,7 @@ wheels = [
|
|
|
78
57
|
|
|
79
58
|
[[package]]
|
|
80
59
|
name = "git-copilot-commit"
|
|
81
|
-
version = "0.1.
|
|
60
|
+
version = "0.1.7"
|
|
82
61
|
source = { editable = "." }
|
|
83
62
|
dependencies = [
|
|
84
63
|
{ name = "pycopilot" },
|
|
@@ -89,12 +68,49 @@ dependencies = [
|
|
|
89
68
|
|
|
90
69
|
[package.metadata]
|
|
91
70
|
requires-dist = [
|
|
92
|
-
{ name = "pycopilot", specifier = ">=0.1.
|
|
71
|
+
{ name = "pycopilot", specifier = ">=0.1.6" },
|
|
93
72
|
{ name = "rich", specifier = ">=14.0.0" },
|
|
94
73
|
{ name = "typer", specifier = ">=0.16.0" },
|
|
95
74
|
{ name = "xdg-base-dirs", specifier = ">=6.0.2" },
|
|
96
75
|
]
|
|
97
76
|
|
|
77
|
+
[[package]]
|
|
78
|
+
name = "h11"
|
|
79
|
+
version = "0.16.0"
|
|
80
|
+
source = { registry = "https://pypi.org/simple" }
|
|
81
|
+
sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250, upload-time = "2025-04-24T03:35:25.427Z" }
|
|
82
|
+
wheels = [
|
|
83
|
+
{ url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515, upload-time = "2025-04-24T03:35:24.344Z" },
|
|
84
|
+
]
|
|
85
|
+
|
|
86
|
+
[[package]]
|
|
87
|
+
name = "httpcore"
|
|
88
|
+
version = "1.0.9"
|
|
89
|
+
source = { registry = "https://pypi.org/simple" }
|
|
90
|
+
dependencies = [
|
|
91
|
+
{ name = "certifi" },
|
|
92
|
+
{ name = "h11" },
|
|
93
|
+
]
|
|
94
|
+
sdist = { url = "https://files.pythonhosted.org/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8", size = 85484, upload-time = "2025-04-24T22:06:22.219Z" }
|
|
95
|
+
wheels = [
|
|
96
|
+
{ url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55", size = 78784, upload-time = "2025-04-24T22:06:20.566Z" },
|
|
97
|
+
]
|
|
98
|
+
|
|
99
|
+
[[package]]
|
|
100
|
+
name = "httpx"
|
|
101
|
+
version = "0.28.1"
|
|
102
|
+
source = { registry = "https://pypi.org/simple" }
|
|
103
|
+
dependencies = [
|
|
104
|
+
{ name = "anyio" },
|
|
105
|
+
{ name = "certifi" },
|
|
106
|
+
{ name = "httpcore" },
|
|
107
|
+
{ name = "idna" },
|
|
108
|
+
]
|
|
109
|
+
sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406, upload-time = "2024-12-06T15:37:23.222Z" }
|
|
110
|
+
wheels = [
|
|
111
|
+
{ url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517, upload-time = "2024-12-06T15:37:21.509Z" },
|
|
112
|
+
]
|
|
113
|
+
|
|
98
114
|
[[package]]
|
|
99
115
|
name = "idna"
|
|
100
116
|
version = "3.10"
|
|
@@ -148,20 +164,20 @@ wheels = [
|
|
|
148
164
|
|
|
149
165
|
[[package]]
|
|
150
166
|
name = "pycopilot"
|
|
151
|
-
version = "0.1.
|
|
167
|
+
version = "0.1.6"
|
|
152
168
|
source = { registry = "https://pypi.org/simple" }
|
|
153
169
|
dependencies = [
|
|
170
|
+
{ name = "httpx" },
|
|
154
171
|
{ name = "platformdirs" },
|
|
155
172
|
{ name = "prompt-toolkit" },
|
|
156
173
|
{ name = "pydantic" },
|
|
157
174
|
{ name = "questionary" },
|
|
158
|
-
{ name = "requests" },
|
|
159
175
|
{ name = "rich" },
|
|
160
176
|
{ name = "typer" },
|
|
161
177
|
]
|
|
162
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
178
|
+
sdist = { url = "https://files.pythonhosted.org/packages/45/ae/9d540cfe9411ad9f5ab58080aab86a5a7902ab668ad16fb637f287c88ba7/pycopilot-0.1.6.tar.gz", hash = "sha256:84425265e0d587d964e7b5dd93de9d9175b849b7d718107a48efb749e5b88e8e", size = 31667, upload-time = "2025-07-17T15:39:42.473Z" }
|
|
163
179
|
wheels = [
|
|
164
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
180
|
+
{ url = "https://files.pythonhosted.org/packages/3e/5f/56cd35579f5d400b2ef9f0c62b41f6024936fbfc8f69e302036588052531/pycopilot-0.1.6-py3-none-any.whl", hash = "sha256:88f39535a87d1efdc2358357d956bbe0d9e6b5a6fd60d572d46c813fe23af2d0", size = 10811, upload-time = "2025-07-17T15:39:41.608Z" },
|
|
165
181
|
]
|
|
166
182
|
|
|
167
183
|
[[package]]
|
|
@@ -242,21 +258,6 @@ wheels = [
|
|
|
242
258
|
{ url = "https://files.pythonhosted.org/packages/ad/3f/11dd4cd4f39e05128bfd20138faea57bec56f9ffba6185d276e3107ba5b2/questionary-2.1.0-py3-none-any.whl", hash = "sha256:44174d237b68bc828e4878c763a9ad6790ee61990e0ae72927694ead57bab8ec", size = 36747, upload-time = "2024-12-29T11:49:16.734Z" },
|
|
243
259
|
]
|
|
244
260
|
|
|
245
|
-
[[package]]
|
|
246
|
-
name = "requests"
|
|
247
|
-
version = "2.32.4"
|
|
248
|
-
source = { registry = "https://pypi.org/simple" }
|
|
249
|
-
dependencies = [
|
|
250
|
-
{ name = "certifi" },
|
|
251
|
-
{ name = "charset-normalizer" },
|
|
252
|
-
{ name = "idna" },
|
|
253
|
-
{ name = "urllib3" },
|
|
254
|
-
]
|
|
255
|
-
sdist = { url = "https://files.pythonhosted.org/packages/e1/0a/929373653770d8a0d7ea76c37de6e41f11eb07559b103b1c02cafb3f7cf8/requests-2.32.4.tar.gz", hash = "sha256:27d0316682c8a29834d3264820024b62a36942083d52caf2f14c0591336d3422", size = 135258, upload-time = "2025-06-09T16:43:07.34Z" }
|
|
256
|
-
wheels = [
|
|
257
|
-
{ url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl", hash = "sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c", size = 64847, upload-time = "2025-06-09T16:43:05.728Z" },
|
|
258
|
-
]
|
|
259
|
-
|
|
260
261
|
[[package]]
|
|
261
262
|
name = "rich"
|
|
262
263
|
version = "14.0.0"
|
|
@@ -279,6 +280,15 @@ wheels = [
|
|
|
279
280
|
{ url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686", size = 9755, upload-time = "2023-10-24T04:13:38.866Z" },
|
|
280
281
|
]
|
|
281
282
|
|
|
283
|
+
[[package]]
|
|
284
|
+
name = "sniffio"
|
|
285
|
+
version = "1.3.1"
|
|
286
|
+
source = { registry = "https://pypi.org/simple" }
|
|
287
|
+
sdist = { url = "https://files.pythonhosted.org/packages/a2/87/a6771e1546d97e7e041b6ae58d80074f81b7d5121207425c964ddf5cfdbd/sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc", size = 20372, upload-time = "2024-02-25T23:20:04.057Z" }
|
|
288
|
+
wheels = [
|
|
289
|
+
{ url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2", size = 10235, upload-time = "2024-02-25T23:20:01.196Z" },
|
|
290
|
+
]
|
|
291
|
+
|
|
282
292
|
[[package]]
|
|
283
293
|
name = "typer"
|
|
284
294
|
version = "0.16.0"
|
|
@@ -315,15 +325,6 @@ wheels = [
|
|
|
315
325
|
{ url = "https://files.pythonhosted.org/packages/17/69/cd203477f944c353c31bade965f880aa1061fd6bf05ded0726ca845b6ff7/typing_inspection-0.4.1-py3-none-any.whl", hash = "sha256:389055682238f53b04f7badcb49b989835495a96700ced5dab2d8feae4b26f51", size = 14552, upload-time = "2025-05-21T18:55:22.152Z" },
|
|
316
326
|
]
|
|
317
327
|
|
|
318
|
-
[[package]]
|
|
319
|
-
name = "urllib3"
|
|
320
|
-
version = "2.5.0"
|
|
321
|
-
source = { registry = "https://pypi.org/simple" }
|
|
322
|
-
sdist = { url = "https://files.pythonhosted.org/packages/15/22/9ee70a2574a4f4599c47dd506532914ce044817c7752a79b6a51286319bc/urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760", size = 393185, upload-time = "2025-06-18T14:07:41.644Z" }
|
|
323
|
-
wheels = [
|
|
324
|
-
{ url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc", size = 129795, upload-time = "2025-06-18T14:07:40.39Z" },
|
|
325
|
-
]
|
|
326
|
-
|
|
327
328
|
[[package]]
|
|
328
329
|
name = "wcwidth"
|
|
329
330
|
version = "0.2.13"
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
[project]
|
|
2
|
-
name = "git-copilot-commit"
|
|
3
|
-
version = "0.1.5"
|
|
4
|
-
description = "Automatically generate and commit changes using copilot"
|
|
5
|
-
readme = "README.md"
|
|
6
|
-
authors = [
|
|
7
|
-
{ name = "Dheepak Krishnamurthy", email = "1813121+kdheepak@users.noreply.github.com" },
|
|
8
|
-
]
|
|
9
|
-
requires-python = ">=3.12"
|
|
10
|
-
dependencies = [
|
|
11
|
-
"pycopilot>=0.1.1",
|
|
12
|
-
"rich>=14.0.0",
|
|
13
|
-
"typer>=0.16.0",
|
|
14
|
-
"xdg-base-dirs>=6.0.2",
|
|
15
|
-
]
|
|
16
|
-
|
|
17
|
-
[project.scripts]
|
|
18
|
-
git-copilot-commit = "git_copilot_commit.cli:app"
|
|
19
|
-
|
|
20
|
-
[build-system]
|
|
21
|
-
requires = ["hatchling"]
|
|
22
|
-
build-backend = "hatchling.build"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|