Skip to content

Commit 7005171

Browse files
check in
1 parent 62d6f29 commit 7005171

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+8890
-0
lines changed

.DS_Store

2 KB
Binary file not shown.

Agent/release_checklist.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# CTranslate2 Fork: Release Checklist & Build Notes
2+
3+
## Ziel
4+
Ein Release (tar.gz oder wheel) meines Forks von CTranslate2 erstellen, das alle Submodules und nativen Komponenten enthält, sodass es direkt via requirements.txt installierbar und als Drop-in-Replacement nutzbar ist (z.B. für faster-whisper).
5+
6+
---
7+
8+
## Schritte zur Release-Erstellung
9+
10+
### 1. Submodules initialisieren
11+
Stelle sicher, dass alle Submodules im Repo enthalten sind:
12+
```sh
13+
git submodule update --init --recursive
14+
```
15+
16+
### 2. Source-Distribution und/oder Wheel bauen
17+
Empfohlen: Beide Formate erzeugen (sdist und wheel):
18+
```sh
19+
cd python
20+
python3 -m pip install --upgrade build setuptools wheel
21+
python3 -m build --sdist --wheel
22+
```
23+
Die gebauten Dateien liegen im `python/dist/`-Verzeichnis.
24+
25+
### 3. Release auf GitHub erstellen
26+
- Erstelle einen neuen Release-Tag (z.B. `vX.Y.Z`).
27+
- Lade die erzeugten Artefakte (`.tar.gz`, `.whl`) im Release-Dialog hoch.
28+
29+
### 4. Test der Installation
30+
In einer frischen venv:
31+
```sh
32+
python3 -m venv testenv
33+
source testenv/bin/activate
34+
pip install https://github.com/NADOOIT/CTranslate2/releases/download/vX.Y.Z/ctranslate2-X.Y.Z.tar.gz
35+
python -c "import ctranslate2; print(ctranslate2.__version__)"
36+
```
37+
Die Ausgabe muss die richtige Version zeigen und der Import darf keinen Fehler werfen.
38+
39+
### 5. Integration in requirements.txt
40+
```txt
41+
ctranslate2 @ https://github.com/NADOOIT/CTranslate2/releases/download/vX.Y.Z/ctranslate2-X.Y.Z.tar.gz
42+
```
43+
44+
---
45+
46+
## Hinweise & Automatisierung
47+
- Für zukünftige Releases empfiehlt sich ein GitHub Actions Workflow, der automatisch Submodules initialisiert, baut und die Artefakte an den Release anfügt.
48+
- Beispiel-Workflow: Siehe offizielle CTranslate2- oder PyPI-Projekte.
49+
- Prüfe, dass im sdist/wheel alle nativen Komponenten und Python-Bindings enthalten sind. Das ctranslate2-Verzeichnis und die .so/.dylib müssen im Paket liegen.
50+
51+
---
52+
53+
## Troubleshooting
54+
- Wenn beim Build aus dem Release kein Python-Binding entsteht: Prüfe setup.py und pyproject.toml auf vollständige Einbindung aller Komponenten.
55+
- Bei Fehlern: Build-Log prüfen, insbesondere auf fehlende Submodules oder native Abhängigkeiten.
56+
57+
---
58+
59+
**Status:**
60+
- [ ] Submodules initialisiert
61+
- [ ] sdist/wheel gebaut
62+
- [ ] Release erstellt und Artefakte hochgeladen
63+
- [ ] Installation aus Release getestet
64+
- [ ] requirements.txt angepasst
65+
- [ ] (Optional) Automatisierung eingerichtet
66+
67+
---
68+
69+
*Zuletzt aktualisiert: 2025-04-27*
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/Users/christophbackhaus/Documents/GitHub/CTranslate2/python/Agent/testenv/bin/python3
2+
# -*- coding: utf-8 -*-
3+
import re
4+
import sys
5+
from build.__main__ import entrypoint
6+
if __name__ == '__main__':
7+
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
8+
sys.exit(entrypoint())
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
pip
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
Copyright © 2019 Filipe Laíns <filipe.lains@gmail.com>
2+
3+
Permission is hereby granted, free of charge, to any person obtaining a
4+
copy of this software and associated documentation files (the "Software"),
5+
to deal in the Software without restriction, including without limitation
6+
the rights to use, copy, modify, merge, publish, distribute, sublicense,
7+
and/or sell copies of the Software, and to permit persons to whom the
8+
Software is furnished to do so, subject to the following conditions:
9+
10+
The above copyright notice and this permission notice (including the next
11+
paragraph) shall be included in all copies or substantial portions of the
12+
Software.
13+
14+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17+
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20+
DEALINGS IN THE SOFTWARE.
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
Metadata-Version: 2.1
2+
Name: build
3+
Version: 1.2.2.post1
4+
Summary: A simple, correct Python build frontend
5+
Author-email: Filipe Laíns <lains@riseup.net>, Bernát Gábor <gaborjbernat@gmail.com>, layday <layday@protonmail.com>, Henry Schreiner <henryschreineriii@gmail.com>
6+
Requires-Python: >= 3.8
7+
Description-Content-Type: text/markdown
8+
Classifier: License :: OSI Approved :: MIT License
9+
Classifier: Programming Language :: Python :: 3
10+
Classifier: Programming Language :: Python :: 3 :: Only
11+
Classifier: Programming Language :: Python :: 3.8
12+
Classifier: Programming Language :: Python :: 3.9
13+
Classifier: Programming Language :: Python :: 3.10
14+
Classifier: Programming Language :: Python :: 3.11
15+
Classifier: Programming Language :: Python :: 3.12
16+
Classifier: Programming Language :: Python :: 3.13
17+
Classifier: Programming Language :: Python :: Implementation :: CPython
18+
Classifier: Programming Language :: Python :: Implementation :: PyPy
19+
Requires-Dist: packaging >= 19.1
20+
Requires-Dist: pyproject_hooks
21+
Requires-Dist: colorama; os_name == "nt"
22+
Requires-Dist: importlib-metadata >= 4.6; python_full_version < "3.10.2"
23+
Requires-Dist: tomli >= 1.1.0; python_version < "3.11"
24+
Requires-Dist: furo >= 2023.08.17 ; extra == "docs"
25+
Requires-Dist: sphinx ~= 7.0 ; extra == "docs"
26+
Requires-Dist: sphinx-argparse-cli >= 1.5 ; extra == "docs"
27+
Requires-Dist: sphinx-autodoc-typehints >= 1.10 ; extra == "docs"
28+
Requires-Dist: sphinx-issues >= 3.0.0 ; extra == "docs"
29+
Requires-Dist: build[uv, virtualenv] ; extra == "test"
30+
Requires-Dist: filelock >= 3 ; extra == "test"
31+
Requires-Dist: pytest >= 6.2.4 ; extra == "test"
32+
Requires-Dist: pytest-cov >= 2.12 ; extra == "test"
33+
Requires-Dist: pytest-mock >= 2 ; extra == "test"
34+
Requires-Dist: pytest-rerunfailures >= 9.1 ; extra == "test"
35+
Requires-Dist: pytest-xdist >= 1.34 ; extra == "test"
36+
Requires-Dist: wheel >= 0.36.0 ; extra == "test"
37+
Requires-Dist: setuptools >= 42.0.0 ; extra == "test" and ( python_version < "3.10")
38+
Requires-Dist: setuptools >= 56.0.0 ; extra == "test" and ( python_version == "3.10")
39+
Requires-Dist: setuptools >= 56.0.0 ; extra == "test" and ( python_version == "3.11")
40+
Requires-Dist: setuptools >= 67.8.0 ; extra == "test" and ( python_version >= "3.12")
41+
Requires-Dist: build[uv] ; extra == "typing"
42+
Requires-Dist: importlib-metadata >= 5.1 ; extra == "typing"
43+
Requires-Dist: mypy ~= 1.9.0 ; extra == "typing"
44+
Requires-Dist: tomli ; extra == "typing"
45+
Requires-Dist: typing-extensions >= 3.7.4.3 ; extra == "typing"
46+
Requires-Dist: uv >= 0.1.18 ; extra == "uv"
47+
Requires-Dist: virtualenv >= 20.0.35 ; extra == "virtualenv"
48+
Project-URL: changelog, https://build.pypa.io/en/stable/changelog.html
49+
Project-URL: homepage, https://build.pypa.io
50+
Project-URL: issues, https://github.com/pypa/build/issues
51+
Project-URL: source, https://github.com/pypa/build
52+
Provides-Extra: docs
53+
Provides-Extra: test
54+
Provides-Extra: typing
55+
Provides-Extra: uv
56+
Provides-Extra: virtualenv
57+
58+
# build
59+
60+
[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/pypa/build/main.svg)](https://results.pre-commit.ci/latest/github/pypa/build/main)
61+
[![CI test](https://github.com/pypa/build/actions/workflows/test.yml/badge.svg)](https://github.com/pypa/build/actions/workflows/test.yml)
62+
[![codecov](https://codecov.io/gh/pypa/build/branch/main/graph/badge.svg)](https://codecov.io/gh/pypa/build)
63+
64+
[![Documentation Status](https://readthedocs.org/projects/pypa-build/badge/?version=latest)](https://build.pypa.io/en/latest/?badge=latest)
65+
[![PyPI version](https://badge.fury.io/py/build.svg)](https://pypi.org/project/build/)
66+
[![Discord](https://img.shields.io/discord/803025117553754132?label=Discord%20chat%20%23build)](https://discord.gg/pypa)
67+
68+
A simple, correct Python build frontend.
69+
70+
See the [documentation](https://build.pypa.io) for more information.
71+
72+
### Installation
73+
74+
`build` can be installed via `pip` or an equivalent via:
75+
76+
```console
77+
$ pip install build
78+
```
79+
80+
### Usage
81+
82+
```console
83+
$ python -m build
84+
```
85+
86+
This will build the package in an isolated environment, generating a
87+
source-distribution and wheel in the directory `dist/`.
88+
See the [documentation](https://build.pypa.io) for full information.
89+
90+
### Common arguments
91+
92+
- `--sdist` (`-s`): Produce just an SDist
93+
- `--wheel` (`-w`): Produce just a wheel
94+
- `-C<option>=<value>`: A Config-setting, the PEP 517 way of passing options to a backend. Can be passed multiple times. Matching options will make a list. Note that setuptools has very limited support.
95+
- `--installer`: Pick an installer for the isolated build (`pip` or `uv`).
96+
- `--no-isolation` (`-n`): Disable build isolation.
97+
- `--skip-dependency-check` (`-x`): Disable dependency checking when not isolated; this should be done if some requirements or version ranges are not required for non-isolated builds.
98+
- `--outdir` (`-o`): The output directory (defaults to `dist`)
99+
100+
Some common combinations of arguments:
101+
102+
- `--sdist --wheel` (`-sw`): Produce and SDist and a wheel, both from the source distribution. The default (if no flag is passed) is to build an SDist and then build a wheel _from_ the SDist.
103+
- `-nx`: Disable build isolation and dependency checking. Identical to pip and uv's `--no-build-isolation` flag.
104+
105+
### Integration with other tools
106+
107+
#### pipx
108+
109+
If you use [pipx][], such as in GitHub Actions, the following command will download
110+
and run build in one step:
111+
112+
```console
113+
$ pipx run build
114+
```
115+
116+
#### uv
117+
118+
If you want to use [uv][] to speed up the virtual environment creation, you can use
119+
`--installer=uv`. You can get a Python wheel for `uv` with the `[uv]` extra.
120+
Combining both suggestions yields the following:
121+
122+
```console
123+
$ pipx run build[uv] --installer=uv
124+
```
125+
126+
#### cibuildwheel
127+
128+
If you are using [cibuildwheel][], build is integrated and can be use with either (in your `pyproject.toml`):
129+
130+
```toml
131+
[tool.cibuildwheel]
132+
build-frontend = "build"
133+
```
134+
135+
or
136+
137+
```toml
138+
[tool.cibuildwheel]
139+
build-frontend = "build[uv]"
140+
```
141+
142+
(Be sure to pre-install uv before running cibuildwheel for this one!)
143+
144+
#### Conda-forge
145+
146+
On conda-forge, this package is called [python-build][].
147+
148+
### Code of Conduct
149+
150+
Everyone interacting in the build's codebase, issue trackers, chat rooms, and mailing lists is expected to follow
151+
the [PSF Code of Conduct].
152+
153+
[psf code of conduct]: https://github.com/pypa/.github/blob/main/CODE_OF_CONDUCT.md
154+
[pipx]: https://pipx.pypa.io
155+
[uv]: https://docs.astral.sh/uv/
156+
[cibuildwheel]: https://cibuildwheel.pypa.io
157+
[python-build]: https://github.com/conda-forge/python-build-feedstock
158+
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
../../../bin/pyproject-build,sha256=4oIGPjAaG9kHwYeUaIXt5bc374mz6uEZNmCLGGD_cow,295
2+
build-1.2.2.post1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
3+
build-1.2.2.post1.dist-info/LICENSE,sha256=qvminKWQeXHM8H3gJTdds0U5qNXu684gtGCZgFciEG8,1113
4+
build-1.2.2.post1.dist-info/METADATA,sha256=QweVLVd0qUBgEKOJsE6JtIRbqb2ozkOe4hyIAfeXOTc,6450
5+
build-1.2.2.post1.dist-info/RECORD,,
6+
build-1.2.2.post1.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7+
build-1.2.2.post1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
8+
build-1.2.2.post1.dist-info/entry_points.txt,sha256=MYbbM6JGYubgIjTgcLpNIZpc0PWbi9mRAW7VhtczlS8,105
9+
build/__init__.py,sha256=4oxVWC_M_hRTRSyDrU4d0Q-3hPV6J0ThGGzqQWp2YWU,843
10+
build/__main__.py,sha256=pvzlY6-r8VXHSD3h7SgANITl5vDV1ZMdEPx8n_LysuA,14227
11+
build/__pycache__/__init__.cpython-312.pyc,,
12+
build/__pycache__/__main__.cpython-312.pyc,,
13+
build/__pycache__/_builder.cpython-312.pyc,,
14+
build/__pycache__/_ctx.cpython-312.pyc,,
15+
build/__pycache__/_exceptions.cpython-312.pyc,,
16+
build/__pycache__/_types.cpython-312.pyc,,
17+
build/__pycache__/_util.cpython-312.pyc,,
18+
build/__pycache__/env.cpython-312.pyc,,
19+
build/__pycache__/util.cpython-312.pyc,,
20+
build/_builder.py,sha256=Z2uDHZxil43HLfhZ6KKc3qjd5ZNiJfK1Zu6WgJLJTA4,13469
21+
build/_compat/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22+
build/_compat/__pycache__/__init__.cpython-312.pyc,,
23+
build/_compat/__pycache__/importlib.cpython-312.pyc,,
24+
build/_compat/__pycache__/tarfile.cpython-312.pyc,,
25+
build/_compat/__pycache__/tomllib.cpython-312.pyc,,
26+
build/_compat/importlib.py,sha256=mdUYYn5ciavBQ6zFE-2ghFDotKZC4QufbKMyPg5h3WI,467
27+
build/_compat/tarfile.py,sha256=8-sDnbG-9mZ5OsmSVPArxE6KI6dPe0wX2yf4etDSqxk,816
28+
build/_compat/tomllib.py,sha256=JT-q9fBu_vOt4fPWKh2bIKvfko633z_74F_TP_Y17cs,255
29+
build/_ctx.py,sha256=QEBzQYYT2Buyj0eHkTKIQ3GK3LEV6rEC-2iRiuU4sT8,2880
30+
build/_exceptions.py,sha256=lxEYr42eG-wgfLbcMhlks4cc0u-P3zMM8sbWraINwI4,1625
31+
build/_types.py,sha256=if2-I_0F1HGWhhufZqZiBDvAd_niCMSKaHAmWHUIseg,673
32+
build/_util.py,sha256=D4xFxoA4PT27xalv9a-5flCtZgZHNFaKpiIM2XpdM9s,2325
33+
build/env.py,sha256=lDe3HfqNr4BI9mMFsGYp4YbF_IJyFBfO74OftF81KmM,13473
34+
build/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35+
build/util.py,sha256=iBHPpU128o3EbxdFOTSO3a4NktO9DnTWiJoXBedqmu0,1776

python/Agent/testenv/lib/python3.12/site-packages/build-1.2.2.post1.dist-info/REQUESTED

Whitespace-only changes.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Wheel-Version: 1.0
2+
Generator: flit 3.9.0
3+
Root-Is-Purelib: true
4+
Tag: py3-none-any
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
[console_scripts]
2+
pyproject-build=build.__main__:entrypoint
3+
4+
[pipx.run]
5+
build=build.__main__:entrypoint
6+

0 commit comments

Comments
 (0)