mirror of https://github.com/zachjs/sv2v.git
prepare for the next release
- add release.sh script to automate most of the process - minor revisions to the unreleased changelog - migrate away from deprecated release asset action
This commit is contained in:
parent
4dc672bbfa
commit
7cf4944595
|
|
@ -90,6 +90,8 @@ jobs:
|
||||||
make test
|
make test
|
||||||
|
|
||||||
release:
|
release:
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
|
|
@ -107,11 +109,7 @@ jobs:
|
||||||
- name: Create ZIP
|
- name: Create ZIP
|
||||||
run: zip -r sv2v-${{ matrix.name }} ./sv2v-${{ matrix.name }}
|
run: zip -r sv2v-${{ matrix.name }} ./sv2v-${{ matrix.name }}
|
||||||
- name: Upload Release Asset
|
- name: Upload Release Asset
|
||||||
uses: actions/upload-release-asset@v1.0.2
|
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GH_TOKEN: ${{ github.token }}
|
||||||
with:
|
GH_REPO: ${{ github.repository }}
|
||||||
upload_url: ${{ github.event.release.upload_url }}
|
run: gh release upload ${{ github.event.release.tag_name }} sv2v-${{ matrix.name }}.zip
|
||||||
asset_path: ./sv2v-${{ matrix.name }}.zip
|
|
||||||
asset_name: sv2v-${{ matrix.name }}.zip
|
|
||||||
asset_content_type: application/zip
|
|
||||||
|
|
|
||||||
|
|
@ -10,25 +10,25 @@
|
||||||
* `unique`, `unique0`, and `priority` case statements now produce corresponding
|
* `unique`, `unique0`, and `priority` case statements now produce corresponding
|
||||||
`parallel_case` and `full_case` statement attributes
|
`parallel_case` and `full_case` statement attributes
|
||||||
* Added support for attributes in unary, binary, and ternary expressions
|
* Added support for attributes in unary, binary, and ternary expressions
|
||||||
* Added support for shadowing interface names with local typenames
|
|
||||||
* Added support for streaming concatenations within ternary expressions
|
* Added support for streaming concatenations within ternary expressions
|
||||||
|
* Added support for shadowing interface names with local typenames
|
||||||
* Added support for passing through `wait` statements
|
* Added support for passing through `wait` statements
|
||||||
|
|
||||||
### Bug Fixes
|
### Bug Fixes
|
||||||
|
|
||||||
* Fixed an issue that prevented parsing tasks and functions with `inout` ports
|
|
||||||
* Fixed signed unsized literals with a leading 1 bit (e.g., `'sb1`, `'sh8f`)
|
* Fixed signed unsized literals with a leading 1 bit (e.g., `'sb1`, `'sh8f`)
|
||||||
incorrectly sign-extending in size and type casts
|
incorrectly sign-extending in size and type casts
|
||||||
* Fixed conflicting genvar names when inlining interfaces and modules that use
|
* Fixed conflicting genvar names when inlining interfaces and modules that use
|
||||||
them; all genvars are now given a design-wide unique name
|
them; all genvars are now given a design-wide unique name
|
||||||
* Fixed byte order of strings in size casts
|
|
||||||
* Fixed unconverted structs within explicit type casts
|
* Fixed unconverted structs within explicit type casts
|
||||||
|
* Fixed byte order of strings in size casts
|
||||||
* Fixed unconverted multidimensional struct fields within dimension queries
|
* Fixed unconverted multidimensional struct fields within dimension queries
|
||||||
* Fixed non-typenames (e.g., from packages or subsequent declarations)
|
* Fixed non-typenames (e.g., from packages or subsequent declarations)
|
||||||
improperly shadowing the names of `struct` pattern fields
|
improperly shadowing the names of `struct` pattern fields
|
||||||
* Fixed shadowing of interface array indices passed to port connections
|
* Fixed shadowing of interface array indices passed to port connections
|
||||||
* Fixed failure to resolve typenames suffixed with dimensions in contexts
|
* Fixed failure to resolve typenames suffixed with dimensions in contexts
|
||||||
permitting both types and expressions, e.g., `$bits(T[W-1:0])`
|
permitting both types and expressions, e.g., `$bits(T[W-1:0])`
|
||||||
|
* Fixed an issue that prevented parsing tasks and functions with `inout` ports
|
||||||
* Fixed errant constant folding of shadowed non-trivial localparams
|
* Fixed errant constant folding of shadowed non-trivial localparams
|
||||||
* Fixed conversion of function calls with no arguments passed to other functions
|
* Fixed conversion of function calls with no arguments passed to other functions
|
||||||
* Fixed certain non-ANSI style port declarations being incorrectly reported as
|
* Fixed certain non-ANSI style port declarations being incorrectly reported as
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -x
|
||||||
|
|
||||||
|
version=$1
|
||||||
|
|
||||||
|
# ensure there are no uncommitted changes
|
||||||
|
[ "" == "$(git status --porcelain)" ]
|
||||||
|
|
||||||
|
# update the version in sv2v.cabal
|
||||||
|
sed -i.bak -e "s/^version.*/version: $version/" sv2v.cabal
|
||||||
|
diff sv2v.cabal{,.bak} && echo not changed && exit 1 || true
|
||||||
|
rm sv2v.cabal.bak
|
||||||
|
|
||||||
|
# update the version in CHANGELOG.md
|
||||||
|
sed -i.bak -e "s/^## Unreleased$/## v$version/" CHANGELOG.md
|
||||||
|
diff CHANGELOG.md{,.bak} && echo not changed && exit 1 || true
|
||||||
|
rm CHANGELOG.md.bak
|
||||||
|
|
||||||
|
# create the release commit and tag
|
||||||
|
git commit -a -m "release v$version"
|
||||||
|
git tag -a v$version HEAD -m "Release v$version"
|
||||||
|
|
||||||
|
# build and test
|
||||||
|
make
|
||||||
|
make test
|
||||||
|
[ $version == `bin/sv2v --numeric-version` ]
|
||||||
|
|
||||||
|
# push the release commit and tag
|
||||||
|
git push
|
||||||
|
git push origin v$version
|
||||||
|
|
||||||
|
# create the GitHub release
|
||||||
|
notes=`pandoc --from markdown --to markdown --wrap none CHANGELOG.md | \
|
||||||
|
sed '3,/^## /!d' | \
|
||||||
|
tac | tail -n +3 | tac`
|
||||||
|
gh release create v$version --title v$version --notes "$notes"
|
||||||
|
|
||||||
|
# create the Hackage release candidate
|
||||||
|
stack upload --test-tarball --candidate .
|
||||||
Loading…
Reference in New Issue