Skip to content

v4.0.0: Rewritten in Rust

Compare
Choose a tag to compare
@github-actions github-actions released this 04 Mar 02:35
· 3 commits to python since this release

aspeak has been rewritten in Rust!:tada: This is a major release and there are some breaking changes.
Please read the documentation carefully if you are upgrading from v3.x.

Fixes:

  • In some cases, the old aspeak can't play audio on some linux platforms.
  • aspeak now respects the encoding arg for both stdin and file.
  • Stricter validations for command line options.
  • Do not overwrite existing file unless --overwrite is specified.

New features:

  • Now you can use profiles to save your options.
    • For example, you can specify your native locale in your profile so that you don't need to specify it every time.
    • You can learn more about profiles in the documentation.
  • Theoretically, aspeak is now available on more platforms. But I will only publish binaries for Windows, macOS and Linux.
    • However, you can still compile aspeak from source on other platforms.
  • Now you can use custom endpoints and authentication tokens.
  • Now you can add custom request headers.
  • More user friendly output and error messages
  • Now I have set up GitHub Actions to build and publish automatically.
  • Now you can use aspeak as a library in your Rust projects.
    • You can learn more about the Rust API at docs.rs.

Changes:

  • RIIR
  • We no longer publish linux wheels to PyPI because of manylinux compatibility issues. Please compile from source if you want to use python bindings on linux.
  • The python bindings has been changed dramatically. Please read the documentation carefully if you are upgrading from v3.x.
  • The -F/--format option now takes kebab case values(e.g. audio-16khz-128kbitrate-mono-mp3) instead of pascal case values.