polyglot-python 0.2.0__py3-none-any.whl → 0.2.1__py3-none-any.whl

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.
@@ -10,7 +10,7 @@ from .translator import (
10
10
  translate,
11
11
  )
12
12
 
13
- __version__ = "0.2.0"
13
+ __version__ = "0.2.1"
14
14
 
15
15
  __all__ = [
16
16
  "Locale",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: polyglot-python
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: Deterministic multilingual Python keyword transpiler: write Python in your own language.
5
5
  Author: Furox-Art
6
6
  License-Expression: MIT
@@ -37,15 +37,21 @@ syntax with your words.
37
37
  ## Install
38
38
 
39
39
  ```bash
40
- pip install polyglot-python # after the first release
40
+ pip install polyglot-python
41
41
  pip install -e . # from source
42
42
  ```
43
43
 
44
- The first release is prepared but not yet on PyPI; install from source until it
45
- is published. Requires Python 3.12+. Python 3.10/3.11 are not supported because
44
+ Requires Python 3.12+. Python 3.10/3.11 are not supported because
46
45
  their tokenizer splits Indic combining marks, so several Hindi keywords would
47
46
  not translate. No runtime dependencies.
48
47
 
48
+ Node.js users can install the thin npm wrapper. It forwards every command to
49
+ the Python CLI, so the Python package must be installed as well.
50
+
51
+ ```bash
52
+ npm install -g polyglot-python
53
+ ```
54
+
49
55
  ## Quick start
50
56
 
51
57
  `examples/classify.tr`:
@@ -149,28 +155,33 @@ python -m venv .venv
149
155
  .venv/Scripts/python -m pytest -q --cov=polyglot_python --cov-fail-under=100
150
156
  ```
151
157
 
152
- The suite contains 119 tests with 100% statement coverage, including every
158
+ The suite contains 120 tests with 100% statement coverage, including every
153
159
  keyword in both directions for all 9 locales, end-to-end CLI runs of every
154
- example, version consistency with the changelog, and byte-level determinism
155
- checks. CI runs Ubuntu 3.12-3.14 plus Windows and macOS at 3.12, enforces the
156
- 100% coverage gate on Linux 3.12, translates every example twice on all three
157
- operating systems to compare bytes and line counts, and builds the wheel,
158
- installs it into a clean environment, and smoke-tests it. Dependabot keeps
159
- GitHub Actions and development dependencies current. A separate release
160
- workflow publishes tagged GitHub Releases to PyPI through Trusted Publishing.
160
+ example, version consistency with the changelog and the npm wrapper, and
161
+ byte-level determinism checks. CI runs Ubuntu 3.12-3.14 plus Windows and macOS
162
+ at 3.12, enforces the 100% coverage gate on Linux 3.12, translates every
163
+ example twice on all three operating systems to compare bytes and line counts,
164
+ builds the wheel, installs it into a clean environment, and smoke-tests it,
165
+ and runs the npm wrapper against the installed Python package. Dependabot keeps
166
+ GitHub Actions and development dependencies current. Separate release workflows
167
+ publish tagged GitHub Releases to PyPI and npm through Trusted Publishing.
161
168
 
162
169
  ## Releasing
163
170
 
164
- Publishing uses [PyPI Trusted Publishing](https://docs.pypi.org/trusted-publishers/)
165
- and stores no API token.
166
-
167
- 1. On PyPI, add a pending publisher for project `polyglot-python`: owner
168
- `Furox-Art`, repository `polyglot-python`, workflow `release.yml`,
169
- environment `pypi`.
170
- 2. Change `version` in `pyproject.toml` and
171
- `src/polyglot_python/__init__.py` together; the test suite rejects drift.
172
- 3. Publish a GitHub Release with tag `v<version>`. The release workflow verifies
173
- the tag, builds the sdist and wheel, and uploads them to PyPI.
171
+ Publishing uses Trusted Publishing for both registries and stores no API token.
172
+
173
+ 1. Configure the trusted publishers once:
174
+ - PyPI: publisher for project `polyglot-python`: owner `Furox-Art`,
175
+ repository `polyglot-python`, workflow `release.yml`, environment `pypi`.
176
+ - npm: trusted publisher for package `polyglot-python`: owner `Furox-Art`,
177
+ repository `polyglot-python`, workflow `release-npm.yml`, environment
178
+ `npm`.
179
+ 2. Change `version` in `pyproject.toml`,
180
+ `src/polyglot_python/__init__.py` and `npm/package.json` together; the test
181
+ suite rejects drift.
182
+ 3. Publish a GitHub Release with tag `v<version>`. `release.yml` verifies the
183
+ tag, builds the sdist and wheel, and uploads them to PyPI; `release-npm.yml`
184
+ verifies the same version and publishes `npm/` to npm with provenance.
174
185
 
175
186
  ## License
176
187
 
@@ -1,11 +1,11 @@
1
- polyglot_python/__init__.py,sha256=Ya4xPYS4dgX6dnB-vEdNpmPz26NaVnBVGZBRmyIF1f4,417
1
+ polyglot_python/__init__.py,sha256=0Wov7cNcoyuLG_UwTiD75mlpQnYw-gBTJ0gNX5SimGw,417
2
2
  polyglot_python/__main__.py,sha256=E6Gls0DNz8GQK2K-kOUIx8cYhgANW_CH54VKrfCfs14,52
3
3
  polyglot_python/cli.py,sha256=J3KzlL5rDe3JDDXJe0LEgfczEEHXV95w0yxlrOQ10Ow,6906
4
4
  polyglot_python/locales.json,sha256=jUMWGLZYG_BSEfKTevkJ1HS7LkZNDL2wjHfufLVyGkA,11356
5
5
  polyglot_python/translator.py,sha256=608uk99H70f83qJ0Lhbp2F7covS6BsIB70UfSqJNGao,9455
6
- polyglot_python-0.2.0.dist-info/licenses/LICENSE,sha256=GIA7odPA7v0zSqQfgBW_YoyTsNu058_DxugfvrwRoiM,1066
7
- polyglot_python-0.2.0.dist-info/METADATA,sha256=9et5Xt-QeGkKmOtDkP1JWevZH6LAMaQD-27pEFbwk9s,7020
8
- polyglot_python-0.2.0.dist-info/WHEEL,sha256=mOdXR9C3wMVov7cSY8PY-XCzo3SmmWCHvGQr5csJoao,91
9
- polyglot_python-0.2.0.dist-info/entry_points.txt,sha256=Ovsh-hpTr6d0kZX8woBOJR9F5JStN12irNBomgvA_q4,61
10
- polyglot_python-0.2.0.dist-info/top_level.txt,sha256=gEuO6xZPIIHdeSV92QIEWohn5QJCug2Jilw4x7ldF9E,16
11
- polyglot_python-0.2.0.dist-info/RECORD,,
6
+ polyglot_python-0.2.1.dist-info/licenses/LICENSE,sha256=GIA7odPA7v0zSqQfgBW_YoyTsNu058_DxugfvrwRoiM,1066
7
+ polyglot_python-0.2.1.dist-info/METADATA,sha256=jcYzIJp4XQ7PZjnk89RGzhzq5oKvZIDkY8kZorOVKEQ,7438
8
+ polyglot_python-0.2.1.dist-info/WHEEL,sha256=mOdXR9C3wMVov7cSY8PY-XCzo3SmmWCHvGQr5csJoao,91
9
+ polyglot_python-0.2.1.dist-info/entry_points.txt,sha256=Ovsh-hpTr6d0kZX8woBOJR9F5JStN12irNBomgvA_q4,61
10
+ polyglot_python-0.2.1.dist-info/top_level.txt,sha256=gEuO6xZPIIHdeSV92QIEWohn5QJCug2Jilw4x7ldF9E,16
11
+ polyglot_python-0.2.1.dist-info/RECORD,,