termux-tts 1.4.1 → 1.4.3

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.
@@ -1,82 +1,98 @@
1
- name: Release
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v*'
7
- workflow_dispatch:
8
-
9
- permissions:
10
- contents: read
11
-
12
- jobs:
13
- publish-pypi:
14
- name: Publish to PyPI
15
- runs-on: ubuntu-latest
16
- steps:
17
- - name: Checkout repository
18
- uses: actions/checkout@v4
19
-
20
- - name: Check if PyPI project exists
21
- id: check-py
22
- run: |
23
- if [ -f "pyproject.toml" ]; then
24
- echo "has_python=true" >> $GITHUB_OUTPUT
25
- else
26
- echo "has_python=false" >> $GITHUB_OUTPUT
27
- fi
28
-
29
- - name: Set up Python
30
- if: steps.check-py.outputs.has_python == 'true'
31
- uses: actions/setup-python@v5
32
- with:
33
- python-version: '3.11'
34
-
35
- - name: Install build dependencies
36
- if: steps.check-py.outputs.has_python == 'true'
37
- run: |
38
- python -m pip install --upgrade pip
39
- pip install build twine
40
-
41
- - name: Build distributions
42
- if: steps.check-py.outputs.has_python == 'true'
43
- run: python -m build
44
-
45
- - name: Verify distribution archives
46
- if: steps.check-py.outputs.has_python == 'true'
47
- run: twine check dist/*
48
-
49
- - name: Publish to PyPI
50
- if: steps.check-py.outputs.has_python == 'true'
51
- env:
52
- TWINE_USERNAME: __token__
53
- TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
54
- run: |
55
- twine upload --skip-existing dist/*
56
-
57
- publish-npm:
58
- name: Publish to NPM
59
- runs-on: ubuntu-latest
60
- steps:
61
- - name: Checkout repository
62
- uses: actions/checkout@v4
63
-
64
- - name: Set up Node.js
65
- uses: actions/setup-node@v4
66
- with:
67
- node-version: '20'
68
- registry-url: 'https://registry.npmjs.org'
69
-
70
- - name: Publish NPM package
71
- env:
72
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
73
- run: |
74
- if [ -f "package.json" ]; then
75
- echo "Publishing root package.json..."
76
- npm publish --access public
77
- elif [ -f "npm/package.json" ]; then
78
- echo "Publishing npm/package.json..."
79
- cd npm && npm publish --access public
80
- else
81
- echo "No package.json found. Skipping NPM publish."
82
- fi
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ - master
8
+ tags:
9
+ - 'v*'
10
+ workflow_dispatch:
11
+
12
+ permissions:
13
+ contents: read
14
+
15
+ jobs:
16
+ publish-pypi:
17
+ name: Publish to PyPI
18
+ runs-on: ubuntu-latest
19
+ steps:
20
+ - name: Checkout repository
21
+ uses: actions/checkout@v4
22
+
23
+ - name: Check if PyPI project exists
24
+ id: check-py
25
+ run: |
26
+ if [ -f "pyproject.toml" ] || [ -f "setup.py" ]; then
27
+ echo "has_python=true" >> $GITHUB_OUTPUT
28
+ else
29
+ echo "has_python=false" >> $GITHUB_OUTPUT
30
+ fi
31
+
32
+ - name: Set up Python
33
+ if: steps.check-py.outputs.has_python == 'true'
34
+ uses: actions/setup-python@v5
35
+ with:
36
+ python-version: '3.11'
37
+
38
+ - name: Install build dependencies
39
+ if: steps.check-py.outputs.has_python == 'true'
40
+ run: |
41
+ python -m pip install --upgrade pip
42
+ pip install build twine
43
+
44
+ - name: Build distributions
45
+ if: steps.check-py.outputs.has_python == 'true'
46
+ run: python -m build
47
+
48
+ - name: Verify distribution archives
49
+ if: steps.check-py.outputs.has_python == 'true'
50
+ run: twine check dist/*
51
+
52
+ - name: Publish to PyPI
53
+ if: steps.check-py.outputs.has_python == 'true'
54
+ env:
55
+ TWINE_USERNAME: __token__
56
+ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
57
+ run: |
58
+ twine upload --skip-existing dist/*
59
+
60
+ publish-npm:
61
+ name: Publish to NPM
62
+ runs-on: ubuntu-latest
63
+ steps:
64
+ - name: Checkout repository
65
+ uses: actions/checkout@v4
66
+
67
+ - name: Set up Node.js
68
+ uses: actions/setup-node@v4
69
+ with:
70
+ node-version: '20'
71
+ registry-url: 'https://registry.npmjs.org'
72
+
73
+ - name: Publish NPM package
74
+ env:
75
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
76
+ run: |
77
+ if [ -f "package.json" ]; then
78
+ PKG_NAME=$(node -p "require('./package.json').name")
79
+ PKG_VER=$(node -p "require('./package.json').version")
80
+ if [ "$(npm view ${PKG_NAME}@${PKG_VER} version 2>/dev/null)" = "${PKG_VER}" ]; then
81
+ echo "Version ${PKG_VER} of ${PKG_NAME} is already published on NPM. Skipping."
82
+ else
83
+ echo "Publishing ${PKG_NAME}@${PKG_VER} to NPM..."
84
+ npm publish --access public
85
+ fi
86
+ elif [ -f "npm/package.json" ]; then
87
+ cd npm
88
+ PKG_NAME=$(node -p "require('./package.json').name")
89
+ PKG_VER=$(node -p "require('./package.json').version")
90
+ if [ "$(npm view ${PKG_NAME}@${PKG_VER} version 2>/dev/null)" = "${PKG_VER}" ]; then
91
+ echo "Version ${PKG_VER} of ${PKG_NAME} is already published on NPM. Skipping."
92
+ else
93
+ echo "Publishing ${PKG_NAME}@${PKG_VER} to NPM..."
94
+ npm publish --access public
95
+ fi
96
+ else
97
+ echo "No package.json found. Skipping NPM publish."
98
+ fi
package/CHANGELOG.md CHANGED
@@ -2,14 +2,35 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
- ## [1.4.1] - 2026-09-07
6
-
7
- ### Fixed
8
- - Fixed npm package.json bin path specification (removed './' prefix).
9
- - Integrated GitHub Actions automated CI/CD release workflow.
10
-
11
- ---
12
-
5
+ ## [1.4.3] - 2026-09-07
6
+
7
+ ### Added
8
+ - **Multi-Tier Dynamic Candidate Resolution**: Replaced single hardcoded `v1.0.0-vulkan` URL in `installer.py` with 4-tier candidate resolution (`TERMUX_TTS_RELEASE_TAG`, `v{__version__}`, `releases/latest/download`, `uno-km/ameva-runtime` SSOT fallback, and companion fallback).
9
+ - **Dual-Path Installation**: Installs and links precompiled Vulkan binary `sherpa-ncnn-offline-tts` to both `~/.local/bin` and `$PREFIX/bin` for instant global PATH resolution.
10
+ - **Dynamic SSOT User-Agent**: Injects dynamic package version into download requests.
11
+
12
+ ---
13
+
14
+ ## [1.4.2] - 2026-09-07
15
+
16
+ ### Added
17
+ - Complete 12-tier enterprise English documentation overhaul for PyPI and GitHub/NPM.
18
+ - Detailed empirical mobile hardware benchmarks (Snapdragon 8 Elite / Adreno 830, Exynos 1380 / Mali-G68 MP5).
19
+ - Full GPU interconnect architecture documentation with SPIR-V compute shader details.
20
+ - Comprehensive CPU vs. GPU thermal dissipation and latency trade-off analysis.
21
+ - 3-stage 24/7 unattended background execution guide (Termux wake-lock, battery optimization, ADB phantom process killer).
22
+ - Expanded technical SEO metadata keywords (34 keywords).
23
+
24
+ ---
25
+
26
+ ## [1.4.1] - 2026-09-07
27
+
28
+ ### Fixed
29
+ - Fixed npm package.json bin path specification (removed './' prefix).
30
+ - Integrated GitHub Actions automated CI/CD release workflow.
31
+
32
+ ---
33
+
13
34
  ## [1.4.0] - 2026-09-07
14
35
 
15
36
  ### Added