Releases: appurist/say2file
v3.1.60127
A modernization release. Updated dependencies per security reports:
Runtime Modernization
- Switched from Node.js/pkg to Bun for runtime and compilation
- Removed dotenv-defaults dependency (Bun loads .env natively)
- Removed pkg build tool (now uses bun build --compile)
Dependency Updates
- Updated async-mutex from 0.4.1 → 0.5.0
- Removed transitive dependencies from pkg (including vulnerable tar-fs)
Build & CI
- Added GitHub Actions workflow for automated builds and draft releases
- Build targets: Linux x64, Windows x64, macOS x64, macOS ARM64
Lockfile
- Regenerated pnpm-lock.yaml (968 → 5 lines after removing pkg cruft)
v3.0.250701
This version replaces the official IBM Watson SDK with a fetch-based implementation to remove the Axios dependency, eliminate vulnerabilities and reduce bundle size. This commit also includes a fix for repairing WAV header streams, replicating the functionality from the original SDK.
As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.
Release 2.2.202140
This is a minor patch update to upgrade some of the dependencies based on Dependabot PRs.
As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.
What's Changed
- Bump qs from 6.5.2 to 6.5.3 by @dependabot in #9
- Bump tough-cookie from 2.5.0 to 4.1.3 by @dependabot in #11
- Bump follow-redirects from 1.14.8 to 1.15.5 by @dependabot in #12
- Bump semver from 5.7.1 to 5.7.2 by @dependabot in #13
- Bump jsonwebtoken and ibm-watson by @dependabot in #14
- Bump axios and ibm-watson by @dependabot in #15
Full Changelog: v2.2.202130...v2.2.202140
Release 2.2.202130
This is a bugfix release to address Issue #10, and also updates all dependencies. Thanks to @mazz for the bug report!
Issue #10 resulted in a very high likelihood (every time?) that the "split" file (-s) option would use the same input text (line), the last one, for all speech generation. It would be an entirely new generation, but it would use the same input text rather than the earlier line or lines.
As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.
Release 2.1.111050
This is a minor version refresh to update all dependencies, and addresses some potential vulnerabilities in dependent libraries.
As always, pre-built binary executables are also provided below for Windows, Linux, and MacOS.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.
Release 2.1.110100
This release does some usability improvements, especially for ElevenLabs "free" tier users. In particular, it will auto-downgrade the MP3 rate from 192 to 128 in order to avoid a 403 error for free users. This utility will try to make it work without additional command line parameters if you are an ElevenLabs free tier user. Just add the LABS_KEY to your environment or .env file and it should work without additional parameters, e.g. say2file "Hello there.", although you probably want to specify a voice via --voice (-w) or list them with --list (-l).
This update also fixes the default voice for ElevenLabs, which previously was not one of the generated voices available to all users.
Pre-built binary executables are also provided below for Linux, MacOS and Windows.
For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.
MacOS users will probably also need to "bless" the executable using the Security & Privacy system preference applet.
Release 2.0.109280
Adds support for a second provider, ElevenLabs AT text-to-speech (see readme.md for more):
- adds
--provider(-p) with argumentselevenor11and this is the new default (eleven). - allows provider
ibmorwatsonfor the previous IBM Watson support. - ElevenLabs voices must be specified by their ID.
- adds a
--list(-l) to list available voices and their IDs (specify-pif you want IBM voices). - Fixed comments by
#prefix in input files to be recognized even if--split(-s) was not used. - Fixed provider initialization to be done once, even if
--split(-s) was used. - Updated the help (
--helpor-?) to hopefully cover all choices, including formats. - Operations with the ElevenLabs provider will show a summary of your current tier and remaining character limits. (See output example below.)
You can also specify any IBM Watson voice in the long form, e.g. es-LA_SofiaVoice, using the --voice or -w (who) command-line options.
Pre-built binary executables are also provided below for Linux, MacOS and Windows.
(For MacOS and Linux executables, don't forget to mark them as executable with chmod -x ... before use.)
>./say2file -f sample.txt -s
Using voice: EcOnXAJ3e2odu7bmr9M9 (mp3_44100_192)
--> audio-1.mp3
--> audio-2.mp3
--> audio-3.mp3
--> audio-4.mp3
--> audio-5.mp3
ElevenLabs "creator" tier: 104993 (98%) remain of 106213 characters.
ElevenLabs character limit resets: Sun Oct 29 2023 00:45:42 GMT-0300 (Atlantic Daylight Time)
>./say2file "Hello, this is a test."
Using voice: LQj2X4OpUuX9YFC5sCDw (mp3_44100_192)
--> audio.mp3
ElevenLabs "creator" tier: 104971 (98%) remain of 106213 characters.
ElevenLabs character limit resets: Sun Oct 29 2023 00:45:42 GMT-0300 (Atlantic Daylight Time)
Release 1.0.10220
Adds support for:
- comments in input files, and
- direct support for the 3 German V3 voices.
You can still specify any IBM Watson voice in the long form, e.g. es-LA_SofiaVoice, using the --voice or -w (who) command-line options.
Pre-built binary executables are also provided below for Linux, MacOS and Windows.
Release 1.0.218
Initial release. See the README.md file for more.
Binary executables for Linux, MacOS, and Windows provided below.