bitmovin-player-ui 3.52.1 → 3.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,29 @@
1
+ const semver = require('semver');
2
+
3
+ function getPlayerUiVersion(versionInput) {
4
+ const playerUiVersion = semver.valid(versionInput);
5
+ if (!playerUiVersion) {
6
+ console.error(`${versionInput} is not a valid semver`);
7
+ process.exit(1);
8
+ }
9
+
10
+ return {
11
+ major: semver.major(playerUiVersion),
12
+ minor: semver.minor(playerUiVersion),
13
+ patch: semver.patch(playerUiVersion),
14
+ prereleaseLabels: semver.prerelease(playerUiVersion),
15
+ full: playerUiVersion,
16
+ };
17
+ }
18
+
19
+ function defineReleaseVersion({ core }, targetReleaseLevel, givenVersion) {
20
+ core.info(`Defining new release version for level ${targetReleaseLevel} and version ${givenVersion}`);
21
+
22
+ const newVersion = semver.inc(givenVersion, targetReleaseLevel);
23
+
24
+ const parsedPlayerVersion = getPlayerUiVersion(newVersion);
25
+ core.info(`Using release version ${parsedPlayerVersion.full}`);
26
+ return parsedPlayerVersion;
27
+ }
28
+
29
+ module.exports.defineReleaseVersion = defineReleaseVersion;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Updates the changelog by replacing the changelog header with the correct version
3
+ *
4
+ * @param {string} changelogString the content of the changelog file
5
+ * @param {string} version the player version to be released
6
+ * @param {string} releaseDate the release date to be written to the changelog
7
+ */
8
+ function updateChangeLog(changelogString, version, releaseDate) {
9
+ const optionalBetaOrRc = '(-rc.d+)?(-(b|beta).d+)?';
10
+ const changelogVersionRegExp = new RegExp(
11
+ `\\[(development|develop|unreleased|${version})${optionalBetaOrRc}.*`,
12
+ 'gi',
13
+ );
14
+ return changelogString.replace(changelogVersionRegExp, `[${version}] - ${releaseDate}`);
15
+ }
16
+
17
+ module.exports.updateChangeLog = updateChangeLog;
@@ -0,0 +1,70 @@
1
+ name: Trigger release on merge
2
+ run-name: Starting release for ${{ github.actor }} PR merge
3
+ on:
4
+ pull_request:
5
+ types:
6
+ - closed
7
+ branches:
8
+ - develop
9
+
10
+ jobs:
11
+ trigger-ui-release:
12
+ if: github.event.pull_request.merged == true
13
+ runs-on: ubuntu-latest
14
+ steps:
15
+ - name: Checkout
16
+ uses: actions/checkout@v2
17
+ with:
18
+ token: ${{ secrets.RELEASE_DEPLOY_KEY }}
19
+ ref: develop
20
+
21
+ - name: Install dependencies
22
+ run: npm ci
23
+
24
+ - name: Read package.json version
25
+ uses: actions/github-script@v6
26
+ id: define-package-json-version
27
+ with:
28
+ script: |
29
+ const { version } = require('./package.json')
30
+ core.info(`performing a minor release for existing version ${version}`)
31
+ core.setOutput('packageJsonVersion', version)
32
+
33
+ - name: Define release version
34
+ uses: actions/github-script@v6
35
+ id: define-release-version
36
+ with:
37
+ script: |
38
+ const { defineReleaseVersion } = require('./.github/scripts/defineVersion.js')
39
+ return defineReleaseVersion({core}, 'minor', "${{ steps.define-package-json-version.outputs.packageJsonVersion }}" )
40
+
41
+ - name: Bump package.json version
42
+ run: |
43
+ git config --global user.name 'Automated Release'
44
+ git config --global user.email 'release-automation@bitmovin.com'
45
+ npm version "${{ fromJson(steps.define-release-version.outputs.result).full }}"
46
+
47
+ - name: Update Changelog
48
+ uses: actions/github-script@v6
49
+ with:
50
+ script: |
51
+ const fs = require('fs');
52
+ const { updateChangeLog } = require('./.github/scripts/updateChangelog.js')
53
+
54
+ const stableVersion = '${{ fromJson(steps.define-release-version.outputs.result).full }}'.split('-')[0]
55
+ const releaseDate = new Date().toISOString().split('T')[0]
56
+
57
+ const data = fs.readFileSync('./CHANGELOG.md',{encoding:'utf8', flag:'r'});
58
+
59
+ core.info(`Updating ${stableVersion} with date ${releaseDate} in Changelog`);
60
+
61
+ const changelogFileContents = updateChangeLog(data, stableVersion, releaseDate);
62
+
63
+ fs.writeFileSync('./CHANGELOG.md', changelogFileContents, 'utf-8');
64
+
65
+ - name: Push changes
66
+ run: |
67
+ git add .
68
+ git commit -m "Add release date to changelog"
69
+ git push origin develop
70
+ git push origin --tags
package/CHANGELOG.md CHANGED
@@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/).
6
6
 
7
+ ## [develop]
8
+
9
+ ### Added
10
+ - Automate release on every PR merge to develop
11
+
12
+ ## [3.52.2] - 2023-11-23
13
+
14
+ ### Fixed
15
+ - Potential name clashing in CSS animations due to missing `bmpui` prefix
16
+
7
17
  ## [3.52.1] - 2023-11-13
8
18
 
9
19
  ### Fixed
@@ -882,6 +892,7 @@ Version 2.0 of the UI framework is built for player 7.1. If absolutely necessary
882
892
  ## 1.0.0 (2017-02-03)
883
893
  - First release
884
894
 
895
+ [3.52.2]: https://github.com/bitmovin/bitmovin-player-ui/compare/v3.52.1...v3.52.2
885
896
  [3.52.1]: https://github.com/bitmovin/bitmovin-player-ui/compare/v3.52.0...v3.52.1
886
897
  [3.52.0]: https://github.com/bitmovin/bitmovin-player-ui/compare/v3.51.0...v3.52.0
887
898
  [3.51.0]: https://github.com/bitmovin/bitmovin-player-ui/compare/v3.50.0...v3.51.0
Binary file