Skip to content

Commit 13d5616

Browse files
Merge pull request #102 from THEOplayer/maintenance/changelog-plugin
Use Gradle changelog plugin
2 parents 4a16eb3 + 3da2bc2 commit 13d5616

12 files changed

Lines changed: 185 additions & 95 deletions

.github/workflows/create-release.yml

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,22 +31,39 @@ jobs:
3131
run: |
3232
git config user.name 'theoplayer-bot[bot]'
3333
git config user.email '873105+theoplayer-bot[bot]@users.noreply.github.com'
34+
- name: Setup Java
35+
uses: actions/setup-java@v5
36+
with:
37+
distribution: temurin
38+
java-version: 21
39+
- name: Setup Gradle
40+
uses: gradle/actions/setup-gradle@v6
41+
with:
42+
# https://github.com/gradle/actions/blob/v6.0.0/README.md#licensing-notice
43+
cache-disabled: true
3444
- name: Bump version
3545
shell: bash
46+
# language=bash
3647
run: |
37-
node ./scripts/set_version.js ${{ inputs.version }}
48+
yq -i '.version="'"$VERSION"'"' --properties-separator="=" ./gradle.properties
49+
./gradlew :patchChangelog
50+
env:
51+
VERSION: ${{ inputs.version }}
3852
- name: Push to release branch
3953
shell: bash
54+
# language=bash
4055
run: |
4156
git commit -a -m ${{ inputs.version }}
4257
git push origin "HEAD:release/${{ inputs.version }}"
4358
- name: Create pull request
4459
shell: bash
60+
# language=bash
4561
run: |
62+
changelog=$(./gradlew --no-daemon --console=plain --quiet :getChangelog --no-links)
4663
gh pr create \
4764
--base main \
4865
--head "release/${{ inputs.version }}" \
4966
--title "Release ${{ inputs.version }}" \
50-
--body "$(node ./scripts/github_changelog.js ${{ inputs.version }})"
67+
--body "$changelog"
5168
env:
5269
GH_TOKEN: ${{ steps.app-token.outputs.token }}

.github/workflows/publish.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,16 +52,20 @@ jobs:
5252
REPOSILITE_PASSWORD: ${{ secrets.REPOSILITE_PASSWORD }}
5353
- name: Get version
5454
shell: bash
55+
# language=bash
5556
run: |
56-
echo "version=$(./gradlew :ui:properties --no-daemon --console=plain --quiet | awk '/^version:/ {print $2}')" >> "$GITHUB_ENV"
57+
echo "version=$(yq '.version' ./gradle.properties)" >> "$GITHUB_ENV"
5758
- name: Push tag
59+
# language=bash
5860
run: |
5961
git tag "v$version" -m "$version"
6062
git push origin "v$version"
6163
- name: Create GitHub release
64+
# language=bash
6265
run: |
66+
notes=$(./gradlew --no-daemon --console=plain --quiet :getChangelog --no-header --project-version="$version")
6367
gh release create "v$version" --verify-tag --latest \
6468
--title "$version" \
65-
--notes "$(node ./scripts/github_changelog.js $version)"
69+
--notes "$notes"
6670
env:
6771
GH_TOKEN: ${{ steps.app-token.outputs.token }}

.idea/deploymentTargetSelector.xml

Lines changed: 18 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/encodings.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/markdown.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/runConfigurations.xml

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CHANGELOG.md

Lines changed: 71 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -9,170 +9,172 @@
99
> - 🏠 Internal
1010
> - 💅 Polish
1111
12-
## v1.14.1 (2026-04-20)
12+
## [Unreleased]
13+
14+
## [1.14.1] (2026-04-20)
1315

1416
* 🐛 Fixed the menu background disappearing after opening. ([#100](https://github.com/THEOplayer/android-ui/pull/100))
1517

16-
## v1.14.0 (2026-04-20)
18+
## [1.14.0] (2026-04-20)
1719

1820
* 🚀 Added support for THEOplayer 11.0. ([#98](https://github.com/THEOplayer/android-ui/pull/98))
1921
* 🚀 Updated to Jetpack Compose version 1.10.6 ([BOM](https://developer.android.com/jetpack/compose/bom) 2026.03.01).
2022

21-
## v1.13.4 (2026-04-07)
23+
## [1.13.4] (2026-04-07)
2224

2325
* 🐛 The language menu now prefers to show CEA-608/708 closed caption tracks with their localized language name (if available) instead of their language code (e.g. "en") or channel number (e.g. "CC1"). ([#84](https://github.com/THEOplayer/android-ui/pull/84), [#95](https://github.com/THEOplayer/android-ui/pull/95))
2426

25-
## v1.13.3 (2026-03-23)
27+
## [1.13.3] (2026-03-23)
2628

2729
* 🐛 Changed the minimum supported THEOplayer version to 7.6.0. ([#85](https://github.com/THEOplayer/android-ui/pull/85))
2830
* This was effectively already the minimum version as of Open Video UI for Android version 1.7.2, but it wasn't noticed until now.
2931
* Future versions will be properly tested with the minimum supported THEOplayer version to avoid similar compatibility issues.
3032
* 🐛 `Player.pictureInPicture` now also checks whether the `Activity` itself is in picture-in-picture mode, in case the activity has custom picture-in-picture logic (that does not use THEOplayer's `PiPManager` API). ([#89](https://github.com/THEOplayer/android-ui/pull/89/))
3133

32-
## v1.13.2 (2026-03-03)
34+
## [1.13.2] (2026-03-03)
3335

3436
* 🐛 Fixed `PictureInPictureButton` to only be shown when the backing `THEOplayerView` has a valid `PiPConfiguration`. ([#81](https://github.com/THEOplayer/android-ui/pull/81))
3537

36-
## v1.13.1 (2026-01-05)
38+
## [1.13.1] (2026-01-05)
3739

3840
* 🐛 Changed THEOplayer to be an `api` dependency in Gradle. ([#76](https://github.com/THEOplayer/android-ui/pull/76))
3941
* 🐛 The alpha value of the `UIController`'s background color is now correctly preserved. ([#78](https://github.com/THEOplayer/android-ui/issues/78), [#79](https://github.com/THEOplayer/android-ui/pull/79))
4042

41-
## v1.13.0 (2025-09-12)
43+
## [1.13.0] (2025-09-12)
4244

4345
* 💥 The `minSdk` is now API 23 (Android 6.0 "Marshmallow"), to align with THEOplayer 10.0. ([#74](https://github.com/THEOplayer/android-ui/pull/74))
4446
* 💥 Open Video UI for Android is now compiled using the Kotlin 2 compiler. Update your app to use Kotlin Gradle Plugin 2.0.0 or newer. ([#74](https://github.com/THEOplayer/android-ui/pull/74))
4547
* 💥 Updated to Jetpack Compose version 1.9.0 ([BOM](https://developer.android.com/jetpack/compose/bom) 2025.08.01).
4648
* 🚀 Added support for THEOplayer 10.0. ([#74](https://github.com/THEOplayer/android-ui/pull/74))
4749

48-
## v1.12.0 (2025-09-08)
50+
## [1.12.0] (2025-09-08)
4951

5052
* 🚀 Added `PictureInPictureButton`. ([#19](https://github.com/THEOplayer/android-ui/issues/19), [#70](https://github.com/THEOplayer/android-ui/pull/70))
5153
* 🚀 The default UI now shows a minimal set of controls while playing an ad. ([#71](https://github.com/THEOplayer/android-ui/pull/71))
5254
* 🚀 `UIController` no longer hides all controls while playing an ad. ([#71](https://github.com/THEOplayer/android-ui/pull/71))
5355

54-
## v1.11.1 (2025-08-01)
56+
## [1.11.1] (2025-08-01)
5557

5658
* 🐛 Fixed clicking on overlays from OptiView Ads not working. ([#68](https://github.com/THEOplayer/android-ui/pull/68))
5759

58-
## v1.11.0 (2025-04-29)
60+
## [1.11.0] (2025-04-29)
5961

6062
* 💥 Bumped `compileSdk` to API 35 (Android 15).
6163
* 🚀 Added localization support.
6264
* See `res/values/strings.xml` for the full list of translatable strings, which you can override in your app's `strings.xml`.
6365
* For more information, see [Localize your app on Android Developers](https://developer.android.com/guide/topics/resources/localization).
6466

65-
## v1.10.0 (2025-04-02)
67+
## [1.10.0] (2025-04-02)
6668

6769
* 🚀 Added support for THEOplayer 9.0. ([#61](https://github.com/THEOplayer/android-ui/pull/61))
6870

69-
## v1.9.4 (2024-12-18)
71+
## [1.9.4] (2024-12-18)
7072

7173
* 🐛 Revert to `compileSdk` 34. ([#56](https://github.com/THEOplayer/android-ui/pull/56/))
7274

73-
## v1.9.3 (2024-12-17)
75+
## [1.9.3] (2024-12-17)
7476

7577
* 💥 Updated to Jetpack Compose version 1.7.5 ([BOM](https://developer.android.com/jetpack/compose/bom) 2024.11.00).
7678
* 🐛 Fix `SeekBar` not working for livestreams with a large `player.seekable.start(0)`,
7779
such as MPEG-DASH streams that use Unix timestamps for their MPD timeline. ([#52](https://github.com/THEOplayer/android-ui/pull/52))
7880

79-
## v1.9.2 (2024-10-15)
81+
## [1.9.2] (2024-10-15)
8082

8183
* 🐛 Fix `Player.cast` not available before first source change.
8284

83-
## v1.9.1 (2024-10-01)
85+
## [1.9.1] (2024-10-01)
8486

8587
* 🐛 Fix `DurationDisplay` to show the time of the live point when playing a live or DVR stream.
8688
* 🐛 Fix `CurrentTimeDisplay` to show the time offset to the live point when playing a live or DVR stream with `showRemaining = true`.
8789
* 💅 Changed `DefaultUi` to hide the current time display when playing a live stream.
8890
* 💅 Changed `DefaultUi` to show the time offset to the live point when playing a DVR stream.
8991
* 💅 Changed `LanguageMenuButton` to automatically hide itself when there are no alternative audio or subtitle tracks to select.
9092

91-
## v1.9.0 (2024-09-10)
93+
## [1.9.0] (2024-09-10)
9294

9395
* 💥 Updated to Jetpack Compose version 1.7.0 ([BOM](https://developer.android.com/jetpack/compose/bom) 2024.09.00).
9496
* 💥 Changed `colors` parameter in `IconButton` and `LiveButton` to be an `IconButtonColors`.
9597
* 🚀 Added support for Android Lollipop (API 21), to align with the THEOplayer Android SDK.
9698
* 🚀 Added `rememberPlayer(THEOplayerView)` to create a `Player` wrapping an existing `THEOplayerView`.
9799

98-
## v1.8.0 (2024-09-06)
100+
## [1.8.0] (2024-09-06)
99101

100102
* 🚀 Added support for THEOplayer 8.0. ([#37](https://github.com/THEOplayer/android-ui/pull/37))
101103

102-
## v1.7.4 (2024-09-02)
104+
## [1.7.4] (2024-09-02)
103105

104106
* 🐛 Fixed a crash when playing a live stream on Chromecast.
105107

106-
## v1.7.3 (2024-09-02)
108+
## [1.7.3] (2024-09-02)
107109

108110
* 🐛 Fixed the Chromecast button never appearing. ([#34](https://github.com/THEOplayer/android-ui/pull/34))
109111
* 🐛 Fixed the seek bar being disabled while casting. ([#35](https://github.com/THEOplayer/android-ui/issues/35), [#36](https://github.com/THEOplayer/android-ui/pull/36))
110112
* 📝 Added a ["Setting up Chromecast" guide](./docs/guides/chromecast.md).
111113

112-
## v1.7.2 (2024-08-28)
114+
## [1.7.2] (2024-08-28)
113115

114116
* 🐛 Fixed ad clickthrough not working. ([#33](https://github.com/THEOplayer/android-ui/pull/33))
115117
* 🐛 Fixed UI not re-appearing after playing an ad. ([#33](https://github.com/THEOplayer/android-ui/pull/33))
116118
* 🐛 Fixed exiting fullscreen disabling [edge-to-edge display](https://developer.android.com/develop/ui/views/layout/edge-to-edge-manually). ([#32](https://github.com/THEOplayer/android-ui/pull/32))
117119

118-
## v1.7.1 (2024-08-20)
120+
## [1.7.1] (2024-08-20)
119121

120-
* 🐛 Disable system gestures on the `SeekBar` component. ([#30](https://github.com/THEOplayer/android-ui/pull/30))
122+
* 🐛 Disable system gestures on the `SeekBar` component. ([#30](https://github.com/THEOplayer/android-ui/pull/30))
121123

122-
## v1.7.0 (2024-08-12)
124+
## [1.7.0] (2024-08-12)
123125

124126
* 💥 Updated to Jetpack Compose version 1.6.8 ([BOM](https://developer.android.com/jetpack/compose/bom) 2024.06.00).
125127
* 🚀 Added basic support for advertisements. (Requires THEOplayer SDK version 7.10.0 or higher.)
126128

127-
## v1.6.0 (2024-04-16)
129+
## [1.6.0] (2024-04-16)
128130

129131
* 🚀 Added support for THEOplayer Android SDK version 7.
130132

131-
## v1.5.0 (2024-02-21)
133+
## [1.5.0] (2024-02-21)
132134

133135
* 💥 Updated to Jetpack Compose version 1.6.1 ([BOM](https://developer.android.com/jetpack/compose/bom) 2024.02.00).
134136
* 🐛 Fixed dragging the `SeekBar` when
135137
using [Compose Material 3 version 1.2.0](https://developer.android.com/jetpack/androidx/releases/compose-material3#1.2.0)
136138
or higher. ([#24](https://github.com/THEOplayer/android-ui/issues/24))
137139

138-
## v1.4.0 (2023-11-27)
140+
## [1.4.0] (2023-11-27)
139141

140142
* 💥 Updated to Jetpack Compose version 1.5.4 ([BOM](https://developer.android.com/jetpack/compose/bom) 2023.10.01).
141143
* 💅 Renamed project to "THEOplayer Open Video UI for Android".
142144

143-
## v1.3.4 (2023-10-17)
145+
## [1.3.4] (2023-10-17)
144146

145147
* 🚀 Allow THEOplayer Android SDK 6.
146148

147-
## v1.3.3 (2023-07-13)
149+
## [1.3.3] (2023-07-13)
148150

149151
* 💅 `UIController` now sizes itself to match the video's aspect ratio, except if this were to
150152
conflict with a different size constraint (such as `Modifier.fillMaxSize()`).
151153

152-
## v1.3.2 (2023-07-13)
154+
## [1.3.2] (2023-07-13)
153155

154156
* 🏠 Publish to THEOplayer's own Maven repository.
155157

156-
## v1.3.1 (2023-06-30)
158+
## [1.3.1] (2023-06-30)
157159

158160
* 🚀 Added `Player.source`, `.videoWidth` and `.videoHeight` properties.
159161
* 🚀 Added `Player.play()` and `.pause()` shortcut methods.
160162
* 🐛 Fixed player not following device rotation while fullscreen.
161163
* 💅 When autoplaying a new video, the UI now starts out as hidden.
162164

163-
## v1.3.0 (2023-06-29)
165+
## [1.3.0] (2023-06-29)
164166

165167
* 🚀 Added `THEOplayerTheme.playerAnimations` to control the animation settings of the various UI components.
166168
* 🐛 Fix consuming apps unable to install different version of the THEOplayer Android SDK.
167169

168-
## v1.2.0 (2023-06-28)
170+
## [1.2.0] (2023-06-28)
169171

170172
* 💥 Renamed `PlayerState` to `Player`.
171173
* 🚀 Added overloads to `DefaultUI` and `UIController` that accept a `Player`.
172174
This allows constructing a player instance in advance, and even moving it between custom UIs when recomposing.
173175
* 🚀 Added `UIControllerScope.player` as an non-null alternative to `Player.current`.
174176

175-
## v1.1.0 (2023-06-27)
177+
## [1.1.0] (2023-06-27)
176178

177179
* 💥 Update to THEOplayer Android SDK 5.
178180
To migrate, switch to `com.theoplayer.theoplayer-sdk-android:core` in your Gradle dependencies.
@@ -185,6 +187,41 @@
185187
```
186188
* 🚀 Added a `UIController` overload which accepts a `THEOplayerView` directly.
187189

188-
## v1.0.0 (2023-04-05)
190+
## [1.0.0] (2023-04-05)
189191

190192
* 🚀 Initial release.
193+
194+
[Unreleased]: https://github.com/THEOplayer/android-ui/compare/v1.14.1...HEAD
195+
[1.14.1]: https://github.com/THEOplayer/android-ui/compare/v1.14.0...v1.14.1
196+
[1.14.0]: https://github.com/THEOplayer/android-ui/compare/v1.13.4...v1.14.0
197+
[1.13.4]: https://github.com/THEOplayer/android-ui/compare/v1.13.3...v1.13.4
198+
[1.13.3]: https://github.com/THEOplayer/android-ui/compare/v1.13.2...v1.13.3
199+
[1.13.2]: https://github.com/THEOplayer/android-ui/compare/v1.13.1...v1.13.2
200+
[1.13.1]: https://github.com/THEOplayer/android-ui/compare/v1.13.0...v1.13.1
201+
[1.13.0]: https://github.com/THEOplayer/android-ui/compare/v1.12.0...v1.13.0
202+
[1.12.0]: https://github.com/THEOplayer/android-ui/compare/v1.11.1...v1.12.0
203+
[1.11.1]: https://github.com/THEOplayer/android-ui/compare/v1.11.0...v1.11.1
204+
[1.11.0]: https://github.com/THEOplayer/android-ui/compare/v1.10.0...v1.11.0
205+
[1.10.0]: https://github.com/THEOplayer/android-ui/compare/v1.9.4...v1.10.0
206+
[1.9.4]: https://github.com/THEOplayer/android-ui/compare/v1.9.3...v1.9.4
207+
[1.9.3]: https://github.com/THEOplayer/android-ui/compare/v1.9.2...v1.9.3
208+
[1.9.2]: https://github.com/THEOplayer/android-ui/compare/v1.9.1...v1.9.2
209+
[1.9.1]: https://github.com/THEOplayer/android-ui/compare/v1.9.0...v1.9.1
210+
[1.9.0]: https://github.com/THEOplayer/android-ui/compare/v1.8.0...v1.9.0
211+
[1.8.0]: https://github.com/THEOplayer/android-ui/compare/v1.7.4...v1.8.0
212+
[1.7.4]: https://github.com/THEOplayer/android-ui/compare/v1.7.3...v1.7.4
213+
[1.7.3]: https://github.com/THEOplayer/android-ui/compare/v1.7.2...v1.7.3
214+
[1.7.2]: https://github.com/THEOplayer/android-ui/compare/v1.7.1...v1.7.2
215+
[1.7.1]: https://github.com/THEOplayer/android-ui/compare/v1.7.0...v1.7.1
216+
[1.7.0]: https://github.com/THEOplayer/android-ui/compare/v1.6.0...v1.7.0
217+
[1.6.0]: https://github.com/THEOplayer/android-ui/compare/v1.5.0...v1.6.0
218+
[1.5.0]: https://github.com/THEOplayer/android-ui/compare/v1.4.0...v1.5.0
219+
[1.4.0]: https://github.com/THEOplayer/android-ui/compare/v1.3.4...v1.4.0
220+
[1.3.4]: https://github.com/THEOplayer/android-ui/compare/v1.3.3...v1.3.4
221+
[1.3.3]: https://github.com/THEOplayer/android-ui/compare/v1.3.2...v1.3.3
222+
[1.3.2]: https://github.com/THEOplayer/android-ui/compare/v1.3.1...v1.3.2
223+
[1.3.1]: https://github.com/THEOplayer/android-ui/compare/v1.3.0...v1.3.1
224+
[1.3.0]: https://github.com/THEOplayer/android-ui/compare/v1.2.0...v1.3.0
225+
[1.2.0]: https://github.com/THEOplayer/android-ui/compare/v1.1.0...v1.2.0
226+
[1.1.0]: https://github.com/THEOplayer/android-ui/compare/v1.0.0...v1.1.0
227+
[1.0.0]: https://github.com/THEOplayer/android-ui/commits/v1.0.0

0 commit comments

Comments
 (0)