Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: CI

on:
push:
branches: [ main, master, dev ]
branches: [ main ]
pull_request:
branches: [ main, master ]
branches: [ main ]

jobs:
frontend:
Expand Down
78 changes: 17 additions & 61 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,29 +5,14 @@ on:
tags:
- 'v*'
workflow_dispatch:
inputs:
release_title:
description: 'Custom Release Title (leave empty for default: "WEave vX.Y.Z")'
required: false
type: string
is_draft:
description: 'Publish as Draft'
required: false
type: boolean
default: false
is_prerelease:
description: 'Publish as Pre-release'
required: false
type: boolean
default: false

permissions:
contents: write
id-token: write
attestations: write

jobs:
publish-tauri:
release:
name: Build & Publish Release
runs-on: windows-latest
steps:
Expand All @@ -53,27 +38,14 @@ jobs:
- name: Install frontend dependencies
run: npm ci

- name: Determine Version & Title
id: version_info
shell: powershell
run: |
$ver = (Get-Content package.json | ConvertFrom-Json).version
echo "VERSION=$ver" >> $env:GITHUB_OUTPUT

$customTitle = "${{ github.event.inputs.release_title }}"
if ([string]::IsNullOrWhiteSpace($customTitle)) {
$customTitle = "WEave v$ver"
}
echo "TITLE=$customTitle" >> $env:GITHUB_OUTPUT

- name: Build Tauri App
run: npm run tauri build

- name: Prepare Artifacts & Zip Portable
id: prepare_artifacts
shell: powershell
run: |
$ver = "${{ steps.version_info.outputs.VERSION }}"
$ver = (Get-Content package.json | ConvertFrom-Json).version
$distDir = "dist_artifacts"
New-Item -ItemType Directory -Force -Path $distDir

Expand Down Expand Up @@ -102,47 +74,31 @@ jobs:
}

- name: Extract Release Notes from CHANGELOG.md
id: changelog
id: extract_notes
shell: powershell
run: |
$latestTagNotes = ""
if (Test-Path "CHANGELOG.md") {
$lines = Get-Content "CHANGELOG.md"
$extracted = @()
$started = $false
foreach ($line in $lines) {
if ($line -match '^##\s+\[?v?\d+') {
if ($started) { break }
$started = $true
continue
}
if ($started) {
$extracted += $line
}
}
$latestTagNotes = ($extracted -join "`n").Trim()
}

if (-not $latestTagNotes) {
$latestTagNotes = "Release v${{ steps.version_info.outputs.VERSION }}"
$changelog = Get-Content CHANGELOG.md -Raw
# Match notes from the first `## [` heading until the next `## [` heading or end of file
if ($changelog -match "(?ms)^##\s+\[.*?\]\s*.*?\r?\n(.*?)(?=^##\s+\[|\z)") {
$notes = $matches[1].Trim()
Set-Content -Path "release_notes.md" -Value $notes -Encoding utf8
Write-Host "Extracted release notes successfully."
} else {
Set-Content -Path "release_notes.md" -Value "Release ${{ github.ref_name }}" -Encoding utf8
Write-Host "Fallback release notes used."
}

[System.IO.File]::WriteAllText("CHANGELOG_GENERATED.md", $latestTagNotes, [System.Text.Encoding]::UTF8)

- name: Attest Build Artifacts
uses: actions/attest-build-provenance@v2
with:
subject-path: 'dist_artifacts/*'

- name: Create GitHub Release
- name: Publish GitHub Release
uses: softprops/action-gh-release@v2
with:
tag_name: v${{ steps.version_info.outputs.VERSION }}
name: "${{ steps.version_info.outputs.TITLE }}"
body_path: CHANGELOG_GENERATED.md
draft: ${{ github.event.inputs.is_draft || false }}
prerelease: ${{ github.event.inputs.is_prerelease || false }}
files: |
dist_artifacts/*
tag_name: ${{ github.ref_name }}
name: WEave ${{ github.ref_name }}
body_path: release_notes.md
files: dist_artifacts/*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
57 changes: 36 additions & 21 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,49 @@
# Changelog

## [4.11.1](https://github.com/psyattack/WEave/compare/v4.11.0...v4.11.1) - 2026-07-25

### Fixed
- Fixed an issue where selecting an option from a dropdown menu in Settings would unexpectedly close the entire dialog.

<details><summary>Detailed Changelog</summary>

### Changed
- **release:** Switch release workflow to tag-based GitHub releases (by @psyattack in https://github.com/psyattack/WEave/commit/830e16c)
- **ci:** Integrate semantic-release and refactor bump script (by @psyattack in https://github.com/psyattack/WEave/commit/c4bde98)
- **release:** Extract release notes directly from CHANGELOG.md (by @psyattack in https://github.com/psyattack/WEave/commit/ac0d1ed)

### Fixed
- **settings:** Prevent select dropdown from closing parent dialog (by @psyattack in https://github.com/psyattack/WEave/commit/62b4c1e)

</details>

## [4.11.0] - 2026-07-24

### Added
- Combined "Download & Release Notes" action button in the update dialog.
- Header icons for UpdateDialog and ParserDebugDialog.
- Direct button to download updates and view release notes on GitHub from the update dialog.

### Fixed
- Fixed automatic update modal popup on startup when a new release is available.
- Prevented blank window flash on application launch by holding window visibility until React UI is ready.
- Fixed unexpected focus rings on dialog opening and closing.
- Prevented a brief blank window flash when launching the application.
- Fixed update detection on startup to reliably display the update dialog whenever a new version is available.

### Changed
- Streamlined UpdateDialog by removing release notes details and custom Markdown dependencies.
- Added NOTICE.md for third-party license compliance.
### Improved
- Polished UI elements including cleaner dropdown outlines, improved pagination spacing, and simplified hotkey tooltips.
- Updated Legal and Info dialogs to include comprehensive third-party software licensing details.

<details><summary>Detailed Changelog</summary>

### Added
- feat(updater): Improve update dialog, auto-check flow and focus handling ([edc286c](https://github.com/psyattack/WEave/commit/edc286c))
- feat(updater): Improve update dialog, auto-check flow and focus handling ([edc286c](https://github.com/psyattack/WEave/commit/edc286c)) by @psyattack

### Changed
- chore(release): bump version to 4.11.0 ([3ec8041](https://github.com/psyattack/WEave/commit/3ec8041))
- style(pagination): Improve spacing around page slash separator ([1ca2259](https://github.com/psyattack/WEave/commit/1ca2259))
- style(ui): Remove focus outline from selects and tooltip from hotkeys ([2fb28dd](https://github.com/psyattack/WEave/commit/2fb28dd))
- refactor(dialogs): Update Legal and Info dialogs and add NOTICE.md ([73607bc](https://github.com/psyattack/WEave/commit/73607bc))
- chore: remove knip from repository ([1189551](https://github.com/psyattack/WEave/commit/1189551))
- chore(release): bump version to 4.11.0 ([3ec8041](https://github.com/psyattack/WEave/commit/3ec8041)) by @psyattack
- style(pagination): Improve spacing around page slash separator ([1ca2259](https://github.com/psyattack/WEave/commit/1ca2259)) by @psyattack
- style(ui): Remove focus outline from selects and tooltip from hotkeys ([2fb28dd](https://github.com/psyattack/WEave/commit/2fb28dd)) by @psyattack
- refactor(dialogs): Update Legal and Info dialogs and add NOTICE.md ([73607bc](https://github.com/psyattack/WEave/commit/73607bc)) by @psyattack
- chore: remove knip from repository ([1189551](https://github.com/psyattack/WEave/commit/1189551)) by @psyattack

### Fixed
- fix(window): Prevent blank window flash on app startup ([406ff22](https://github.com/psyattack/WEave/commit/406ff22))
- fix(window): Prevent blank window flash on app startup ([406ff22](https://github.com/psyattack/WEave/commit/406ff22)) by @psyattack

</details>

Expand All @@ -44,11 +59,11 @@
<details><summary>Detailed Changelog</summary>

### Changed
- chore(release): bump version to 4.10.3 ([78219c8](https://github.com/psyattack/WEave/commit/78219c8))
- ci(release): skip version header in generated release body ([eac2d0a](https://github.com/psyattack/WEave/commit/eac2d0a))
- chore(release): bump version to 4.10.2 ([bfa471d](https://github.com/psyattack/WEave/commit/bfa471d))
- ci: add GitHub Actions workflows for CI and release ([ed6ce39](https://github.com/psyattack/WEave/commit/ed6ce39))
- docs(readme): Update features description and formatting ([9b68fb1](https://github.com/psyattack/WEave/commit/9b68fb1))
- chore: Update documentation structure and filter cookie store logs ([dde6819](https://github.com/psyattack/WEave/commit/dde6819))
- chore(release): bump version to 4.10.3 ([78219c8](https://github.com/psyattack/WEave/commit/78219c8)) by @psyattack
- ci(release): skip version header in generated release body ([eac2d0a](https://github.com/psyattack/WEave/commit/eac2d0a)) by @psyattack
- chore(release): bump version to 4.10.2 ([bfa471d](https://github.com/psyattack/WEave/commit/bfa471d)) by @psyattack
- ci: add GitHub Actions workflows for CI and release ([ed6ce39](https://github.com/psyattack/WEave/commit/ed6ce39)) by @psyattack
- docs(readme): Update features description and formatting ([9b68fb1](https://github.com/psyattack/WEave/commit/9b68fb1)) by @psyattack
- chore: Update documentation structure and filter cookie store logs ([dde6819](https://github.com/psyattack/WEave/commit/dde6819)) by @psyattack

</details>
12 changes: 4 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,19 +142,15 @@ npm run tauri build
npm run test # Frontend tests
cd src-tauri && cargo test # Backend tests

# Checks backend (personal recommendation)
# Checks backend
cargo check
cargo machete
cargo clippy -- -W dead_code
cargo +nightly udeps

# Checks frontend (personal recommendation)
npx knip
# Checks frontend
npm run typecheck
npm run lint

# Bump version
npm run bump -- <semver>
# Bump
npm run bump
```

</details>
Expand Down
12 changes: 4 additions & 8 deletions README.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,19 +142,15 @@ npm run tauri build
npm run test # Тесты frontend
cd src-tauri && cargo test # Тесты backend

# Проверки backend (личная рекомендация)
# Проверки backend
cargo check
cargo machete
cargo clippy -- -W dead_code
cargo +nightly udeps

# Проверки frontend (личная рекомендация)
npx knip
# Проверки frontend
npm run typecheck
npm run lint

# Сменить версию
npm run bump -- <semver>
# Bump
npm run bump
```

</details>
Expand Down
Loading
Loading