Skip to content

Commit

Permalink
COM-12663-Create a Changelog file (#230)
Browse files Browse the repository at this point in the history
COM-12663:
- add new CHANGELOG.md.
- adapt release.yml to set the new CHANGELOG.md information in each release (release notes).
  • Loading branch information
rsanchez87 authored Jan 9, 2025
1 parent fb02c82 commit 13e220b
Show file tree
Hide file tree
Showing 2 changed files with 95 additions and 15 deletions.
45 changes: 30 additions & 15 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,6 @@ on:
version:
description: 'Release version (e.g., 0.1.0)'
required: true
notes:
description: 'Release notes (e.g., changelog)'
required: false
default: 'Changelog: \n- Added feature 1\n- Added feature 2\n- Fixed issue 2'
push:
tags:
- 'v*.*.*'
Expand Down Expand Up @@ -40,6 +36,7 @@ jobs:
gstreamer1.0-plugins-bad \
ffmpeg \
vpx-tools \
aom-tools \
wget \
unzip
- name: Check
Expand Down Expand Up @@ -77,6 +74,7 @@ jobs:
gstreamer1.0-plugins-bad \
ffmpeg \
vpx-tools \
aom-tools \
wget \
unzip
- name: Check
Expand Down Expand Up @@ -121,24 +119,41 @@ jobs:

steps:
- uses: actions/checkout@v4
- name: Determine version
id: get_version
run: |
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
VERSION=${{ github.event.inputs.version }}
else
VERSION=${{ github.ref_name }}
VERSION=${VERSION#v}
fi
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Extract release notes from CHANGELOG.md
id: extract_notes
run: |
VERSION=${{ env.VERSION }}
if ! grep -q "## \\[$VERSION\\]" CHANGELOG.md; then
echo "Release notes for version $VERSION not found in CHANGELOG.md"
exit 1
fi
NOTES=$(awk "/## \\[$VERSION\\]/ {flag=1; next} /^## \\[/ {flag=0} flag" CHANGELOG.md | sed '/^$/d')
echo "NOTES<<EOF" >> $GITHUB_ENV
echo "$NOTES" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Create Git Tag
if: ${{ github.event_name == 'workflow_dispatch' }}
run: |
git config user.name "github-actions"
git config user.email "[email protected]"
git tag v${{ github.event.inputs.version }}
git push origin v${{ github.event.inputs.version }}
- name: Create temporary notes file
run: |
echo -e "${{ github.event.inputs.notes }}" > notes.txt
git tag v${{ env.VERSION }}
git push origin v${{ env.VERSION }}
- name: Create GitHub Release
run: |
VERSION=${{ github.event.inputs.version }}
git archive --format=zip HEAD
VERSION=${{ env.VERSION }}
gh release create v$VERSION \
--title "Release v$VERSION" \
--notes "$(cat notes.txt)"
--notes "$NOTES"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Clean up notes file
run: rm notes.txt
continue-on-error: true
65 changes: 65 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.2.0] - Unreleased
### Added
- Generate a test suite for H265 3D-HEVC functionality set.
- Generate a test suite for H265 SHVC functionality set.
- Create a test suite for H264 SVC group.
- Create a test suite for H264 professional profiles.
- Create a test suite for AV1 based on the Argon Streams.
- Create a test suite for MPEG-4 AAC adif files.
- Create a test suite for MPEG-4 AAC mp4 files.
- Add H264 FRExt test suite.
- Add H264 MVC test suite.
- Add MPEG-2 AAC adif test suite.
- Add MPEG4-AAC-ADTS test suite.
- Add basic AV1 tests for Makefile check target.
- Adapt AV1 AOM decoder so that it works correctly with some Argon test vectors.
- Add VVCSoftware_VTM H.266/VVC reference decoder.
- Add md5 checksum read/write feature to H266 test suite generator script.
- Create a test suite generator script for AAC.
- Create CI workflow for automated releases.

### Changed
- Split test suites for H265 and H266.
- Adapt AAC test suite generator to omit md5 checksums of wav reference.
- Rename some AAC and H264 test suites to be more precise.
- Replace pylint and black with ruff linter and code formatter.
- Update README.md.
- Update REPORT.md.

### Fixed
- Fix bug #218: Argon AV1 test resource path don't match the downloaded resources path.
- Issue in JSON generation scripts (Some test suites are badly generated).

## [0.1.0] - 2022-12-20
### Added
- Add the H.264 reference decoder.
- Add libvpx-VP8 reference decoder.
- Add VP9 reference decoder.
- Add AAC reference decoder.
- Add AV1 reference decoder.
- Add VVdeC reference decoder.
- Create a test suite for H264 AVC-V1.
- Create a test suite for H264 RExt.
- Create a test suite for H265 HEVC_V1.
- Create a test suite for H265 MV-HEVC.
- Create a test suite for H265 SCC.
- Create a test suite for AV1 functionality set.
- Create a test suite for AV1 CHROMIUM-8bit.
- Create a test suite for AV1 CHROMIUM-10bit.
- Create a test suite for VP8-TEST-VECTORS.
- Create a test suite for VP9-TEST-VECTORS.
- Create a test suite for VP9-TEST-VECTORS-HIGH.
- Create a test suite for MPEG-2 AAC.
- Create a test suite for H.266 (VTT).
- Create README.md.
- Create REPORT.md.

## Notes
- For detailed usage and fluster modes, refer to the [README.md](README.md).

0 comments on commit 13e220b

Please sign in to comment.