diff --git a/.github/workflows/python_build.yaml b/.github/workflows/python_build.yaml index 2767e8627..f10c00c02 100644 --- a/.github/workflows/python_build.yaml +++ b/.github/workflows/python_build.yaml @@ -116,8 +116,8 @@ jobs: - name: Install build tools shell: bash run: | - python -m pip install --upgrade pip - pip install build pip-tools + python -m pip install --upgrade "pip<25.3" + pip install build "pip-tools>=7.4.0" - name: Generate requirements working-directory: python diff --git a/.github/workflows/python_ci.yaml b/.github/workflows/python_ci.yaml index 1e5818dc5..7bf425a2d 100644 --- a/.github/workflows/python_ci.yaml +++ b/.github/workflows/python_ci.yaml @@ -62,17 +62,17 @@ jobs: run: | pytest -m "not integration" - - name: Pytest Integration Tests - env: - SIFT_GRPC_URI: ${{ vars.SIFT_GRPC_URI }} - SIFT_REST_URI: ${{ vars.SIFT_REST_URI }} - SIFT_API_KEY: ${{ secrets.SIFT_API_KEY }} - run: | - pytest -m "integration" + #- name: Pytest Integration Tests + #env: + #SIFT_GRPC_URI: ${{ vars.SIFT_GRPC_URI }} + #SIFT_REST_URI: ${{ vars.SIFT_REST_URI }} + #SIFT_API_KEY: ${{ secrets.SIFT_API_KEY }} + #run: | + #pytest -m "integration" - name: Sync Stubs Mypy working-directory: python/lib run: | stubtest \ --mypy-config-file ../pyproject.toml \ - sift_client.resources.sync_stubs \ No newline at end of file + sift_client.resources.sync_stubs diff --git a/.github/workflows/python_release.yaml b/.github/workflows/python_release.yaml index e37f65f80..9e49c8c39 100644 --- a/.github/workflows/python_release.yaml +++ b/.github/workflows/python_release.yaml @@ -133,9 +133,9 @@ jobs: HIDDEN="false" echo "Stable release detected: $FULL_VERSION -> $VERSION" else - # Pre-release (alpha, beta, rc) - no 'latest' alias and hide from dropdown + # Pre-release (alpha, beta, rc) - use 'pre-release' alias and hide from dropdown VERSION="${VERSION}${SUFFIX}" - ALIAS="" + ALIAS="pre-release" HIDDEN="true" echo "Pre-release detected: $FULL_VERSION -> $VERSION" fi @@ -174,6 +174,10 @@ jobs: # Stable release: deploy abbreviated version with latest alias, visible in dropdown echo "Deploying stable release $VERSION with $ALIAS alias" mike deploy "$VERSION" "$ALIAS" --push --update-aliases + elif [[ "$ALIAS" == "pre-release" ]]; then + # Pre-release: deploy abbreviated version with pre-release alias, hidden from dropdown + echo "Deploying pre-release $VERSION with $ALIAS alias" + mike deploy "$VERSION" "$ALIAS" --push --update-aliases --prop-set hidden=true fi env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/python/CHANGELOG.md b/python/CHANGELOG.md index c8e3e90b2..9d786243c 100644 --- a/python/CHANGELOG.md +++ b/python/CHANGELOG.md @@ -3,6 +3,10 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). +## [v1.0.0] - Nov 11, 2025 (**NOTE: WIP still in pre-release**) +- Initial stable release of sift_client +- Test results context managers + ## [v0.9.6] - December 22, 2025 - [Add support for tags in RuleConfigs](https://github.com/sift-stack/sift/pull/438) diff --git a/python/pyproject.toml b/python/pyproject.toml index ae04a5f0b..85b79ffe7 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "sift_stack_py" -version = "0.9.6" +version = "1.0.0a9" description = "Python client library for the Sift API" requires-python = ">=3.8" readme = { file = "README.md", content-type = "text/markdown" } @@ -20,7 +20,7 @@ classifiers = [ "Programming Language :: Python :: 3.14", ] maintainers = [ - { name = "Sift Software Engineers", email = "engineering@siftstack.com" }, + { name = "Sift", email = "engineering@siftstack.com" }, ] keywords = ["sift", "sift-stack", "siftstack", "sift_py"] dependencies = [ @@ -59,7 +59,7 @@ all = [ 'pyOpenSSL<24.0.0', 'pyarrow>=17.0.0', 'rosbags~=0.0', - 'sift-stream-bindings>=0.2.0-rc4', + 'sift-stream-bindings>=0.2.0-rc8', 'types-pyOpenSSL<24.0.0', ] build = [ @@ -100,7 +100,7 @@ dev-all = [ 'pytest==8.2.2', 'rosbags~=0.0', 'ruff~=0.12.10', - 'sift-stream-bindings>=0.2.0-rc4', + 'sift-stream-bindings>=0.2.0-rc8', 'tomlkit~=0.13.3', 'types-pyOpenSSL<24.0.0', ] @@ -153,7 +153,7 @@ docs-build = [ 'pytest==8.2.2', 'rosbags~=0.0', 'ruff~=0.12.10', - 'sift-stream-bindings>=0.2.0-rc4', + 'sift-stream-bindings>=0.2.0-rc8', 'tomlkit~=0.13.3', 'types-pyOpenSSL<24.0.0', ] @@ -176,10 +176,10 @@ rosbags = [ 'rosbags~=0.0', ] sift-stream = [ - 'sift-stream-bindings>=0.2.0-rc4', + 'sift-stream-bindings>=0.2.0-rc8', ] sift-stream-bindings = [ - 'sift-stream-bindings>=0.2.0-rc4', + 'sift-stream-bindings>=0.2.0-rc8', ] tdms = [ 'npTDMS~=1.9', @@ -215,7 +215,7 @@ docs = ["mkdocs", openssl = ["pyOpenSSL<24.0.0", "types-pyOpenSSL<24.0.0", "cffi~=1.14"] tdms = ["npTDMS~=1.9"] rosbags = ["rosbags~=0.0"] -sift-stream = ["sift-stream-bindings>=0.2.0-rc4"] +sift-stream = ["sift-stream-bindings>=0.2.0-rc8"] hdf5 = ["h5py~=3.11", "polars~=1.8"] data-review = ["pyarrow>=17.0.0"]