From d9ffbb62f29c1639b8a0ab1b149b6f6d57f13930 Mon Sep 17 00:00:00 2001 From: Eric Arellano <14852634+Eric-Arellano@users.noreply.github.com> Date: Fri, 23 Feb 2024 16:00:27 -0500 Subject: [PATCH 1/2] Use GitHub pages docs site in setup.py --- README.md | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3e37a3f..d76e5fd 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![License](https://img.shields.io/github/license/Qiskit/qiskit-neko.svg?style=popout-square)](https://opensource.org/licenses/Apache-2.0) - You can see the full rendered docs at: - + https://qiskit.github.io/qiskit-neko/ This repository contains integration tests for Qiskit. These tests are used diff --git a/setup.py b/setup.py index 2dc079a..e7bc5bc 100755 --- a/setup.py +++ b/setup.py @@ -62,7 +62,7 @@ python_requires=">=3.8", project_urls={ "Bug Tracker": "https://github.com/Qiskit/qiskit-neko/issues", - "Documentation": "https://qiskit.org/ecosystem/neko", + "Documentation": "https://qiskit.github.io/qiskit-neko/", "Source Code": "https://github.com/Qiskit/qiskit-neko", }, zip_safe=False, From d6599c4b9ae65825b4ffea80ed7c43f6423bf65f Mon Sep 17 00:00:00 2001 From: Jake Lishman Date: Mon, 29 Jul 2024 13:34:52 +0100 Subject: [PATCH 2/2] Build `ibm-platform-services` with known-good setuptools (#48) `ibm-platform-services<=0.55.1` only supply an `sdist` on PyPI, and the `setup.py` of that sdist imports the deprecated `setuptools.commands.test`, which is removed in `setuptools==72.0.0`. This makes the package unbuildable with the latest `setuptools`, and it's hard to thread through a constraint on build dependencies right into the depths of recursive pip/tox/whatever commands. This commit forcibly builds the bad dependency with an older version of `setuptools` and adds the wheel to the pip cache, so subsequent installation commands will be able to install from a pre-built wheel regardless of the `setuptools` version. --- .github/workflows/docs.yml | 17 ++++++++++ .github/workflows/main.yml | 68 ++++++++++++++++++++++++++++++++++++++ action.yml | 17 ++++++++++ 3 files changed, 102 insertions(+) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 681f6fb..4f4768f 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -15,6 +15,23 @@ jobs: uses: actions/setup-python@v2 with: python-version: '3.8' + + # This can be removed when `ibm-platform-services` can build/install with the most recent of + # `setuptools`. `setuptools==72.0.0` and `ibm-platform-services==0.55.1` are a known-bad combo. + - name: Prebuild old-setuptools dependencies + shell: bash + run: | + set -e + python -m venv .build-deps + if [[ ${{ runner.os }} =~ [wW]indows ]]; then + .build-deps/Scripts/python -m pip install 'setuptools<72.0' wheel + .build-deps/Scripts/python -m pip wheel --no-build-isolation ibm-platform-services + else + .build-deps/bin/python -m pip install 'setuptools<72.0' wheel + .build-deps/bin/python -m pip wheel --no-build-isolation ibm-platform-services + fi + rm -rf .build-deps + - name: Install dependencies run: | python -m pip install --upgrade pip diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 688cba3..092f46b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -38,6 +38,23 @@ jobs: ${{ runner.os }}-${{ matrix.python-version }}-pip-tests- ${{ runner.os }}-${{ matrix.python-version }}-pip- ${{ runner.os }}-${{ matrix.python-version }} + + # This can be removed when `ibm-platform-services` can build/install with the most recent of + # `setuptools`. `setuptools==72.0.0` and `ibm-platform-services==0.55.1` are a known-bad combo. + - name: Prebuild old-setuptools dependencies + shell: bash + run: | + set -e + python -m venv .build-deps + if [[ ${{ runner.os }} =~ [wW]indows ]]; then + .build-deps/Scripts/python -m pip install 'setuptools<72.0' wheel + .build-deps/Scripts/python -m pip wheel --no-build-isolation ibm-platform-services + else + .build-deps/bin/python -m pip install 'setuptools<72.0' wheel + .build-deps/bin/python -m pip wheel --no-build-isolation ibm-platform-services + fi + rm -rf .build-deps + - name: Install Deps run: python -m pip install -U tox setuptools virtualenv wheel - name: Install and Run Tests @@ -61,6 +78,23 @@ jobs: ${{ runner.os }}-${{ matrix.python-version }}-pip-neko- ${{ runner.os }}-${{ matrix.python-version }}-pip- ${{ runner.os }}-${{ matrix.python-version }}- + + # This can be removed when `ibm-platform-services` can build/install with the most recent of + # `setuptools`. `setuptools==72.0.0` and `ibm-platform-services==0.55.1` are a known-bad combo. + - name: Prebuild old-setuptools dependencies + shell: bash + run: | + set -e + python -m venv .build-deps + if [[ ${{ runner.os }} =~ [wW]indows ]]; then + .build-deps/Scripts/python -m pip install 'setuptools<72.0' wheel + .build-deps/Scripts/python -m pip wheel --no-build-isolation ibm-platform-services + else + .build-deps/bin/python -m pip install 'setuptools<72.0' wheel + .build-deps/bin/python -m pip wheel --no-build-isolation ibm-platform-services + fi + rm -rf .build-deps + - name: Install Deps run: python -m pip install -U tox - name: Run neko @@ -87,6 +121,23 @@ jobs: ${{ runner.os }}-${{ matrix.python-version }}-pip-lint- ${{ runner.os }}-${{ matrix.python-version }}-pip- ${{ runner.os }}-${{ matrix.python-version }}- + + # This can be removed when `ibm-platform-services` can build/install with the most recent of + # `setuptools`. `setuptools==72.0.0` and `ibm-platform-services==0.55.1` are a known-bad combo. + - name: Prebuild old-setuptools dependencies + shell: bash + run: | + set -e + python -m venv .build-deps + if [[ ${{ runner.os }} =~ [wW]indows ]]; then + .build-deps/Scripts/python -m pip install 'setuptools<72.0' wheel + .build-deps/Scripts/python -m pip wheel --no-build-isolation ibm-platform-services + else + .build-deps/bin/python -m pip install 'setuptools<72.0' wheel + .build-deps/bin/python -m pip wheel --no-build-isolation ibm-platform-services + fi + rm -rf .build-deps + - name: Install Deps run: python -m pip install -U tox - name: Run lint @@ -112,6 +163,23 @@ jobs: ${{ runner.os }}-pip-docs- ${{ runner.os }}-pip- ${{ runner.os }}- + + # This can be removed when `ibm-platform-services` can build/install with the most recent of + # `setuptools`. `setuptools==72.0.0` and `ibm-platform-services==0.55.1` are a known-bad combo. + - name: Prebuild old-setuptools dependencies + shell: bash + run: | + set -e + python -m venv .build-deps + if [[ ${{ runner.os }} =~ [wW]indows ]]; then + .build-deps/Scripts/python -m pip install 'setuptools<72.0' wheel + .build-deps/Scripts/python -m pip wheel --no-build-isolation ibm-platform-services + else + .build-deps/bin/python -m pip install 'setuptools<72.0' wheel + .build-deps/bin/python -m pip wheel --no-build-isolation ibm-platform-services + fi + rm -rf .build-deps + - name: Install Deps run: | python -m pip install -U tox diff --git a/action.yml b/action.yml index 4d8cf49..64c6faf 100644 --- a/action.yml +++ b/action.yml @@ -21,6 +21,23 @@ runs: run: | pip install -U setuptools pip shell: bash + + # This can be removed when `ibm-platform-services` can build/install with the most recent of + # `setuptools`. `setuptools==72.0.0` and `ibm-platform-services==0.55.1` are a known-bad combo. + - name: Prebuild old-setuptools dependencies + shell: bash + run: | + set -e + python -m venv .build-deps + if [[ ${{ runner.os }} =~ [wW]indows ]]; then + .build-deps/Scripts/python -m pip install 'setuptools<72.0' wheel + .build-deps/Scripts/python -m pip wheel --no-build-isolation ibm-platform-services + else + .build-deps/bin/python -m pip install 'setuptools<72.0' wheel + .build-deps/bin/python -m pip wheel --no-build-isolation ibm-platform-services + fi + rm -rf .build-deps + - name: Install neko and its dependencies run: | pip install ./qiskit-neko