chore: prepare 0.6.0 Linux and Windows release
This commit is contained in:
@@ -1,12 +1,12 @@
|
|||||||
name: Linux desktop release
|
name: Linux desktop release
|
||||||
|
|
||||||
# Manual until a native Linux runner is registered. The current 0.5.2
|
# Manual until a native Linux runner is registered. The current 0.6.0
|
||||||
# packages are built locally using the identical gates documented below.
|
# packages are built locally using the identical gates documented below.
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
inputs:
|
inputs:
|
||||||
tag:
|
tag:
|
||||||
description: Existing stable version tag to package (for example v0.5.2)
|
description: Existing stable version tag to package (for example v0.6.0)
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Desktop builds and releases
|
# Desktop builds and releases
|
||||||
|
|
||||||
For this fork’s Linux and Windows 0.5.2 release on Gitea, see [Gitea releases](gitea-release.md).
|
For this fork’s Linux and Windows 0.6.0 release on Gitea, see [Gitea releases](gitea-release.md).
|
||||||
The three-platform GitHub process below documents the upstream reference.
|
The three-platform GitHub process below documents the upstream reference.
|
||||||
|
|
||||||
## Platforms
|
## Platforms
|
||||||
|
|||||||
+16
-16
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
The release destination is
|
The release destination is
|
||||||
https://server2.sorokin-oleg-edu.xyz/replicated/learnharness.
|
https://server2.sorokin-oleg-edu.xyz/replicated/learnharness.
|
||||||
Version **0.5.2 targets Linux x64 and Windows x64**, with each platform built
|
Version **0.6.0 targets Linux x64 and Windows x64**, with each platform built
|
||||||
and verified on its native operating system. The upstream GitHub workflow and three-platform packaging
|
and verified on its native operating system. The upstream GitHub workflow and three-platform packaging
|
||||||
configuration remain available as reference in `.github/workflows/release.yml`
|
configuration remain available as reference in `.github/workflows/release.yml`
|
||||||
and `electron-builder.yml`.
|
and `electron-builder.yml`.
|
||||||
@@ -48,18 +48,18 @@ node scripts/smoke-provider-runtime.mjs --standalone dist/linux-unpacked/resourc
|
|||||||
xvfb-run -a node scripts/smoke-demo-runtime.mjs --standalone dist/linux-unpacked/resources/server/standalone --runtime dist/linux-unpacked/learnharness --browser
|
xvfb-run -a node scripts/smoke-demo-runtime.mjs --standalone dist/linux-unpacked/resources/server/standalone --runtime dist/linux-unpacked/learnharness --browser
|
||||||
```
|
```
|
||||||
|
|
||||||
The Linux portion of 0.5.2 has these attachments:
|
The Linux portion of 0.6.0 has these attachments:
|
||||||
|
|
||||||
- `LearnHarness-0.5.2-x86_64.AppImage`
|
- `LearnHarness-0.6.0-x86_64.AppImage`
|
||||||
- `LearnHarness-0.5.2-amd64.deb`
|
- `LearnHarness-0.6.0-amd64.deb`
|
||||||
- `latest-linux.yml`
|
- `latest-linux.yml`
|
||||||
- `SHA256SUMS`
|
- `SHA256SUMS`
|
||||||
|
|
||||||
## Preparing Windows packages
|
## Preparing Windows packages
|
||||||
|
|
||||||
Use a clean checkout of the same `v0.5.2` tag on Windows x64 with Node 26 and Git
|
Use a clean checkout of the same `v0.6.0` tag on Windows x64 with Node 26 and Git
|
||||||
for Windows. Keep build tools and logs outside the checkout. The Windows
|
for Windows. Keep build tools and logs outside the checkout. The Windows
|
||||||
release checkout is `~/Documents/Gitea/learnharness-release-0.5.2`, linked to the
|
release checkout is `~/Documents/Gitea/learnharness-release-0.6.0`, linked to the
|
||||||
existing repository in `~/Documents/Gitea/learnharness`.
|
existing repository in `~/Documents/Gitea/learnharness`.
|
||||||
|
|
||||||
In PowerShell, stop after any failed command:
|
In PowerShell, stop after any failed command:
|
||||||
@@ -85,13 +85,13 @@ node scripts/smoke-demo-runtime.mjs --standalone dist/win-unpacked/resources/ser
|
|||||||
|
|
||||||
Windows contributes three attachments:
|
Windows contributes three attachments:
|
||||||
|
|
||||||
- `LearnHarness-0.5.2-x64-setup.exe`
|
- `LearnHarness-0.6.0-x64-setup.exe`
|
||||||
- `LearnHarness-0.5.2-x64-setup.exe.blockmap`
|
- `LearnHarness-0.6.0-x64-setup.exe.blockmap`
|
||||||
- `latest.yml`
|
- `latest.yml`
|
||||||
|
|
||||||
The combined release has **seven attachments**, including one `SHA256SUMS`
|
The combined release has **seven attachments**, including one `SHA256SUMS`
|
||||||
covering all six other files. Verify that `latest.yml` names the Windows
|
covering all six other files. Verify that `latest.yml` names the Windows
|
||||||
installer exactly, reports version `0.5.2`, and matches the installer's actual
|
installer exactly, reports version `0.6.0`, and matches the installer's actual
|
||||||
size and SHA-512. Its gzip blockmap must cover the installer and match every
|
size and SHA-512. Its gzip blockmap must cover the installer and match every
|
||||||
block checksum. Confirm the packaged `resources/app-update.yml` uses the Gitea
|
block checksum. Confirm the packaged `resources/app-update.yml` uses the Gitea
|
||||||
generic provider. Windows builds follow upstream's unsigned, per-user installer
|
generic provider. Windows builds follow upstream's unsigned, per-user installer
|
||||||
@@ -102,8 +102,8 @@ configuration.
|
|||||||
Commit and push the release source, then push its exact annotated tag:
|
Commit and push the release source, then push its exact annotated tag:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
git tag -a v0.5.2 -m 'LearnHarness 0.5.2'
|
git tag -a v0.6.0 -m 'LearnHarness 0.6.0'
|
||||||
git push gitea main v0.5.2
|
git push gitea main v0.6.0
|
||||||
```
|
```
|
||||||
|
|
||||||
Supply `GITEA_TOKEN` only to the upload command. A token file may remain outside
|
Supply `GITEA_TOKEN` only to the upload command. A token file may remain outside
|
||||||
@@ -117,14 +117,14 @@ The tool requires the tag to exist in Gitea, creates or reuses one draft at that
|
|||||||
tag, uploads missing assets, and downloads every attachment to verify its actual
|
tag, uploads missing assets, and downloads every attachment to verify its actual
|
||||||
SHA-256 against the local verified build. Existing mismatched attachments and
|
SHA-256 against the local verified build. Existing mismatched attachments and
|
||||||
published releases are refused. It never publishes or changes repository
|
published releases are refused. It never publishes or changes repository
|
||||||
visibility. Release notes come from `docs/release-0.5.2.md`.
|
visibility. Release notes come from `docs/release-0.6.0.md`.
|
||||||
|
|
||||||
This uploader and its remote verifier enforce a **Linux-only** inventory. They
|
This uploader and its remote verifier enforce a **Linux-only** inventory. They
|
||||||
will refuse a combined Linux/Windows draft. For the combined 0.5.2 release, add
|
will refuse a combined Linux/Windows draft. For the combined 0.6.0 release, add
|
||||||
the verified Windows attachments to the existing draft and replace `SHA256SUMS`
|
the verified Windows attachments to the existing draft and replace `SHA256SUMS`
|
||||||
with the combined manifest. Keep the Linux installers and feed unchanged. Check
|
with the combined manifest. Keep the Linux installers and feed unchanged. Check
|
||||||
all seven attachment names and sizes against the verified local builds. For
|
all seven attachment names and sizes against the verified local builds. For
|
||||||
the owner-approved 0.5.2 release, local installer/feed/blockmap validation and
|
the owner-approved 0.6.0 release, local installer/feed/blockmap validation and
|
||||||
the combined checksum manifest are completed before upload. Confirm successful
|
the combined checksum manifest are completed before upload. Confirm successful
|
||||||
upload responses and publish immediately afterward; do not download attachments
|
upload responses and publish immediately afterward; do not download attachments
|
||||||
again or run post-upload hash checks. Do not publish until both platforms'
|
again or run post-upload hash checks. Do not publish until both platforms'
|
||||||
@@ -145,12 +145,12 @@ public `latest` feed and in-app automatic updates expose this version.
|
|||||||
workflow with an existing release tag as input. It requires a native Linux x64
|
workflow with an existing release tag as input. It requires a native Linux x64
|
||||||
runner labeled `ubuntu-24.04`, the label used by upstream's Linux release job,
|
runner labeled `ubuntu-24.04`, the label used by upstream's Linux release job,
|
||||||
plus the native Electron dependencies and `xvfb-run`. There were no runners
|
plus the native Electron dependencies and `xvfb-run`. There were no runners
|
||||||
registered when 0.5.2 was prepared, so its packages are built locally. A tag push
|
registered when 0.6.0 was prepared, so its packages are built locally. A tag push
|
||||||
does not queue a job that cannot run.
|
does not queue a job that cannot run.
|
||||||
|
|
||||||
The workflow uses the repository's ephemeral `GITEA_TOKEN` with release-write
|
The workflow uses the repository's ephemeral `GITEA_TOKEN` with release-write
|
||||||
permission only in the final upload step. It checks out the requested tag without
|
permission only in the final upload step. It checks out the requested tag without
|
||||||
persisting credentials and leaves the result as a verified draft. Public pull
|
persisting credentials and leaves the result as a verified draft. Public pull
|
||||||
requests cannot trigger this publishing workflow. This workflow remains
|
requests cannot trigger this publishing workflow. This workflow remains
|
||||||
Linux-only; the combined 0.5.2 draft was assembled from local native builds.
|
Linux-only; the combined 0.6.0 draft was assembled from local native builds.
|
||||||
Windows has its own standalone payload and smoke checks, as described above.
|
Windows has its own standalone payload and smoke checks, as described above.
|
||||||
|
|||||||
@@ -0,0 +1,63 @@
|
|||||||
|
# LearnHarness 0.6.0
|
||||||
|
|
||||||
|
## English
|
||||||
|
|
||||||
|
This release adds OpenRouter speech recognition and a dedicated speech-recognition
|
||||||
|
settings page, with cleaner controls in English and Russian.
|
||||||
|
|
||||||
|
- **OpenRouter STT:** choose **MAI-Transcribe-2 · OpenRouter** and add your
|
||||||
|
OpenRouter API key under **Settings → Providers**. The app records locally,
|
||||||
|
sends the whole recording after **Stop**, and shows **Transcribing…** until
|
||||||
|
the complete transcript is ready. Audio is not split into speech segments.
|
||||||
|
Cancelling aborts the request; submitting an answer or message waits for
|
||||||
|
transcription. The permanent API key stays on the server and audio is not
|
||||||
|
saved to disk. Recordings are limited to 25 MB, about 13 minutes.
|
||||||
|
- **Settings → Speech recognition** now contains the model, recognition language,
|
||||||
|
and preferred languages. The two model choices use the same format:
|
||||||
|
**Nova-3 · Deepgram** and **MAI-Transcribe-2 · OpenRouter**. General settings
|
||||||
|
contains only interface language and automatic updates.
|
||||||
|
- **Preferred languages** uses a styled checkbox dropdown aligned on the right.
|
||||||
|
It stays open while selecting English and Russian, shows **No preference**
|
||||||
|
when neither is selected, and no longer dims or flashes while saving.
|
||||||
|
These hints remain available for Deepgram Multilingual. MAI uses automatic
|
||||||
|
language detection for Multilingual; its API does not expose a RU + EN hint
|
||||||
|
list. Saved hints are retained when switching models.
|
||||||
|
- On Linux, clicking an available **Fast** button keeps the normal cursor while
|
||||||
|
the setting is saved.
|
||||||
|
|
||||||
|
Existing settings remain compatible and direct Deepgram Nova-3 remains the
|
||||||
|
default. Linux x64 packages include AppImage and Debian; Windows x64 has an
|
||||||
|
installer. Both platforms use this fork's public Gitea releases for automatic
|
||||||
|
updates. The Windows installer remains unsigned, as in previous releases.
|
||||||
|
|
||||||
|
## Русский
|
||||||
|
|
||||||
|
В этом выпуске добавлено распознавание речи через OpenRouter и отдельный раздел
|
||||||
|
его настроек. Элементы управления обновлены на русском и английском языках.
|
||||||
|
|
||||||
|
- **Распознавание через OpenRouter:** выберите **MAI-Transcribe-2 · OpenRouter**
|
||||||
|
и добавьте API-ключ OpenRouter в разделе **Настройки → Провайдеры**. Приложение
|
||||||
|
записывает речь локально, отправляет всю запись после остановки и показывает
|
||||||
|
**Распознавание…** до получения полного текста. Речь не разбивается на
|
||||||
|
отдельные фрагменты. Отмена прерывает запрос, а отправка ответа или сообщения
|
||||||
|
дожидается завершения распознавания. Постоянный API-ключ остаётся на сервере,
|
||||||
|
аудио не сохраняется на диск. Максимальный размер записи — 25 МБ, примерно
|
||||||
|
13 минут.
|
||||||
|
- Новый раздел **Настройки → Распознавание речи** содержит выбор модели, языка
|
||||||
|
распознавания и предпочитаемых языков. Названия моделей оформлены одинаково:
|
||||||
|
**Nova-3 · Deepgram** и **MAI-Transcribe-2 · OpenRouter**. В разделе «Общие»
|
||||||
|
остались только язык интерфейса и автоматические обновления.
|
||||||
|
- **Предпочитаемые языки** выбираются в оформленном в стиле приложения
|
||||||
|
выпадающем меню с флажками справа. Меню остаётся открытым при выборе русского
|
||||||
|
и английского. Если оба флажка сняты, отображается **Без предпочтений**.
|
||||||
|
Во время сохранения меню больше не тускнеет и не мигает. Подсказки работают
|
||||||
|
в многоязычном режиме Deepgram. MAI определяет языки автоматически: его API
|
||||||
|
не предоставляет списка подсказок RU + EN. Сохранённые предпочтения остаются
|
||||||
|
при переключении моделей.
|
||||||
|
- В Linux нажатие доступной кнопки **Быстро** больше не меняет курсор на время
|
||||||
|
сохранения настройки.
|
||||||
|
|
||||||
|
Прежние настройки совместимы; по умолчанию по-прежнему используется Deepgram
|
||||||
|
Nova-3 напрямую. Для Linux x64 доступны AppImage и Debian, для Windows x64 —
|
||||||
|
установщик. Обе версии получают автоматические обновления из публичных выпусков
|
||||||
|
этого форка в Gitea. Установщик Windows не подписан, как и в предыдущих выпусках.
|
||||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "learnharness",
|
"name": "learnharness",
|
||||||
"version": "0.5.2",
|
"version": "0.6.0",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "learnharness",
|
"name": "learnharness",
|
||||||
"version": "0.5.2",
|
"version": "0.6.0",
|
||||||
"license": "AGPL-3.0-only",
|
"license": "AGPL-3.0-only",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@earendil-works/pi-agent-core": "1.4.0",
|
"@earendil-works/pi-agent-core": "1.4.0",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "learnharness",
|
"name": "learnharness",
|
||||||
"version": "0.5.2",
|
"version": "0.6.0",
|
||||||
"license": "AGPL-3.0-only",
|
"license": "AGPL-3.0-only",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "Amos Blomqvist",
|
"name": "Amos Blomqvist",
|
||||||
|
|||||||
Reference in New Issue
Block a user