From a796ebd7edc8d90e2f14a25fd8ec6ac84adbf54d Mon Sep 17 00:00:00 2001 From: Daniel McKnight <34697904+NeonDaniel@users.noreply.github.com> Date: Thu, 4 May 2023 20:13:49 -0700 Subject: [PATCH 01/38] Release Automation (#9) Add GitHub release automation --- .github/workflows/notify_matrix.yml | 23 ++++++++++ .github/workflows/propose_release.yml | 32 ++++++++++++++ .github/workflows/publish_alpha.yml | 62 +++++++++++++++++++++++++++ .github/workflows/publish_release.yml | 43 +++++++++++++++++++ ovos_tts_server/version.py | 6 +++ setup.py | 32 ++++++++++---- version.py | 1 - 7 files changed, 190 insertions(+), 9 deletions(-) create mode 100644 .github/workflows/notify_matrix.yml create mode 100644 .github/workflows/propose_release.yml create mode 100644 .github/workflows/publish_alpha.yml create mode 100644 .github/workflows/publish_release.yml create mode 100644 ovos_tts_server/version.py delete mode 100644 version.py diff --git a/.github/workflows/notify_matrix.yml b/.github/workflows/notify_matrix.yml new file mode 100644 index 0000000..32df6a4 --- /dev/null +++ b/.github/workflows/notify_matrix.yml @@ -0,0 +1,23 @@ +name: Close Pull Request + +# only trigger on pull request closed events +on: + pull_request: + types: [ closed ] + +jobs: + merge_job: + # this job will only run if the PR has been merged + if: github.event.pull_request.merged == true + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Send message to Matrix bots channel + id: matrix-chat-message + uses: fadenb/matrix-chat-message@v0.0.6 + with: + homeserver: 'matrix.org' + token: ${{ secrets.MATRIX_TOKEN }} + channel: '!WjxEKjjINpyBRPFgxl:krbel.duckdns.org' + message: | + new ovos-tts-server PR merged! https://github.com/OpenVoiceOS/ovos-bus-client/pull/${{ github.event.number }} diff --git a/.github/workflows/propose_release.yml b/.github/workflows/propose_release.yml new file mode 100644 index 0000000..a002e5d --- /dev/null +++ b/.github/workflows/propose_release.yml @@ -0,0 +1,32 @@ +name: Propose Stable Release +on: + workflow_dispatch: + inputs: + release_type: + type: choice + description: Release Type + options: + - build + - minor + - major +jobs: + update_version: + uses: neongeckocom/.github/.github/workflows/propose_semver_release.yml@master + with: + release_type: ${{ inputs.release_type }} + version_file: ovos_bus_client/version.py + alpha_var: VERSION_ALPHA + build_var: VERSION_BUILD + minor_var: VERSION_MINOR + major_var: VERSION_MAJOR + update_changelog: True + branch: dev + + pull_changes: + needs: update_version + uses: neongeckocom/.github/.github/workflows/pull_master.yml@master + with: + pr_assignee: ${{ github.actor }} + pr_draft: false + pr_title: ${{ needs.update_version.outputs.version }} + pr_body: ${{ needs.update_version.outputs.changelog }} diff --git a/.github/workflows/publish_alpha.yml b/.github/workflows/publish_alpha.yml new file mode 100644 index 0000000..ac62855 --- /dev/null +++ b/.github/workflows/publish_alpha.yml @@ -0,0 +1,62 @@ +# This workflow will generate a distribution and upload it to PyPI + +name: Publish Alpha Build ...aX +on: + push: + branches: + - dev + paths-ignore: + - 'ovos_tts_server/version.py' + - 'test/**' + - 'examples/**' + - '.github/**' + - '.gitignore' + - 'LICENSE' + - 'CHANGELOG.md' + - 'MANIFEST.in' + - 'readme.md' + - 'scripts/**' + workflow_dispatch: + +jobs: + update_version: + uses: neongeckocom/.github/.github/workflows/propose_semver_release.yml@master + with: + release_type: "alpha" + version_file: ovos_tts_server/version.py + alpha_var: VERSION_ALPHA + build_var: VERSION_BUILD + minor_var: VERSION_MINOR + major_var: VERSION_MAJOR + update_changelog: True + branch: dev + build_and_publish: + runs-on: ubuntu-latest + needs: update_version + steps: + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token + with: + tag_name: V${{ needs.update_version.outputs.version }} + release_name: Release ${{ needs.update_version.outputs.version }} + body: | + Changes in this Release + ${{ needs.update_version.outputs.changelog }} + draft: false + prerelease: true + commitish: dev + - name: Checkout Repository + uses: actions/checkout@v2 + with: + ref: dev + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. + - name: Build Distribution Packages + run: | + python setup.py sdist bdist_wheel + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + password: ${{secrets.PYPI_TOKEN}} diff --git a/.github/workflows/publish_release.yml b/.github/workflows/publish_release.yml new file mode 100644 index 0000000..edb91cd --- /dev/null +++ b/.github/workflows/publish_release.yml @@ -0,0 +1,43 @@ +name: Publish Release +on: + push: + branches: + - master + +jobs: + github_release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + ref: master + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. + - name: version + run: echo "::set-output name=version::$(python setup.py --version)" + id: version + - name: "Generate release changelog" + uses: heinrichreimer/github-changelog-generator-action@v2.3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + id: changelog + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token + with: + tag_name: V${{ steps.version.outputs.version }} + release_name: Release ${{ steps.version.outputs.version }} + body: | + Changes in this Release + ${{ steps.changelog.outputs.changelog }} + draft: false + prerelease: false + commitish: master + - name: Build Distribution Packages + run: | + python setup.py sdist bdist_wheel + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + password: ${{secrets.PYPI_TOKEN}} \ No newline at end of file diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py new file mode 100644 index 0000000..6e7e2ae --- /dev/null +++ b/ovos_tts_server/version.py @@ -0,0 +1,6 @@ +# START_VERSION_BLOCK +VERSION_MAJOR = 0 +VERSION_MINOR = 0 +VERSION_BUILD = 2 +VERSION_ALPHA = 2 +# END_VERSION_BLOCK diff --git a/setup.py b/setup.py index ffbdedb..a74d794 100755 --- a/setup.py +++ b/setup.py @@ -19,17 +19,33 @@ def required(requirements_file): with open(path.join(BASE_PATH, "readme.md"), "r") as f: long_description = f.read() -with open(path.join(BASE_PATH, "version.py"), "r", encoding="utf-8") as v: - for line in v.readlines(): - if line.startswith("__version__"): - if '"' in line: - version = line.split('"')[1] - else: - version = line.split("'")[1] +def get_version(): + """ Find the version of ovos-core""" + version = None + version_file = path.join(BASE_PATH, 'ovos_tts_server', 'version.py') + major, minor, build, alpha = (None, None, None, None) + with open(version_file) as f: + for line in f: + if 'VERSION_MAJOR' in line: + major = line.split('=')[1].strip() + elif 'VERSION_MINOR' in line: + minor = line.split('=')[1].strip() + elif 'VERSION_BUILD' in line: + build = line.split('=')[1].strip() + elif 'VERSION_ALPHA' in line: + alpha = line.split('=')[1].strip() + + if ((major and minor and build and alpha) or + '# END_VERSION_BLOCK' in line): + break + version = f"{major}.{minor}.{build}" + if int(alpha): + version += f"a{alpha}" + return version setup( name='ovos-tts-server', - version=version, + version=get_version(), description='simple FastAPI server to host TTS plugins as a service', long_description=long_description, long_description_content_type="text/markdown", diff --git a/version.py b/version.py deleted file mode 100644 index 0e4613a..0000000 --- a/version.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = "0.0.2a1" \ No newline at end of file From 9f6d423ea5f19e2241533650dddb8e8c4934a66d Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 5 May 2023 03:14:11 +0000 Subject: [PATCH 02/38] Increment Version to 0.0.2a3 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 6e7e2ae..b94a996 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 2 -VERSION_ALPHA = 2 +VERSION_ALPHA = 3 # END_VERSION_BLOCK From eeb6edd977ceeb381df41ac2f76fc25da323c83b Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 5 May 2023 03:14:38 +0000 Subject: [PATCH 03/38] Update Changelog --- CHANGELOG.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..19f3460 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,24 @@ +# Changelog + +## [0.0.2a3](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.2a3) (2023-05-05) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/0.0.2...0.0.2a3) + +**Implemented enhancements:** + +- Release Automation [\#9](https://github.com/OpenVoiceOS/ovos-tts-server/pull/9) ([NeonDaniel](https://github.com/NeonDaniel)) +- Adds gradio web UI with other updates [\#7](https://github.com/OpenVoiceOS/ovos-tts-server/pull/7) ([NeonDaniel](https://github.com/NeonDaniel)) + +**Fixed bugs:** + +- Remove leftover hard-coded plugin references [\#8](https://github.com/OpenVoiceOS/ovos-tts-server/pull/8) ([NeonDaniel](https://github.com/NeonDaniel)) + +**Merged pull requests:** + +- Update license test automation [\#6](https://github.com/OpenVoiceOS/ovos-tts-server/pull/6) ([NeonDaniel](https://github.com/NeonDaniel)) +- Fix typo causing build tests to not run [\#4](https://github.com/OpenVoiceOS/ovos-tts-server/pull/4) ([NeonDaniel](https://github.com/NeonDaniel)) +- feat/gender [\#2](https://github.com/OpenVoiceOS/ovos-tts-server/pull/2) ([NeonJarbas](https://github.com/NeonJarbas)) + + + +\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)* From 5385c593f4b5df393a1b46312e0d807e63be687f Mon Sep 17 00:00:00 2001 From: Daniel McKnight <34697904+NeonDaniel@users.noreply.github.com> Date: Fri, 5 May 2023 09:09:59 -0700 Subject: [PATCH 04/38] Add examples from Coqui plugin with default language handling (#10) --- ovos_tts_server/examples/rainbow.json | 27 +++++++++++++++++++++++++++ ovos_tts_server/gradio_app.py | 25 +++++++++++++++++++++---- 2 files changed, 48 insertions(+), 4 deletions(-) create mode 100644 ovos_tts_server/examples/rainbow.json diff --git a/ovos_tts_server/examples/rainbow.json b/ovos_tts_server/examples/rainbow.json new file mode 100644 index 0000000..8eba7e4 --- /dev/null +++ b/ovos_tts_server/examples/rainbow.json @@ -0,0 +1,27 @@ +{ + "en": "A rainbow is a meteorological phenomenon that is caused by reflection, refraction and dispersion of light.", + "es": "Un arcoíris o arco iris es un fenómeno óptico y meteorológico que consiste en la aparición en el cielo de un arco de luz multicolor.", + "fr": "Un arc-en-ciel est un photométéore, un phénomène optique se produisant dans le ciel, visible dans la direction opposée au Soleil.", + "de": "Der Regenbogen ist ein atmosphärisch-optisches Phänomen, das als kreisbogenförmiges farbiges Lichtband in einer von der Sonne.", + "it": "In fisica dell'atmosfera e meteorologia, l'arcobaleno è un fenomeno ottico atmosferico che produce uno spettro quasi continuo di luce nel cielo quando la luce del Sole attraversa le gocce d'acqua rimaste in sospensione dopo un temporale.", + "pl": "Tęcza, zjawisko optyczne i meteorologiczne, występujące w postaci charakterystycznego wielobarwnego łuku powstającego w wyniku rozszczepienia światła widzialnego.", + "uk": "Веселка, також райдуга оптичне явище в атмосфері, що являє собою одну, дві чи декілька різнокольорових дуг, що спостерігаються на тлі хмари, якщо вона розташована проти Сонця.", + "nl": "Een regenboog is een gekleurde cirkelboog die aan de hemel waargenomen kan worden als de, laagstaande.", + "ro": "Curcubeul este un fenomen optic și meteorologic atmosferic care se manifestă prin apariția pe cer a unui spectru de forma unui arc colorat atunci când lumina soarelui se refractă în picăturile de apă din atmosferă.", + "hu": "A szivárvány olyan optikai jelenség, melyet eső- vagy páracseppek okoznak, mikor a fény prizmaszerűen megtörik rajtuk és színeire bomlik.", + "el": "Το ουράνιο τόξο εμφανίζεται όταν οι ακτίνες του ήλιου χτυπούν σταγόνες βροχής στην ατμόσφαιρα της Γης και είναι ένα παράδειγμα διάθλασης μετά την ανάκλαση.", + "cs": "Duha je fotometeor, projevující se jako skupina soustředných barevných oblouků, které vznikají lomem a vnitřním odrazem slunečního nebo měsíčního světla na vodních kapkách v atmosféře.", + "sv": "En regnbåge är ett optiskt, meteorologiskt fenomen som uppträder som ett fullständigt ljusspektrum i form av en båge på himlen då solen lyser på nedfallande regn. Klarast lyser regnbågen då halva himlen fortfarande är täckt med mörka moln som avger regn och betraktaren befinner sig under klar himmel.", + "pt": "Um arco-íris é um fenômeno óptico e meteorológico que separa a luz do sol em seu espectro contínuo quando o sol brilha sobre gotículas de água suspensas no ar.", + "bg": "Дъга е оптично и метеорологично явление, свързано с появата в небето на почти непрекъснат спектър на светлината.", + "hr": "Duga je česta optička pojava u Zemljinoj atmosferi u obliku jednog ili više obojenih kružnih lukova, koja nastaje jednostrukim ili višestrukim lomom i odbijanjem zraka svjetlosti u kapljicama kiše.", + "da": "En regnbue er et optisk fænomen; en lyseffekt, som skabes på himlen, når lys fra Solen rammer små vanddråber i luften, f.eks. faldende regn.", + "sk": "Dúha je optický úkaz vznikajúci v atmosfére Zeme. Vznik dúhy je spôsobený disperziou slnečného svetla prechádzajúceho kvapkou.", + "fi": "Sateenkaari on spektrin väreissä esiintyvä ilmakehän optinen ilmiö. Se syntyy, kun valo taittuu pisaran etupinnasta.", + "lt": "Vaivorykštė - optinis ir meteorologinis reiškinys, kuomet Saulei apšvietus atmosferoje esančius vandens lašelius, danguje atsiranda ištisinė spalvų spektro juosta.", + "sl": "Mavrica je svetlobni pojav v ozračju, ki ga vidimo v obliki loka spektralnih barv. Nastane zaradi loma, disperzije in odboja sončnih žarkov v vodnih kapljicah v zraku. Mavrica, ki nastane zaradi sončnih žarkov, se vedno pojavi na nasprotni strani od Sonca, tako da ima opazovalec Sonce vedno za hrbtom.", + "lv": "Varavīksne ir optiska parādība atmosfērā, kuru rada Saules staru laušana un atstarošana krītošos lietus pilienos. Tā parādās iepretim Saulei uz mākoņu fona, kad līst. Varavīksnes loks pāri debesjumam ir viens no krāšņākajiem dabas skatiem. Pārējās krāsas izvietojušās atbilstoši tā loka gammai.", + "et": "Vikerkaare põhjustab päikesekiirte eri lainepikkustel erinev murdumine ja peegeldumine ligikaudu kerakujulistelt vihmapiiskadelt vihmaseinal või vihmapilves, kui päikesevalgus langeb piiskadele vaatleja selja tagant.", + "ga": "Do réir lucht na heolaíochta, is é solas na gréine ag taitneamh ar bhraonta báistí sa spéir faoi ndearna an tuar ceatha. Dar linne ná tagann ón ngréin ach aon tsolais amháin, ach ní mar sin atá.", + "mt": "Qawsalla hija fenomenu meteoroloġiku li huwa kkawżat minn riflessjoni, rifrazzjoni u tixrid ta 'dawl fi qtar ta' l-ilma li jirriżulta fi spettru ta 'dawl li jidher fis-sema." +} \ No newline at end of file diff --git a/ovos_tts_server/gradio_app.py b/ovos_tts_server/gradio_app.py index f3d4866..e090857 100644 --- a/ovos_tts_server/gradio_app.py +++ b/ovos_tts_server/gradio_app.py @@ -1,6 +1,8 @@ +import json import tempfile import gradio as gr +from os.path import join, dirname from ovos_utils import LOG TTS = None @@ -19,8 +21,24 @@ def bind_gradio_service(app, tts_engine, title, description, info, badge, global TTS TTS = tts_engine - LOG.info(tts_engine.available_languages) languages = list(tts_engine.available_languages or [default_lang]) + languages.sort() + LOG.debug(languages) + + if default_lang not in languages: + LOG.warning(f"{default_lang} not in languages, trying ISO 639-1 code") + default_lang = default_lang.split('-')[0] + if default_lang not in languages: + LOG.warning(f"{default_lang} not in languages, choosing first lang") + default_lang = languages[0] + + try: + example_file = "rainbow.json" + with open(join(dirname(__file__), "examples", example_file), 'r') as f: + examples = json.load(f) + except Exception as e: + LOG.error(e) + examples = dict() with gr.Blocks() as blocks: gr.Markdown("

" @@ -31,7 +49,7 @@ def bind_gradio_service(app, tts_engine, title, description, info, badge, with gr.Column(): # variant="panel" textbox = gr.Textbox( label="Input", - value="", + value=examples.get(default_lang), max_lines=3, ) radio = gr.Radio( @@ -53,7 +71,6 @@ def bind_gradio_service(app, tts_engine, title, description, info, badge, [textbox, radio], [audio], ) - # radio.change(lambda lang: CoquiTTS.langs[lang]["sentence"], - # radio, textbox) + radio.change(lambda lang: examples.get(lang), radio, textbox) LOG.info(f"Mounting app to /gradio") gr.mount_gradio_app(app, blocks, path="/gradio") From e6f33de86982f949be4476038af9ed7b3a959460 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 5 May 2023 16:10:18 +0000 Subject: [PATCH 05/38] Increment Version to 0.0.2a4 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index b94a996..263731d 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 2 -VERSION_ALPHA = 3 +VERSION_ALPHA = 4 # END_VERSION_BLOCK From 2ece84d7df35389bb984368cfd9cf902ab8c6e9d Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 5 May 2023 16:10:41 +0000 Subject: [PATCH 06/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 19f3460..8e077f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [0.0.2a3](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.2a3) (2023-05-05) +## [0.0.2a4](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.2a4) (2023-05-05) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/0.0.2...0.0.2a3) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.2a3...0.0.2a4) + +**Implemented enhancements:** + +- Add examples from Coqui plugin with default language handling [\#10](https://github.com/OpenVoiceOS/ovos-tts-server/pull/10) ([NeonDaniel](https://github.com/NeonDaniel)) + +## [V0.0.2a3](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.2a3) (2023-05-05) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/0.0.2...V0.0.2a3) **Implemented enhancements:** From b3579a05409faf9c369e2866862c0c5ac6c87ff3 Mon Sep 17 00:00:00 2001 From: Daniel McKnight <34697904+NeonDaniel@users.noreply.github.com> Date: Fri, 5 May 2023 10:04:32 -0700 Subject: [PATCH 07/38] Fix version and package data (#11) * Manually update version to newer than latest Add examples to package_data * Fix typo in setup.py changes --- ovos_tts_server/version.py | 2 +- setup.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 263731d..f458d3e 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -1,6 +1,6 @@ # START_VERSION_BLOCK VERSION_MAJOR = 0 VERSION_MINOR = 0 -VERSION_BUILD = 2 +VERSION_BUILD = 3 VERSION_ALPHA = 4 # END_VERSION_BLOCK diff --git a/setup.py b/setup.py index a74d794..3a033ed 100755 --- a/setup.py +++ b/setup.py @@ -55,6 +55,7 @@ def get_version(): license='Apache-2.0', packages=find_packages(), install_requires=required("requirements/requirements.txt"), + package_data={"ovos_tts_server": ["examples/*"]}, zip_safe=True, classifiers=[ 'Development Status :: 3 - Alpha', From a7d5067d1390b73481944ff84505233b9ffa063f Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 5 May 2023 17:04:52 +0000 Subject: [PATCH 08/38] Increment Version to 0.0.3a5 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index f458d3e..0d01bb4 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 4 +VERSION_ALPHA = 5 # END_VERSION_BLOCK From 86369a266bac906bc4c82de267e0ec6c089c1772 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 5 May 2023 17:05:20 +0000 Subject: [PATCH 09/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8e077f8..d94654f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [0.0.2a4](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.2a4) (2023-05-05) +## [0.0.3a5](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a5) (2023-05-05) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.2a3...0.0.2a4) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.2a4...0.0.3a5) + +**Fixed bugs:** + +- Fix version and package data [\#11](https://github.com/OpenVoiceOS/ovos-tts-server/pull/11) ([NeonDaniel](https://github.com/NeonDaniel)) + +## [V0.0.2a4](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.2a4) (2023-05-05) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.2a3...V0.0.2a4) **Implemented enhancements:** From 0f7d68492070e74466d28a4cb2694ed6123942b2 Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Tue, 30 May 2023 19:07:14 +0100 Subject: [PATCH 10/38] add status endpoint + update readme (#13) --- ovos_tts_server/__init__.py | 15 ++++++++------- readme.md | 22 ++++++++++++++++++---- 2 files changed, 26 insertions(+), 11 deletions(-) diff --git a/ovos_tts_server/__init__.py b/ovos_tts_server/__init__.py index 3aa94c1..4192804 100644 --- a/ovos_tts_server/__init__.py +++ b/ovos_tts_server/__init__.py @@ -9,9 +9,6 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - -import uvicorn - from fastapi import FastAPI from fastapi.responses import FileResponse from ovos_plugin_manager.tts import load_tts_plugin @@ -21,9 +18,13 @@ TTS = None -def create_app(): +def create_app(tts_plugin): app = FastAPI() + @app.get("/status") + def stats(request: Request): + return {"status": "ok", "plugin": tts_plugin} + @app.get("/synthesize/{utterance}") def synth(utterance: str, request: Request): LOG.debug(f"{utterance}|{request.query_params}") @@ -34,16 +35,16 @@ def synth(utterance: str, request: Request): return app -def start_tts_server(engine, cache=False): +def start_tts_server(tts_plugin, cache=False): global TTS # load ovos TTS plugin - engine = load_tts_plugin(engine) + engine = load_tts_plugin(tts_plugin) TTS = engine(config={"persist_cache": cache}) # this will cache every synth even across reboots TTS.log_timestamps = True # enable logging - app = create_app() + app = create_app(tts_plugin) return app, TTS diff --git a/readme.md b/readme.md index ba8298d..a3d4e45 100644 --- a/readme.md +++ b/readme.md @@ -2,12 +2,29 @@ Turn any OVOS TTS plugin into a micro service! -Use with OpenVoiceOS [companion plugin](https://github.com/OpenVoiceOS/ovos-tts-server-plugin) ## Install `pip install ovos-tts-server` +## Companion plugin + +Use in your voice assistant with OpenVoiceOS [companion plugin](https://github.com/OpenVoiceOS/ovos-tts-server-plugin) + +## Configuration + +the plugin is configured just like if it was running in the assistant, under mycroft.conf + +eg +``` + "tts": { + "module": "ovos-tts-plugin-piper", + "ovos-tts-plugin-piper": { + "model": "alan-low" + } + } +``` + ## Usage ```bash @@ -26,9 +43,6 @@ eg, to use the [GladosTTS plugin](https://github.com/NeonGeckoCom/neon-tts-plugi then do a get request `http://192.168.1.112:9666/synthesize/hello` -## Companion plugin - -coming soon - companion plugin to point to a ovos-tts-server instance ## Docker From 41728fe12001917c00b153b4d5f488906f85ccf6 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Tue, 30 May 2023 18:07:27 +0000 Subject: [PATCH 11/38] Increment Version to 0.0.3a6 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 0d01bb4..503780c 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 5 +VERSION_ALPHA = 6 # END_VERSION_BLOCK From 84d2efadf20211b070dc438cb8383f4f74661172 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Tue, 30 May 2023 18:07:49 +0000 Subject: [PATCH 12/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d94654f..abf7a16 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [0.0.3a5](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a5) (2023-05-05) +## [0.0.3a6](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a6) (2023-05-30) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.2a4...0.0.3a5) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a5...0.0.3a6) + +**Implemented enhancements:** + +- add status endpoint + update readme [\#13](https://github.com/OpenVoiceOS/ovos-tts-server/pull/13) ([JarbasAl](https://github.com/JarbasAl)) + +## [V0.0.3a5](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a5) (2023-05-05) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.2a4...V0.0.3a5) **Fixed bugs:** From 290cdbee3f72d3e72cf4b2f90f9eed47267368fa Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Thu, 22 Jun 2023 04:32:08 +0100 Subject: [PATCH 13/38] fix/config reading (#16) --- ovos_tts_server/__init__.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ovos_tts_server/__init__.py b/ovos_tts_server/__init__.py index 4192804..10ea6e8 100644 --- a/ovos_tts_server/__init__.py +++ b/ovos_tts_server/__init__.py @@ -13,6 +13,7 @@ from fastapi.responses import FileResponse from ovos_plugin_manager.tts import load_tts_plugin from ovos_utils.log import LOG +from ovos_config import Configuration from starlette.requests import Request TTS = None @@ -41,7 +42,9 @@ def start_tts_server(tts_plugin, cache=False): # load ovos TTS plugin engine = load_tts_plugin(tts_plugin) - TTS = engine(config={"persist_cache": cache}) # this will cache every synth even across reboots + config = Configuration().get("tts", {}).get(tts_plugin, {}) + config["persist_cache"] = cache # this will cache every synth even across reboots + TTS = engine(config=config) TTS.log_timestamps = True # enable logging app = create_app(tts_plugin) From 4f962cfadbeacf08751f91857bf8a981a633d318 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Thu, 22 Jun 2023 03:32:28 +0000 Subject: [PATCH 14/38] Increment Version to 0.0.3a7 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 503780c..c756809 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 6 +VERSION_ALPHA = 7 # END_VERSION_BLOCK From 467ce529ee14cf34c2ef3113060ee14607839ce3 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Thu, 22 Jun 2023 03:32:52 +0000 Subject: [PATCH 15/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index abf7a16..e9c7212 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [0.0.3a6](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a6) (2023-05-30) +## [0.0.3a7](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a7) (2023-06-22) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a5...0.0.3a6) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a6...0.0.3a7) + +**Fixed bugs:** + +- fix/config reading [\#16](https://github.com/OpenVoiceOS/ovos-tts-server/pull/16) ([JarbasAl](https://github.com/JarbasAl)) + +## [V0.0.3a6](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a6) (2023-05-30) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a5...V0.0.3a6) **Implemented enhancements:** From ded0d414e519cb19c3156903106f4ab03d89c005 Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Thu, 22 Jun 2023 17:01:47 +0100 Subject: [PATCH 16/38] add gradio to status report (#14) --- ovos_tts_server/__init__.py | 10 ++++++---- ovos_tts_server/__main__.py | 3 ++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/ovos_tts_server/__init__.py b/ovos_tts_server/__init__.py index 10ea6e8..53e41da 100644 --- a/ovos_tts_server/__init__.py +++ b/ovos_tts_server/__init__.py @@ -19,12 +19,14 @@ TTS = None -def create_app(tts_plugin): +def create_app(tts_plugin, has_gradio=False): app = FastAPI() @app.get("/status") def stats(request: Request): - return {"status": "ok", "plugin": tts_plugin} + return {"status": "ok", + "plugin": tts_plugin, + "gradio": has_gradio} @app.get("/synthesize/{utterance}") def synth(utterance: str, request: Request): @@ -36,7 +38,7 @@ def synth(utterance: str, request: Request): return app -def start_tts_server(tts_plugin, cache=False): +def start_tts_server(tts_plugin, cache=False, has_gradio=False): global TTS # load ovos TTS plugin @@ -47,7 +49,7 @@ def start_tts_server(tts_plugin, cache=False): TTS = engine(config=config) TTS.log_timestamps = True # enable logging - app = create_app(tts_plugin) + app = create_app(tts_plugin, has_gradio) return app, TTS diff --git a/ovos_tts_server/__main__.py b/ovos_tts_server/__main__.py index 835a340..5d37197 100644 --- a/ovos_tts_server/__main__.py +++ b/ovos_tts_server/__main__.py @@ -41,7 +41,8 @@ def main(): parser.add_argument("--badge", help="URL of visitor badge", default=None) args = parser.parse_args() - server, engine = start_tts_server(args.engine, cache=bool(args.cache)) + server, engine = start_tts_server(args.engine, cache=bool(args.cache), + has_gradio=bool(args.gradio)) LOG.info("Server Started") if args.gradio: bind_gradio_service(server, engine, args.title, args.description, From 70cddb5cced23a076ff5d67365cc93e7497ac7e7 Mon Sep 17 00:00:00 2001 From: NeonDaniel Date: Thu, 22 Jun 2023 16:02:05 +0000 Subject: [PATCH 17/38] Increment Version to 0.0.3a8 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index c756809..d2c3011 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 7 +VERSION_ALPHA = 8 # END_VERSION_BLOCK From d11ae0806c23a23a00ee15bd546d6fa9d9bb3a69 Mon Sep 17 00:00:00 2001 From: NeonDaniel Date: Thu, 22 Jun 2023 16:02:32 +0000 Subject: [PATCH 18/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e9c7212..77502b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [0.0.3a7](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a7) (2023-06-22) +## [0.0.3a8](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a8) (2023-06-22) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a6...0.0.3a7) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a7...0.0.3a8) + +**Implemented enhancements:** + +- add gradio to status report [\#14](https://github.com/OpenVoiceOS/ovos-tts-server/pull/14) ([JarbasAl](https://github.com/JarbasAl)) + +## [V0.0.3a7](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a7) (2023-06-22) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a6...V0.0.3a7) **Fixed bugs:** From 7526420a142eb93fb6258ddfcd02df4e3e302692 Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Sat, 14 Oct 2023 22:19:26 +0100 Subject: [PATCH 19/38] LOG.set_level("ERROR") (#17) --- ovos_tts_server/__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ovos_tts_server/__init__.py b/ovos_tts_server/__init__.py index 53e41da..d54abcb 100644 --- a/ovos_tts_server/__init__.py +++ b/ovos_tts_server/__init__.py @@ -16,6 +16,9 @@ from ovos_config import Configuration from starlette.requests import Request + +LOG.set_level("ERROR") # avoid server side logs + TTS = None @@ -30,7 +33,6 @@ def stats(request: Request): @app.get("/synthesize/{utterance}") def synth(utterance: str, request: Request): - LOG.debug(f"{utterance}|{request.query_params}") utterance = TTS.validate_ssml(utterance) audio, phonemes = TTS.synth(utterance, **request.query_params) return FileResponse(audio.path) From ac987b30e384749c27da439ccfb6134c2d06a1ba Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Sat, 14 Oct 2023 21:19:44 +0000 Subject: [PATCH 20/38] Increment Version to 0.0.3a9 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index d2c3011..3b7847f 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 8 +VERSION_ALPHA = 9 # END_VERSION_BLOCK From 6ee2f05e562e5c0e84e0ae5de31ea040e888b4e7 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Sat, 14 Oct 2023 21:20:04 +0000 Subject: [PATCH 21/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 77502b4..5eeb118 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [0.0.3a8](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a8) (2023-06-22) +## [0.0.3a9](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a9) (2023-10-14) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a7...0.0.3a8) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a8...0.0.3a9) + +**Merged pull requests:** + +- LOG.set\_level\("ERROR"\) [\#17](https://github.com/OpenVoiceOS/ovos-tts-server/pull/17) ([JarbasAl](https://github.com/JarbasAl)) + +## [V0.0.3a8](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a8) (2023-06-22) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a7...V0.0.3a8) **Implemented enhancements:** From 7668cb8e27ee530977a833d0db4939a124a94721 Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Sun, 31 Dec 2023 02:56:50 +0000 Subject: [PATCH 22/38] move utterance to query params (#19) fixes https://github.com/OpenVoiceOS/ovos-tts-plugin-piper/issues/16 --- ovos_tts_server/__init__.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ovos_tts_server/__init__.py b/ovos_tts_server/__init__.py index d54abcb..911bebb 100644 --- a/ovos_tts_server/__init__.py +++ b/ovos_tts_server/__init__.py @@ -37,6 +37,13 @@ def synth(utterance: str, request: Request): audio, phonemes = TTS.synth(utterance, **request.query_params) return FileResponse(audio.path) + @app.get("/v2/synthesize") + def synth(request: Request): + utterance = request.query_params["utterance"] + utterance = TTS.validate_ssml(utterance) + audio, phonemes = TTS.synth(utterance, **request.query_params) + return FileResponse(audio.path) + return app From 3acc3a20f36e21b4905f4cb3d17101c99f1aabec Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Sun, 31 Dec 2023 02:57:04 +0000 Subject: [PATCH 23/38] Increment Version to 0.0.3a10 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 3b7847f..5ad6d9a 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 9 +VERSION_ALPHA = 10 # END_VERSION_BLOCK From b1117c42f3ff03053f6cfbd2904e1f7039b705f1 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Sun, 31 Dec 2023 02:57:27 +0000 Subject: [PATCH 24/38] Update Changelog --- CHANGELOG.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5eeb118..db01d6e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,20 @@ # Changelog -## [0.0.3a9](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a9) (2023-10-14) +## [0.0.3a10](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a10) (2023-12-31) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a8...0.0.3a9) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a9...0.0.3a10) + +**Fixed bugs:** + +- move utterance to query params [\#19](https://github.com/OpenVoiceOS/ovos-tts-server/pull/19) ([JarbasAl](https://github.com/JarbasAl)) + +**Closed issues:** + +- Add PyPI Automation [\#5](https://github.com/OpenVoiceOS/ovos-tts-server/issues/5) + +## [V0.0.3a9](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a9) (2023-10-14) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a8...V0.0.3a9) **Merged pull requests:** From 23f274df587e9d29863945a91d3296d1e764712d Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Sun, 28 Jan 2024 13:51:11 +0000 Subject: [PATCH 25/38] Create dependabot.yml --- .github/dependabot.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..26e59a2 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "pip" # See documentation for possible values + directory: "/requirements" # Location of package manifests + schedule: + interval: "weekly" From a89e21a8dc932920fc0cc1734ff1f4bd1ea4d207 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Mar 2024 22:30:01 +0000 Subject: [PATCH 26/38] Update ovos-utils requirement from ~=0.0.32 to ~=0.0.38 in /requirements (#24) Updates the requirements on [ovos-utils](https://github.com/OpenVoiceOS/ovos_utils) to permit the latest version. - [Release notes](https://github.com/OpenVoiceOS/ovos_utils/releases) - [Changelog](https://github.com/OpenVoiceOS/ovos-utils/blob/dev/CHANGELOG.md) - [Commits](https://github.com/OpenVoiceOS/ovos_utils/compare/V0.0.32...V0.0.38) --- updated-dependencies: - dependency-name: ovos-utils dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index ef50e58..0510ec8 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,4 +2,4 @@ ovos-plugin-manager~=0.0.18 fastapi~=0.95 uvicorn~=0.22 gradio~=3.28 -ovos-utils~=0.0.32 \ No newline at end of file +ovos-utils~=0.0.38 \ No newline at end of file From 4f2f05e4a91b45b2129ca14e04c22085e03d3f4b Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Mon, 11 Mar 2024 22:30:19 +0000 Subject: [PATCH 27/38] Increment Version to 0.0.3a11 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 5ad6d9a..10ab25c 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 10 +VERSION_ALPHA = 11 # END_VERSION_BLOCK From a3869d0ef75267ca5bbccdcf9023037e25827d26 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Mon, 11 Mar 2024 22:30:39 +0000 Subject: [PATCH 28/38] Update Changelog --- CHANGELOG.md | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index db01d6e..edc3ba9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,24 @@ # Changelog -## [0.0.3a10](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a10) (2023-12-31) +## [0.0.3a11](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a11) (2024-03-11) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a9...0.0.3a10) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a10...0.0.3a11) + +**Implemented enhancements:** + +- Add an endpoint with `utterance` in request payload [\#18](https://github.com/OpenVoiceOS/ovos-tts-server/issues/18) + +**Closed issues:** + +- Ability to set both primary and fallback TTS to ovos-tts-server [\#12](https://github.com/OpenVoiceOS/ovos-tts-server/issues/12) + +**Merged pull requests:** + +- Update ovos-utils requirement from ~=0.0.32 to ~=0.0.38 in /requirements [\#24](https://github.com/OpenVoiceOS/ovos-tts-server/pull/24) ([dependabot[bot]](https://github.com/apps/dependabot)) + +## [V0.0.3a10](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a10) (2023-12-31) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a9...V0.0.3a10) **Fixed bugs:** From 057524668d6813297868fec6b0b98981702ca6a1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 26 Apr 2024 02:15:53 +0100 Subject: [PATCH 29/38] Update ovos-plugin-manager requirement from ~=0.0.18 to ~=0.0.25 in /requirements (#20) Updates the requirements on [ovos-plugin-manager](https://github.com/OpenVoiceOS/OVOS-plugin-manager) to permit the latest version. - [Release notes](https://github.com/OpenVoiceOS/OVOS-plugin-manager/releases) - [Changelog](https://github.com/OpenVoiceOS/ovos-plugin-manager/blob/dev/CHANGELOG.md) - [Commits](https://github.com/OpenVoiceOS/OVOS-plugin-manager/compare/V0.0.18...V0.0.25) --- updated-dependencies: - dependency-name: ovos-plugin-manager dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 0510ec8..6f4f89f 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,4 +1,4 @@ -ovos-plugin-manager~=0.0.18 +ovos-plugin-manager~=0.0.25 fastapi~=0.95 uvicorn~=0.22 gradio~=3.28 From dc56a9d6713022ccbb2b022b7ae0a0541e736fd9 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 26 Apr 2024 01:16:10 +0000 Subject: [PATCH 30/38] Increment Version to 0.0.3a12 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 10ab25c..31d894a 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 11 +VERSION_ALPHA = 12 # END_VERSION_BLOCK From 61d0c41d6fb652f4f2c1f7cb0f21029eb6e6270b Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 26 Apr 2024 01:16:34 +0000 Subject: [PATCH 31/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index edc3ba9..ba8b7f3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,16 @@ # Changelog -## [0.0.3a11](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a11) (2024-03-11) +## [0.0.3a12](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a12) (2024-04-26) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a10...0.0.3a11) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a11...0.0.3a12) + +**Merged pull requests:** + +- Update ovos-plugin-manager requirement from ~=0.0.18 to ~=0.0.25 in /requirements [\#20](https://github.com/OpenVoiceOS/ovos-tts-server/pull/20) ([dependabot[bot]](https://github.com/apps/dependabot)) + +## [V0.0.3a11](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a11) (2024-03-11) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a10...V0.0.3a11) **Implemented enhancements:** From 01782136aa7dd68046939678a0b0a29d3c9500c4 Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Fri, 26 Apr 2024 02:26:27 +0100 Subject: [PATCH 32/38] Update requirements.txt --- requirements/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 6f4f89f..9025c59 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -2,4 +2,4 @@ ovos-plugin-manager~=0.0.25 fastapi~=0.95 uvicorn~=0.22 gradio~=3.28 -ovos-utils~=0.0.38 \ No newline at end of file +ovos-utils~=0.0 From 09a960e85cde40b27ae8a7f7b4046e558d743011 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 26 Apr 2024 01:26:41 +0000 Subject: [PATCH 33/38] Increment Version to 0.0.3a13 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 31d894a..2c03494 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 12 +VERSION_ALPHA = 13 # END_VERSION_BLOCK From 610cd80c017ed9d95decb1f4db6a638a23e35717 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Fri, 26 Apr 2024 01:27:55 +0000 Subject: [PATCH 34/38] Update Changelog --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ba8b7f3..12c63de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,8 @@ # Changelog -## [0.0.3a12](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a12) (2024-04-26) +## [V0.0.3a12](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a12) (2024-04-26) -[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a11...0.0.3a12) +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a11...V0.0.3a12) **Merged pull requests:** From c595fa9e2b504650f41fceb525d4d3eb06a57c1c Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Mon, 30 Dec 2024 18:03:23 +0000 Subject: [PATCH 35/38] fix:semver (#46) --- .github/workflows/conventional-label.yaml | 10 ++ .github/workflows/propose_release.yml | 32 ------- .github/workflows/publish_alpha.yml | 62 ------------- .github/workflows/publish_release.yml | 43 --------- .github/workflows/publish_stable.yml | 58 ++++++++++++ .github/workflows/release_workflow.yml | 108 ++++++++++++++++++++++ requirements/requirements.txt | 4 +- 7 files changed, 178 insertions(+), 139 deletions(-) create mode 100644 .github/workflows/conventional-label.yaml delete mode 100644 .github/workflows/propose_release.yml delete mode 100644 .github/workflows/publish_alpha.yml delete mode 100644 .github/workflows/publish_release.yml create mode 100644 .github/workflows/publish_stable.yml create mode 100644 .github/workflows/release_workflow.yml diff --git a/.github/workflows/conventional-label.yaml b/.github/workflows/conventional-label.yaml new file mode 100644 index 0000000..0a449cb --- /dev/null +++ b/.github/workflows/conventional-label.yaml @@ -0,0 +1,10 @@ +# auto add labels to PRs +on: + pull_request_target: + types: [ opened, edited ] +name: conventional-release-labels +jobs: + label: + runs-on: ubuntu-latest + steps: + - uses: bcoe/conventional-release-labels@v1 \ No newline at end of file diff --git a/.github/workflows/propose_release.yml b/.github/workflows/propose_release.yml deleted file mode 100644 index a002e5d..0000000 --- a/.github/workflows/propose_release.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Propose Stable Release -on: - workflow_dispatch: - inputs: - release_type: - type: choice - description: Release Type - options: - - build - - minor - - major -jobs: - update_version: - uses: neongeckocom/.github/.github/workflows/propose_semver_release.yml@master - with: - release_type: ${{ inputs.release_type }} - version_file: ovos_bus_client/version.py - alpha_var: VERSION_ALPHA - build_var: VERSION_BUILD - minor_var: VERSION_MINOR - major_var: VERSION_MAJOR - update_changelog: True - branch: dev - - pull_changes: - needs: update_version - uses: neongeckocom/.github/.github/workflows/pull_master.yml@master - with: - pr_assignee: ${{ github.actor }} - pr_draft: false - pr_title: ${{ needs.update_version.outputs.version }} - pr_body: ${{ needs.update_version.outputs.changelog }} diff --git a/.github/workflows/publish_alpha.yml b/.github/workflows/publish_alpha.yml deleted file mode 100644 index ac62855..0000000 --- a/.github/workflows/publish_alpha.yml +++ /dev/null @@ -1,62 +0,0 @@ -# This workflow will generate a distribution and upload it to PyPI - -name: Publish Alpha Build ...aX -on: - push: - branches: - - dev - paths-ignore: - - 'ovos_tts_server/version.py' - - 'test/**' - - 'examples/**' - - '.github/**' - - '.gitignore' - - 'LICENSE' - - 'CHANGELOG.md' - - 'MANIFEST.in' - - 'readme.md' - - 'scripts/**' - workflow_dispatch: - -jobs: - update_version: - uses: neongeckocom/.github/.github/workflows/propose_semver_release.yml@master - with: - release_type: "alpha" - version_file: ovos_tts_server/version.py - alpha_var: VERSION_ALPHA - build_var: VERSION_BUILD - minor_var: VERSION_MINOR - major_var: VERSION_MAJOR - update_changelog: True - branch: dev - build_and_publish: - runs-on: ubuntu-latest - needs: update_version - steps: - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token - with: - tag_name: V${{ needs.update_version.outputs.version }} - release_name: Release ${{ needs.update_version.outputs.version }} - body: | - Changes in this Release - ${{ needs.update_version.outputs.changelog }} - draft: false - prerelease: true - commitish: dev - - name: Checkout Repository - uses: actions/checkout@v2 - with: - ref: dev - fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. - - name: Build Distribution Packages - run: | - python setup.py sdist bdist_wheel - - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@release/v1 - with: - password: ${{secrets.PYPI_TOKEN}} diff --git a/.github/workflows/publish_release.yml b/.github/workflows/publish_release.yml deleted file mode 100644 index edb91cd..0000000 --- a/.github/workflows/publish_release.yml +++ /dev/null @@ -1,43 +0,0 @@ -name: Publish Release -on: - push: - branches: - - master - -jobs: - github_release: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - with: - ref: master - fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. - - name: version - run: echo "::set-output name=version::$(python setup.py --version)" - id: version - - name: "Generate release changelog" - uses: heinrichreimer/github-changelog-generator-action@v2.3 - with: - token: ${{ secrets.GITHUB_TOKEN }} - id: changelog - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token - with: - tag_name: V${{ steps.version.outputs.version }} - release_name: Release ${{ steps.version.outputs.version }} - body: | - Changes in this Release - ${{ steps.changelog.outputs.changelog }} - draft: false - prerelease: false - commitish: master - - name: Build Distribution Packages - run: | - python setup.py sdist bdist_wheel - - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@release/v1 - with: - password: ${{secrets.PYPI_TOKEN}} \ No newline at end of file diff --git a/.github/workflows/publish_stable.yml b/.github/workflows/publish_stable.yml new file mode 100644 index 0000000..958b348 --- /dev/null +++ b/.github/workflows/publish_stable.yml @@ -0,0 +1,58 @@ +name: Stable Release +on: + push: + branches: [master] + workflow_dispatch: + +jobs: + publish_stable: + uses: TigreGotico/gh-automations/.github/workflows/publish-stable.yml@master + secrets: inherit + with: + branch: 'master' + version_file: 'ovos_tts_server/version.py' + setup_py: 'setup.py' + publish_release: true + + publish_pypi: + needs: publish_stable + if: success() # Ensure this job only runs if the previous job succeeds + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + ref: dev + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. + - name: Setup Python + uses: actions/setup-python@v1 + with: + python-version: 3.8 + - name: Install Build Tools + run: | + python -m pip install build wheel + - name: version + run: echo "::set-output name=version::$(python setup.py --version)" + id: version + - name: Build Distribution Packages + run: | + python setup.py sdist bdist_wheel + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@master + with: + password: ${{secrets.PYPI_TOKEN}} + + + sync_dev: + needs: publish_stable + if: success() # Ensure this job only runs if the previous job succeeds + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. + ref: master + - name: Push master -> dev + uses: ad-m/github-push-action@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + branch: dev \ No newline at end of file diff --git a/.github/workflows/release_workflow.yml b/.github/workflows/release_workflow.yml new file mode 100644 index 0000000..53a3815 --- /dev/null +++ b/.github/workflows/release_workflow.yml @@ -0,0 +1,108 @@ +name: Release Alpha and Propose Stable + +on: + pull_request: + types: [closed] + branches: [dev] + +jobs: + publish_alpha: + if: github.event.pull_request.merged == true + uses: TigreGotico/gh-automations/.github/workflows/publish-alpha.yml@master + secrets: inherit + with: + branch: 'dev' + version_file: 'ovos_tts_server/version.py' + setup_py: 'setup.py' + update_changelog: true + publish_prerelease: true + changelog_max_issues: 100 + + notify: + if: github.event.pull_request.merged == true + needs: publish_alpha + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Send message to Matrix bots channel + id: matrix-chat-message + uses: fadenb/matrix-chat-message@v0.0.6 + with: + homeserver: 'matrix.org' + token: ${{ secrets.MATRIX_TOKEN }} + channel: '!WjxEKjjINpyBRPFgxl:krbel.duckdns.org' + message: | + new ${{ github.event.repository.name }} PR merged! https://github.com/${{ github.repository }}/pull/${{ github.event.number }} + + publish_pypi: + needs: publish_alpha + if: success() # Ensure this job only runs if the previous job succeeds + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + ref: dev + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. + - name: Setup Python + uses: actions/setup-python@v1 + with: + python-version: 3.8 + - name: Install Build Tools + run: | + python -m pip install build wheel + - name: version + run: echo "::set-output name=version::$(python setup.py --version)" + id: version + - name: Build Distribution Packages + run: | + python setup.py sdist bdist_wheel + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@master + with: + password: ${{secrets.PYPI_TOKEN}} + + + propose_release: + needs: publish_alpha + if: success() # Ensure this job only runs if the previous job succeeds + runs-on: ubuntu-latest + steps: + - name: Checkout dev branch + uses: actions/checkout@v3 + with: + ref: dev + + - name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: '3.10' + + - name: Get version from setup.py + id: get_version + run: | + VERSION=$(python setup.py --version) + echo "VERSION=$VERSION" >> $GITHUB_ENV + + - name: Create and push new branch + run: | + git checkout -b release-${{ env.VERSION }} + git push origin release-${{ env.VERSION }} + + - name: Open Pull Request from dev to master + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + # Variables + BRANCH_NAME="release-${{ env.VERSION }}" + BASE_BRANCH="master" + HEAD_BRANCH="release-${{ env.VERSION }}" + PR_TITLE="Release ${{ env.VERSION }}" + PR_BODY="Human review requested!" + + # Create a PR using GitHub API + curl -X POST \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: token $GITHUB_TOKEN" \ + -d "{\"title\":\"$PR_TITLE\",\"body\":\"$PR_BODY\",\"head\":\"$HEAD_BRANCH\",\"base\":\"$BASE_BRANCH\"}" \ + https://api.github.com/repos/${{ github.repository }}/pulls + diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 9025c59..5c7a710 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -1,5 +1,5 @@ -ovos-plugin-manager~=0.0.25 +ovos-plugin-manager>=0.0.25,<1.0.0 fastapi~=0.95 uvicorn~=0.22 gradio~=3.28 -ovos-utils~=0.0 +ovos-utils>=0.0.38,<1.0.0 From 4c7f575915e8142be5b4eacf7e6609dfba05c069 Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Mon, 30 Dec 2024 18:03:36 +0000 Subject: [PATCH 36/38] Increment Version to 0.0.3a14 --- ovos_tts_server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 2c03494..644933f 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -2,5 +2,5 @@ VERSION_MAJOR = 0 VERSION_MINOR = 0 VERSION_BUILD = 3 -VERSION_ALPHA = 13 +VERSION_ALPHA = 14 # END_VERSION_BLOCK From bf3fc0a18f77a9f9b659578499178d73095b40cf Mon Sep 17 00:00:00 2001 From: JarbasAl Date: Mon, 30 Dec 2024 18:03:56 +0000 Subject: [PATCH 37/38] Update Changelog --- CHANGELOG.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 12c63de..4f2137d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # Changelog +## [0.0.3a14](https://github.com/OpenVoiceOS/ovos-tts-server/tree/0.0.3a14) (2024-12-30) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a13...0.0.3a14) + +**Merged pull requests:** + +- fix:semver [\#46](https://github.com/OpenVoiceOS/ovos-tts-server/pull/46) ([JarbasAl](https://github.com/JarbasAl)) + +## [V0.0.3a13](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a13) (2024-04-26) + +[Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a12...V0.0.3a13) + ## [V0.0.3a12](https://github.com/OpenVoiceOS/ovos-tts-server/tree/V0.0.3a12) (2024-04-26) [Full Changelog](https://github.com/OpenVoiceOS/ovos-tts-server/compare/V0.0.3a11...V0.0.3a12) From 2c15d4edb77c0114da23f69263dcc7f72a55b425 Mon Sep 17 00:00:00 2001 From: JarbasAI <33701864+JarbasAl@users.noreply.github.com> Date: Mon, 30 Dec 2024 18:26:02 +0000 Subject: [PATCH 38/38] Update version.py --- ovos_tts_server/version.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ovos_tts_server/version.py b/ovos_tts_server/version.py index 644933f..cbb1e3f 100644 --- a/ovos_tts_server/version.py +++ b/ovos_tts_server/version.py @@ -1,6 +1,6 @@ # START_VERSION_BLOCK VERSION_MAJOR = 0 -VERSION_MINOR = 0 -VERSION_BUILD = 3 -VERSION_ALPHA = 14 +VERSION_MINOR = 1 +VERSION_BUILD = 0 +VERSION_ALPHA = 0 # END_VERSION_BLOCK