fix(WeaselTSF): client dump caused by dereferencing nullptr during CE… #213
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release CI | |
| on: | |
| push: | |
| branches: | |
| - master | |
| tags: | |
| - '[0-9]+.*' | |
| workflow_dispatch: | |
| jobs: | |
| build-and-release: | |
| permissions: | |
| contents: write | |
| runs-on: windows-2022 | |
| env: | |
| boost_version: 1.84.0 | |
| BOOST_ROOT: ${{ github.workspace }}\deps\boost_1_84_0 | |
| steps: | |
| - name: Checkout last commit | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| fetch-depth: 0 | |
| - name: Fetch all tags | |
| if: github.ref == 'refs/heads/master' | |
| run: git fetch --tags | |
| - name: Configure build environment | |
| shell: bash | |
| run: | | |
| cp env.vs2022.bat env.bat | |
| # cache boost | |
| - name: Cache Boost | |
| id: cache-boost | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ${{ env.BOOST_ROOT }} | |
| key: ${{ runner.os }}-boost-${{ env.boost_version }} | |
| # install boost if not cached | |
| - name: Install Boost | |
| if: steps.cache-boost.outputs.cache-hit != 'true' | |
| shell: bash | |
| run: | | |
| ./install_boost.bat | |
| ./build.bat boost arm64 | |
| - uses: ilammy/msvc-dev-cmd@v1 | |
| with: | |
| sdk: 10.0.19041.0 | |
| # use upper stream released librime files if stable release | |
| - name: Get Rime files | |
| shell: pwsh | |
| run: | | |
| $ErrorActionPreference = 'Stop' | |
| .\get-rime.ps1 -use dev | |
| - name: Build data | |
| run: | | |
| .\build.bat data | |
| - name: Build Weasel Release | |
| id: build_weasel | |
| if: startsWith(github.ref, 'refs/tags/') | |
| env: | |
| RELEASE_BUILD: 1 | |
| shell: cmd | |
| run: | | |
| set SDKVER=10.0.19041.0 | |
| .\build.bat arm64 installer | |
| - name: Build Weasel Nightly | |
| id: build_weasel_nightly | |
| if: github.ref == 'refs/heads/master' | |
| shell: cmd | |
| run: | | |
| set SDKVER=10.0.19041.0 | |
| .\build.bat arm64 installer | |
| - name: Compress Debug Symbols | |
| shell: pwsh | |
| run: | | |
| output\7z.exe a -t7z "./output/archives/debug_symbols.7z" "output/*.pdb" -r | |
| - name: Extract changelog | |
| shell: pwsh | |
| run: | | |
| .\extract_changelog.ps1 | |
| if: startsWith(github.ref, 'refs/tags/') | |
| # create nightly release | |
| - name: Create Nightly release | |
| if: ${{ github.repository == 'rime/weasel' && github.ref == 'refs/heads/master' }} | |
| uses: 'marvinpinto/action-automatic-releases@latest' | |
| with: | |
| repo_token: ${{ secrets.GITHUB_TOKEN }} | |
| automatic_release_tag: latest | |
| prerelease: true | |
| title: "Nightly Build" | |
| files: | | |
| ./output/archives/weasel*.exe | |
| ./output/archives/debug_symbols.7z | |
| # create stable release | |
| - name: Release | |
| uses: softprops/action-gh-release@v2 | |
| if: ${{ github.repository == 'rime/weasel' && startsWith(github.ref, 'refs/tags/') }} | |
| with: | |
| draft: true | |
| files: | | |
| ./output/archives/weasel*.exe | |
| ./output/archives/debug_symbols.7z | |
| body_path: ${{ github.workspace }}/RELEASE_CHANGELOG.md |