Skip to content

Add noexcept clauses #1621

Add noexcept clauses

Add noexcept clauses #1621

Workflow file for this run

name: Windows
on:
push:
branches: [ master, '*-ci' ]
pull_request:
branches: [ master, '*-ci' ]
workflow_dispatch:
jobs:
zserio:
uses: "./.github/workflows/build_windows_zserio.yml"
cpp:
needs: [zserio]
uses: "./.github/workflows/build_windows_cpp.yml"
java:
needs: [zserio]
uses: "./.github/workflows/build_windows_java.yml"
python:
needs: [zserio]
uses: "./.github/workflows/build_windows_python.yml"
doc:
needs: [zserio]
uses: "./.github/workflows/build_windows_doc.yml"
xml:
needs: [zserio]
uses: "./.github/workflows/build_windows_xml.yml"
release:
needs: [cpp, java, python, doc, xml]
runs-on: "windows-2022"
steps:
- name: Install dependencies
shell: bash
run: |
choco install zip --version=3.0.0.20251001
- name: "Download Zserio release artifacts"
uses: actions/download-artifact@v4
with:
name: zserio-bin-java8
path: zserio-bin-java8
- name: "Download Java runtime release artifacts"
uses: actions/download-artifact@v4
with:
name: zserio-runtime-java8
path: zserio-runtime-java8
- name: "Download C++ runtime release artifacts"
uses: actions/download-artifact@v4
with:
name: zserio-runtime-cpp
path: zserio-runtime-cpp
- name: "Download Python runtime release artifacts"
uses: actions/download-artifact@v4
with:
name: zserio-runtime-python
path: zserio-runtime-python
- name: "Get Zserio version"
shell: bash
run: |
RELEASE_DIR=$(ls -1 zserio-bin-java8 | head -n 1)
ZSERIO_VERSION=${RELEASE_DIR#release-}
echo "ZSERIO_VERSION=${ZSERIO_VERSION}" >> ${GITHUB_ENV}
- name: "Compose final release"
shell: bash
run: |
RELEASE_DIR=release-${ZSERIO_VERSION}
mkdir ${RELEASE_DIR}
# zserio compiler with all extensions
cp zserio-bin-java8/release-*/zserio-*-bin.zip ${RELEASE_DIR}/.
# prepare all runtime libraries
mkdir runtime_libs
# add zserio java runtime library
unzip -q zserio-runtime-java8/release-*/zserio-*-runtime-libs.zip -d zserio-runtime-java8
cp -r zserio-runtime-java8/runtime_libs/java runtime_libs/.
# add zserio cpp runtime library
unzip -q zserio-runtime-cpp/release-*/zserio-*-runtime-libs.zip -d zserio-runtime-cpp
cp -r zserio-runtime-cpp/runtime_libs/cpp runtime_libs/.
# add zserio python runtime library
unzip -q zserio-runtime-python/release-*/zserio-*-runtime-libs.zip -d zserio-runtime-python
cp -r zserio-runtime-python/runtime_libs/python runtime_libs/.
# zip runtime libraries
zip -rq ${RELEASE_DIR}/zserio-${ZSERIO_VERSION}-runtime-libs.zip "runtime_libs"
- name: "Archive release artifacts"
uses: actions/upload-artifact@v4
with:
name: windows-release-${{env.ZSERIO_VERSION}}
path: release-${{env.ZSERIO_VERSION}}
- name: "Checkout scripts"
uses: actions/checkout@v4
with:
path: zserio
- name: "Compose dev release"
shell: bash
run: |
DEV_DIR=dev-${ZSERIO_VERSION}
mkdir ${DEV_DIR}
mkdir scripts
cp -r zserio/scripts/. scripts
mkdir cmake
cp -r zserio/cmake/. cmake
mkdir -p compiler/core/src/zserio/tools
cp zserio/compiler/core/src/zserio/tools/ZserioVersion.java compiler/core/src/zserio/tools
mkdir -p compiler/extensions/cpp/runtime
cp zserio/compiler/extensions/cpp/runtime/ClangTidyConfig.txt compiler/extensions/cpp/runtime
mkdir -p test/extensions
cp zserio/test/extensions/pylintrc.txt test/extensions
cp zserio/test/extensions/mypy.ini test/extensions
mkdir -p 3rdparty/cpp/sqlite
cp -r zserio/3rdparty/cpp/sqlite/. 3rdparty/cpp/sqlite
zip -rq ${DEV_DIR}/zserio-${ZSERIO_VERSION}-scripts.zip "scripts" "cmake" "compiler" "test" "3rdparty"
- name: "Archive developer artifact"
id: upload-dev-release
uses: actions/upload-artifact@v4
with:
name: windows-dev-${{env.ZSERIO_VERSION}}
path: dev-${{env.ZSERIO_VERSION}}