parameters: - name: extra type: string default : '' - name: interpreter type: string default : '' - name: compatibility type: string default : '' - name: path type: string default : '' - name: toolchain type: string default : '' steps: - bash: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain $(toolchain) --profile minimal -y displayName: rustup - bash: PATH=$(path) rustup default $(toolchain) displayName: ensure toolchain - bash: PATH=$(path) $(interpreter) -m pip install --user --upgrade pip "maturin>=0.12.19,<0.13" wheel displayName: build dependencies - bash: PATH=$(path) $(interpreter) -m pip install --user -r test/requirements.txt -r integration/requirements.txt displayName: test dependencies - bash: PATH=$(path) maturin build --no-sdist --strip $(extra) --compatibility $(compatibility) --interpreter $(interpreter) displayName: build debug - bash: PATH=$(path) $(interpreter) -m pip install --user target/wheels/orjson*.whl displayName: install - bash: PATH=$(path) pytest -s -rxX -v test displayName: pytest