diff --git a/.appveyor.yml b/.appveyor.yml deleted file mode 100644 index 8d90172..0000000 --- a/.appveyor.yml +++ /dev/null @@ -1,144 +0,0 @@ -# This CI setup provides a largely homogeneous configuration across all -# major platforms (Windows, MacOS, and Linux). The aim of this test setup is -# to create a "native" platform experience, using as few cross-platform -# helper tools as possible. -# -# On Linux/Mac a virtualenv is used for testing. The effective virtual env -# is available under ~/VENV. -# -# All workers support remote login. Login details are shown at the top of each -# CI run log. -# -# - Linux/Mac workers (via SSH): -# -# - A permitted SSH key must be defined in an APPVEYOR_SSH_KEY environment -# variable (via the appveyor project settings) -# -# - SSH login info is given in the form of: 'appveyor@67.225.164.xx -p 22xxx' -# -# - Login with: -# -# ssh -o StrictHostKeyChecking=no -# -# - to prevent the CI run from exiting, `touch` a file named `BLOCK` in the -# user HOME directory (current directory directly after login). The session -# will run until the file is removed (or 60 min have passed) -# -# - Windows workers (via RDP): -# -# - An RDP password should be defined in an APPVEYOR_RDP_PASSWORD environment -# variable (via the appveyor project settings), or a random password is used -# every time -# -# - RDP login info is given in the form of IP:PORT -# -# - Login with: -# -# xfreerdp /cert:ignore /dynamic-resolution /u:appveyor /p: /v: -# -# - to prevent the CI run from exiting, create a textfile named `BLOCK` on the -# Desktop (a required .txt extension will be added automatically). The session -# will run until the file is removed (or 60 min have passed) -# -# - in a terminal execute, for example, `C:\datalad_debug.bat 39` to set up the -# environment to debug in a Python 3.9 session (should generally match the -# respective CI run configuration). - - -# make repository clone cheap -shallow_clone: true - - -environment: - # Do not use `image` as a matrix dimension, to have fine-grained control over - # what tests run on which platform - # The ID variable had no impact, but sorts first in the CI run overview - # an intelligible name can help to locate a specific test run - matrix: - # List a CI run for each platform first, to have immediate access when there - # is a need for debugging - - # Ubuntu core tests - - ID: Ubu22 - APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2204 - PY: 3.10 - INSTALL_SYSPKGS: libffi7 python3-venv - # system git-annex is way too old, use better one - INSTALL_GITANNEX: git-annex -m deb-url --url http://snapshot.debian.org/archive/debian/20201228T023115Z/pool/main/g/git-annex/git-annex_8.20201127-1_amd64.deb - # Windows core tests - - ID: WinP39core - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 - # Python version specification is non-standard on windows - PY: 39-x64 - INSTALL_GITANNEX: git-annex -m datalad/packages - # MacOS core tests - - ID: MacP310-default - APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey - PY: 3.10 - # ATM default is brew - INSTALL_GITANNEX: git-annex - - - ID: MacP310-packages - APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey - PY: 3.10 - INSTALL_GITANNEX: git-annex -m datalad/packages - - # Test alternative Python versions - - ID: Ubu20P39 - PY: 3.9 - APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2004 - INSTALL_SYSPKGS: python3-venv - # system git-annex is way too old, use better one - INSTALL_GITANNEX: git-annex -m deb-url --url http://snapshot.debian.org/archive/debian/20201228T023115Z/pool/main/g/git-annex/git-annex_8.20201127-1_amd64.deb - -# it is OK to specify paths that may not exist for a particular test run -cache: - # pip cache - - C:\Users\appveyor\AppData\Local\pip\Cache -> .appveyor.yml - - /home/appveyor/.cache/pip -> .appveyor.yml - # TODO: where is the cache on macos-monterey? - #- /Users/appveyor/.cache/pip -> .appveyor.yml - # TODO: Can we cache `brew`? - #- /usr/local/Cellar - #- /usr/local/bin - - -# turn off support for MS project build support (not needed) -build: off - - -# init cannot use any components from the repo, because it runs prior to -# cloning it -init: - # Scratch space - - cmd: md C:\DLTMP - # we place the "unix" one into the user's HOME to avoid git-annex issues on MacOSX - # gh-5291 - - sh: mkdir ~/DLTMP - # and use that scratch space to get short paths in test repos - # (avoiding length-limits as much as possible) - - cmd: "set TMP=C:\\DLTMP" - - cmd: "set TEMP=C:\\DLTMP" - - sh: export TMPDIR=~/DLTMP - -install: - # If a particular Python version is requested, use env setup (using the - # appveyor provided environments/installation). Note, these are broken - # on the ubuntu images - # https://help.appveyor.com/discussions/problems/28217-appveyor-ubunu-image-with-python3-lzma-module - # Otherwise create a virtualenv using the default Python 3, to enable uniform - # use of python/pip executables below - - sh: "[ \"x$PY\" != x ] && . ${HOME}/venv${PY}/bin/activate || python${PY} -m venv ${HOME}/dlvenv && . ${HOME}/dlvenv/bin/activate; ln -s \"$VIRTUAL_ENV\" \"${HOME}/VENV\"" - - cmd: "set PATH=C:\\Python%PY%;C:\\Python%PY%\\Scripts;%PATH%" - # Missing system software - - sh: "[ -n \"$INSTALL_SYSPKGS\" ] && ( [ \"x${APPVEYOR_BUILD_WORKER_IMAGE}\" = \"xmacos-monterey\" ] && brew install -q ${INSTALL_SYSPKGS} || { sudo apt-get update; sudo apt-get install --no-install-recommends -y ${INSTALL_SYSPKGS} ; } ) || true" - - python -m pip install . - -test_script: - - cmd: datalad-installer --sudo ok %INSTALL_GITANNEX% - - sh: datalad-installer --sudo ok ${INSTALL_GITANNEX} - -on_finish: - # conditionally block the exit of a CI run for direct debugging - - sh: while [ -f ~/BLOCK ]; do sleep 5; done - - cmd: powershell.exe while ((Test-Path "C:\Users\\appveyor\\Desktop\\BLOCK.txt")) { Start-Sleep 5 } diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml deleted file mode 100644 index 6f32efe..0000000 --- a/.github/workflows/codespell.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- -name: Codespell - -on: - push: - branches: [master] - pull_request: - branches: [master] - -jobs: - codespell: - name: Check for spelling errors - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Codespell - uses: codespell-project/actions-codespell@v2 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 9cbcf1f..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,45 +0,0 @@ -name: Auto-release on PR merge - -on: - # ATM, this is the closest trigger to a PR merging - push: - branches: - - master - -jobs: - auto-release: - runs-on: ubuntu-latest - if: "!contains(github.event.head_commit.message, 'ci skip') && !contains(github.event.head_commit.message, 'skip ci')" - steps: - - name: Checkout source - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Download auto - run: | - #curl -vL -o - "$(curl -fsSL https://api.github.com/repos/intuit/auto/releases/latest | jq -r '.assets[] | select(.name == "auto-linux.gz") | .browser_download_url')" | gunzip > ~/auto - # Initially pin to 10.16.1 so we don't break if & when - # is fixed. - # Needed to progress to 11.1.6 (current release) to have - # a fix for https://github.com/intuit/auto/issues/2432, - # while 1778 was still open/left without comment. - wget -O- https://github.com/intuit/auto/releases/download/v11.1.6/auto-linux.gz | gunzip > ~/auto - chmod a+x ~/auto - - - name: Set up Python - uses: actions/setup-python@v5 - with: - python-version: '^3.9' - - - name: Install Python dependencies - run: python -m pip install build bump2version twine - - - name: Create release - run: ~/auto shipit - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - TWINE_USERNAME: __token__ - TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }} - -# vim:set sts=2: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index d4976d9..0000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,85 +0,0 @@ -name: Test - -on: - pull_request: - push: - branches: - - master - schedule: - - cron: '0 6 * * *' - -defaults: - run: - shell: bash - -concurrency: - group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref_name }} - cancel-in-progress: true - -jobs: - test: - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - os: - - macos-12 - - macos-latest - - windows-latest - - ubuntu-latest - python-version: - - '3.9' - - '3.10' - - '3.11' - - '3.12' - - 'pypy-3.10' - # Avoid PyPy 7.3.16, as the tests currently fail on it due to a bug - # in it and/or tox: , - # - - 'pypy-3.9-v7.3.15' - - 'pypy-3.10-v7.3.15' - toxenv: [py] - exclude: - # Not available on arm64 macos-latest: - - python-version: '3.9' - os: macos-latest - include: - - python-version: '3.9' - toxenv: lint - os: ubuntu-latest - - python-version: '3.9' - toxenv: typing - os: ubuntu-latest - steps: - - name: Check out repository - uses: actions/checkout@v4 - - - name: Set up Python - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - - - name: Install dependencies - run: | - python -m pip install --upgrade pip wheel - python -m pip install --upgrade --upgrade-strategy=eager tox - - - name: Run tests - if: matrix.toxenv == 'py' - run: ./run-tests.sh -e py -- -vv --ci --cov-report=xml - env: - GITHUB_TOKEN: ${{ secrets.GH_DOWNLOAD_TOKEN }} - - - name: Run generic tests - if: matrix.toxenv != 'py' - run: tox -e ${{ matrix.toxenv }} - - - name: Upload coverage to Codecov - if: matrix.toxenv == 'py' - uses: codecov/codecov-action@v4 - with: - fail_ci_if_error: false - token: ${{ secrets.CODECOV_TOKEN }} - name: ${{ matrix.python-version }} - -# vim:set et sts=2: