Commit 7cf49445 by Zachary Snow

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
parent 4dc672bb
......@@ -90,6 +90,8 @@ jobs:
make test
release:
permissions:
contents: write
runs-on: ubuntu-22.04
strategy:
matrix:
......@@ -107,11 +109,7 @@ jobs:
- name: Create ZIP
run: zip -r sv2v-${{ matrix.name }} ./sv2v-${{ matrix.name }}
- name: Upload Release Asset
uses: actions/upload-release-asset@v1.0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./sv2v-${{ matrix.name }}.zip
asset_name: sv2v-${{ matrix.name }}.zip
asset_content_type: application/zip
GH_TOKEN: ${{ github.token }}
GH_REPO: ${{ github.repository }}
run: gh release upload ${{ github.event.release.tag_name }} sv2v-${{ matrix.name }}.zip
......@@ -10,25 +10,25 @@
* `unique`, `unique0`, and `priority` case statements now produce corresponding
`parallel_case` and `full_case` statement attributes
* 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 shadowing interface names with local typenames
* Added support for passing through `wait` statements
### 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`)
incorrectly sign-extending in size and type casts
* Fixed conflicting genvar names when inlining interfaces and modules that use
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 byte order of strings in size casts
* Fixed unconverted multidimensional struct fields within dimension queries
* Fixed non-typenames (e.g., from packages or subsequent declarations)
improperly shadowing the names of `struct` pattern fields
* Fixed shadowing of interface array indices passed to port connections
* Fixed failure to resolve typenames suffixed with dimensions in contexts
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 conversion of function calls with no arguments passed to other functions
* Fixed certain non-ANSI style port declarations being incorrectly reported as
......
#!/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 .
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment