FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

[pre-commit.ci] pre-commit autoupdate · xmlsec/python-xmlsec@cc3644a · GitHub

[pre-commit.ci] pre-commit autoupdate #915

[pre-commit.ci] pre-commit autoupdate

[pre-commit.ci] pre-commit autoupdate #915

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
name: macOS
on: [push, pull_request]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref_name != 'master' }}
jobs:
cache_libs:
uses: ./.github/workflows/cache_libs.yml
secrets: inherit
macosx:
needs: cache_libs
runs-on: macos-latest
env:
LIBICONV_VERSION: ${{ needs.cache_libs.outputs.LIBICONV_VERSION }}
LIBXML2_VERSION: ${{ needs.cache_libs.outputs.LIBXML2_VERSION }}
LIBXSLT_VERSION: ${{ needs.cache_libs.outputs.LIBXSLT_VERSION }}
OPENSSL_VERSION: ${{ needs.cache_libs.outputs.OPENSSL_VERSION }}
XMLSEC1_VERSION: ${{ needs.cache_libs.outputs.XMLSEC1_VERSION }}
ZLIB_VERSION: ${{ needs.cache_libs.outputs.ZLIB_VERSION }}
strategy:
matrix:
python: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
static_deps: ["static", ""]
steps:
- uses: actions/checkout@v5.0.0
- name: Cache [libs]
id: cache-libs
uses: actions/cache/restore@v4.3.0
with:
path: |
libs/*.xz
libs/*.gz
libs/*.zip
key: >-
libs-${{ runner.os }}-${{ runner.arch }}-${{ env.LIBICONV_VERSION }}-${{ env.LIBXML2_VERSION }}-${{ env.LIBXSLT_VERSION }}-${{ env.OPENSSL_VERSION }}-${{ env.XMLSEC1_VERSION }}-${{ env.ZLIB_VERSION }}
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
- name: Install build dependencies
run: |
pip install --upgrade pip setuptools wheel build
brew install libxml2 libxmlsec1 pkg-config
- name: Build macosx_x86_64 wheel
env:
CC: clang
CFLAGS: "-fprofile-instr-generate -fcoverage-mapping"
LDFLAGS: "-fprofile-instr-generate -fcoverage-mapping"
PYXMLSEC_STATIC_DEPS: ${{ matrix.static_deps }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
export PKG_CONFIG_PATH="$(brew --prefix)/opt/libxml2/lib/pkgconfig"
export PYXMLSEC_LIBS_DIR="$PWD/libs"
python -m build
rm -rf build/
- name: Set environment variables
shell: bash
run: |
echo "PKGVER=$(python setup.py --version)" >> $GITHUB_ENV
echo "LLVM_PROFILE_FILE=pyxmlsec.profraw" >> $GITHUB_ENV
- name: Install test dependencies (static only)
if: matrix.static_deps == 'static'
run: |
pip install coverage --upgrade -r requirements-test.txt
pip install xmlsec --only-binary=xmlsec --no-index --find-links=dist/
- name: Install test dependencies (non-static only)
if: matrix.static_deps != 'static'
run: |
export PKG_CONFIG_PATH="$(brew --prefix)/opt/libxml2/lib/pkgconfig"
pip install coverage --upgrade --no-binary=lxml -r requirements-test.txt
pip install xmlsec --only-binary=xmlsec --no-index --find-links=dist/
echo "PYXMLSEC_LIBFILE=$(python -c 'import xmlsec; print(xmlsec.__file__)')" >> $GITHUB_ENV
- name: Run tests
run: |
coverage run -m pytest -v --color=yes
- name: Report coverage to codecov
if: matrix.static_deps != 'static'
run: |
/Library/Developer/CommandLineTools/usr/bin/llvm-profdata merge -sparse ${{ env.LLVM_PROFILE_FILE }} -output pyxmlsec.profdata
/Library/Developer/CommandLineTools/usr/bin/llvm-cov show ${{ env.PYXMLSEC_LIBFILE }} --arch=$(uname -m) --instr-profile=pyxmlsec.profdata src > coverage.txt
bash <(curl -s https://codecov.io/bash) -f coverage.txt

Back | FazBrowse Home | New Git URL