YS 0.2.7 and refactorings #166
Workflow file for this run
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
| # DO NOT EDIT - GENERATED FROM .github/workflows-in/api.ys | |
| name: api | |
| defaults: | |
| run: | |
| shell: bash -e -x {0} | |
| 'on': | |
| workflow_dispatch: null | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| branches: | |
| - '*' | |
| env: | |
| PROJ_PKG_NAME: rapidyaml- | |
| PROJ_PFX_TARGET: ryml- | |
| PROJ_PFX_CMAKE: RYML_ | |
| CMAKE_FLAGS: -DRYML_TEST_SUITE=ON | |
| NUM_JOBS_BUILD: null | |
| jobs: | |
| pybare: | |
| if: always() | |
| continue-on-error: false | |
| name: pybare/${{matrix.config.pythonv}}/${{matrix.config.os}} | |
| runs-on: ${{matrix.config.os}} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| config: | |
| - pythonv: '3.13' | |
| os: ubuntu-latest | |
| - pythonv: '3.13' | |
| os: macos-13 | |
| steps: | |
| - name: checkout (action) | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| fetch-depth: 0 | |
| - name: install python ${{matrix.config.pythonv}} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{matrix.config.pythonv}} | |
| - name: deps | |
| run: | | |
| if [[ "${{matrix.config.os}}" == macos* ]] ; then | |
| brew install swig | |
| elif [[ "${{matrix.config.os}}" == windows* ]] ; then | |
| choco install swig | |
| fi | |
| pip install build deprecation pytest | |
| pip install -r requirements.txt | |
| - name: configure | |
| run: | | |
| cmake -B build/py \ | |
| -D CMAKE_BUILD_TYPE=Release \ | |
| -D BUILD_SHARED_LIBS=ON \ | |
| -D RYML_DEFAULT_CALLBACK_USES_EXCEPTIONS=ON \ | |
| -D RYML_BUILD_API=ON \ | |
| -D RYML_API_TESTS=ON \ | |
| -D RYML_BUILD_TESTS=ON | |
| - name: build | |
| run: | | |
| cmake --build build/py -j -v --config Release --target ryml-api-python3 | |
| cp -fv api/python/ryml/__init__.py build/py/api/python3/. | |
| ls -lFpAR build/py/api/python3/ | |
| - name: test with ctest | |
| run: | | |
| export PYTHONPATH=`pwd`/build/py/api/python3:$PYTHONPATH | |
| cmake --build build/py -j -v --config Release --target ryml-api-test-python3 | |
| - name: test with pytest | |
| run: | | |
| export PYTHONPATH=`pwd`/build/py/api/python3:$PYTHONPATH | |
| python -m pytest -vvv api/python/tests | |
| pywheel: | |
| if: always() | |
| continue-on-error: false | |
| name: pywheel/${{matrix.config.pythonv}}/${{matrix.config.os}} | |
| runs-on: ${{matrix.config.os}} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| config: | |
| - pythonv: '3.13' | |
| os: ubuntu-latest | |
| - pythonv: '3.13' | |
| os: macos-13 | |
| env: | |
| CMAKE_FLAGS: -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILES=ON | |
| steps: | |
| - name: checkout (action) | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| fetch-depth: 0 | |
| - name: install python ${{matrix.config.pythonv}} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{matrix.config.pythonv}} | |
| - name: deps | |
| run: | | |
| if [[ "${{matrix.config.os}}" == macos* ]] ; then | |
| brew install swig | |
| elif [[ "${{matrix.config.os}}" == windows* ]] ; then | |
| choco install swig | |
| fi | |
| pip install build deprecation pytest | |
| pip install -r requirements.txt | |
| - name: '------------------- using setup.py' | |
| run: | | |
| rm -rf build/ dist/ || echo "no files found" | |
| pip uninstall -y -v rapidyaml || echo "was not installed" | |
| - name: create wheel with python setup.py bdist_wheel -v | |
| run: | | |
| python setup.py bdist_wheel -v | |
| - name: install wheel | |
| run: pip install dist/*.whl | |
| - name: test with pytest | |
| run: python -m pytest -vvv api/python/tests | |
| - name: '------------------- using pip' | |
| run: | | |
| rm -rf build/ dist/ || echo "no files found" | |
| pip uninstall -y -v rapidyaml || echo "was not installed" | |
| - name: create wheel with pip wheel -w dist/ . | |
| run: | | |
| pip wheel -w dist/ . | |
| - name: install wheel | |
| run: pip install dist/*.whl | |
| - name: test with pytest | |
| run: python -m pytest -vvv api/python/tests | |
| - name: '------------------- using pypa/build' | |
| run: | | |
| rm -rf build/ dist/ || echo "no files found" | |
| pip uninstall -y -v rapidyaml || echo "was not installed" | |
| - name: create wheel with python -m build --wheel | |
| run: | | |
| python -m build --wheel | |
| - name: install wheel | |
| run: pip install dist/*.whl | |
| - name: test with pytest | |
| run: python -m pytest -vvv api/python/tests | |
| pywheelwin: | |
| if: always() | |
| continue-on-error: false | |
| name: pywheel/${{matrix.config.pythonv}}/${{matrix.config.os}} | |
| runs-on: ${{matrix.config.os}} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| config: | |
| - pythonv: '3.13' | |
| os: windows-latest | |
| vsenvarch: x64 | |
| env: | |
| CMAKE_FLAGS: -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILES=ON | |
| steps: | |
| - name: checkout (action) | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| fetch-depth: 0 | |
| - name: install python ${{matrix.config.pythonv}} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{matrix.config.pythonv}} | |
| - name: deps | |
| run: | | |
| if [[ "${{matrix.config.os}}" == macos* ]] ; then | |
| brew install swig | |
| elif [[ "${{matrix.config.os}}" == windows* ]] ; then | |
| choco install swig | |
| fi | |
| pip install build deprecation pytest | |
| pip install -r requirements.txt | |
| - name: setup env (Visual Studio) | |
| uses: TheMrMilchmann/setup-msvc-dev@v3 | |
| with: | |
| arch: ${{matrix.config.vsenvarch}} | |
| - name: '------------------- using setup.py' | |
| run: | | |
| rm -rf build/ dist/ || echo "no files found" | |
| pip uninstall -y -v rapidyaml || echo "was not installed" | |
| - name: create wheel with python setup.py bdist_wheel -v | |
| run: | | |
| python setup.py bdist_wheel -v | |
| - name: install wheel | |
| run: pip install dist/*.whl | |
| - name: test with pytest | |
| run: python -m pytest -vvv api/python/tests | |
| - name: '------------------- using pip' | |
| run: | | |
| rm -rf build/ dist/ || echo "no files found" | |
| pip uninstall -y -v rapidyaml || echo "was not installed" | |
| - name: create wheel with pip wheel -w dist/ . | |
| run: | | |
| pip wheel -w dist/ . | |
| - name: install wheel | |
| run: pip install dist/*.whl | |
| - name: test with pytest | |
| run: python -m pytest -vvv api/python/tests | |
| - name: '------------------- using pypa/build' | |
| run: | | |
| rm -rf build/ dist/ || echo "no files found" | |
| pip uninstall -y -v rapidyaml || echo "was not installed" | |
| - name: create wheel with python -m build --wheel | |
| run: | | |
| python -m build --wheel | |
| - name: install wheel | |
| run: pip install dist/*.whl | |
| - name: test with pytest | |
| run: python -m pytest -vvv api/python/tests |