Skip to content

Commit 1989e6b

Browse files
committed
Add changelog and release workflow
1 parent 322a14b commit 1989e6b

2 files changed

Lines changed: 66 additions & 0 deletions

File tree

.github/workflows/release.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches: [master]
6+
paths:
7+
- 'CHANGELOG.md'
8+
9+
jobs:
10+
release:
11+
runs-on: ubuntu-latest
12+
permissions:
13+
contents: write
14+
steps:
15+
- uses: actions/checkout@v4
16+
with:
17+
fetch-depth: 0
18+
19+
- name: Get version from CHANGELOG
20+
id: version
21+
run: |
22+
VERSION=$(grep -m1 '^### ' CHANGELOG.md | sed 's/### \([0-9.]*\).*/\1/')
23+
echo "version=$VERSION" >> $GITHUB_OUTPUT
24+
echo "Found version: $VERSION"
25+
26+
- name: Check if release exists
27+
id: check
28+
run: |
29+
if gh release view "v${{ steps.version.outputs.version }}" > /dev/null 2>&1; then
30+
echo "exists=true" >> $GITHUB_OUTPUT
31+
else
32+
echo "exists=false" >> $GITHUB_OUTPUT
33+
fi
34+
env:
35+
GH_TOKEN: ${{ github.token }}
36+
37+
- name: Extract release notes
38+
if: steps.check.outputs.exists == 'false'
39+
id: notes
40+
run: |
41+
# Extract notes for this version (between first and second ### headers)
42+
NOTES=$(awk '/^### [0-9]/{if(p) exit; p=1; next} p' CHANGELOG.md)
43+
echo "notes<<EOF" >> $GITHUB_OUTPUT
44+
echo "$NOTES" >> $GITHUB_OUTPUT
45+
echo "EOF" >> $GITHUB_OUTPUT
46+
47+
- name: Create release
48+
if: steps.check.outputs.exists == 'false'
49+
run: |
50+
gh release create "v${{ steps.version.outputs.version }}" \
51+
--title "v${{ steps.version.outputs.version }}" \
52+
--notes "${{ steps.notes.outputs.notes }}"
53+
env:
54+
GH_TOKEN: ${{ github.token }}

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
### 1.1.0: 2026-03-26
2+
3+
* Human-readable time format for multi-hour sessions (2h 10min instead of 130:00)
4+
* Center window on screen on launch
5+
6+
### 1.0.0: 2026-03-25
7+
8+
* Flow timer with living gradient background
9+
* Tibetan singing bowl bell at halfway and completion
10+
* Borderless floating window with pause/complete controls
11+
* Dynamic color states for normal, halfway, overtime and paused
12+
* Keyboard shortcuts (space to pause, enter to complete)

0 commit comments

Comments
 (0)