diff --git a/.github/workflows/dev-testing.yml b/.github/workflows/dev-testing.yml index 7292ebadce..7bcbbc5108 100644 --- a/.github/workflows/dev-testing.yml +++ b/.github/workflows/dev-testing.yml @@ -23,7 +23,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v4 - run: git fetch --prune --unshallow --tags diff --git a/.github/workflows/doctests.yml b/.github/workflows/doctests.yml index 5f6f4ecee5..787e41bb60 100644 --- a/.github/workflows/doctests.yml +++ b/.github/workflows/doctests.yml @@ -9,7 +9,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] os: [ubuntu-latest, macos-13, windows-latest] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/formatwise-installation-testing.yml b/.github/workflows/formatwise-installation-testing.yml index e5b9ff5bf4..c75637a987 100644 --- a/.github/workflows/formatwise-installation-testing.yml +++ b/.github/workflows/formatwise-installation-testing.yml @@ -12,7 +12,7 @@ jobs: fail-fast: false matrix: # Disabling these due to multiplicative nature - python-version: ["3.9", "3.10", "3.11", "3.12"] + python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] os: [ubuntu-latest, macos-latest, windows-latest] format: [ {type: recording, name: spikeglx}, {type: recording, name: edf}, {type: recording, name: intan}, {type: recording, name: neuralynx}, {type: recording, name: neuroscope}, {type: recording, name: openephys}, {type: sorting, name: cellexplorer}, {type: sorting, name: neuralynx}, {type: sorting, name: neuroscope}, {type: imaging, name: scanimage}, {type: imaging, name: tiff}, {type: behavior, name: deeplabcut} ] # SpikeGLX is the test of the 'empty' requirements functionality - missing: ced recording gallery and video behavior gallery steps: diff --git a/.github/workflows/live-service-testing.yml b/.github/workflows/live-service-testing.yml index 87a59d08da..9011ea53ed 100644 --- a/.github/workflows/live-service-testing.yml +++ b/.github/workflows/live-service-testing.yml @@ -17,7 +17,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] os: [ubuntu-latest, macos-13, windows-latest] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/test-external-links.yml b/.github/workflows/test-external-links.yml index fa782a4760..2aefc33d7d 100644 --- a/.github/workflows/test-external-links.yml +++ b/.github/workflows/test-external-links.yml @@ -16,7 +16,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v5 with: - python-version: "3.11" + python-version: "3.10" - name: Install package for API docs run: pip install .[docs] - name: Test External Links diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index c1e99d5f7d..3431a06c4a 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -19,7 +19,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] os: [ubuntu-latest, macos-13, windows-latest] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/update-s3-testing-data.yml b/.github/workflows/update-s3-testing-data.yml index a98917d780..4275ea8d79 100644 --- a/.github/workflows/update-s3-testing-data.yml +++ b/.github/workflows/update-s3-testing-data.yml @@ -16,7 +16,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v5 with: - python-version: "3.11" + python-version: "3.10" - name: Setup Environment run: | diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 1fe3c6db01..8c8b525d36 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -8,7 +8,7 @@ version: 2 build: os: ubuntu-22.04 tools: - python: "3.11" + python: "3.9" # Build documentation in the docs/ directory with Sphinx sphinx: diff --git a/CHANGELOG.md b/CHANGELOG.md index 3cb28710ce..c543012c27 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,6 @@ ### Deprecations * Removed `stream_id` as an argument from `IntanRecordingInterface` [PR #794](https://github.com/catalystneuro/neuroconv/pull/794) * The usage of `compression` and `compression_opts` directly through the `neuroconv.tools.spikeinterface` submodule are now deprecated - users should refer to the new `configure_backend` method for a general approach for setting compression. [PR #805](https://github.com/catalystneuro/neuroconv/pull/805) - * Dropped the testing of python 3.8 on the CI [PR #853](https://github.com/catalystneuro/neuroconv/pull/853) ### Bug fixes * Remove JSON Schema `definitions` from the `properties` field. [PR #818](https://github.com/catalystneuro/neuroconv/pull/818) diff --git a/setup.py b/setup.py index 885a26196e..de20e67faa 100644 --- a/setup.py +++ b/setup.py @@ -77,7 +77,7 @@ packages=find_packages(where="src"), package_dir={"": "src"}, include_package_data=True, # Includes files described in MANIFEST.in in the installation. - python_requires=">=3.9", + python_requires=">=3.8", install_requires=install_requires, extras_require=extras_require, entry_points={ diff --git a/src/neuroconv/datainterfaces/ecephys/spike2/requirements.txt b/src/neuroconv/datainterfaces/ecephys/spike2/requirements.txt index 7c00e91a8e..2e8f864685 100644 --- a/src/neuroconv/datainterfaces/ecephys/spike2/requirements.txt +++ b/src/neuroconv/datainterfaces/ecephys/spike2/requirements.txt @@ -1 +1 @@ -sonpy>=1.7.1;python_version=='3.9' +sonpy>=1.7.1;python_version<='3.9' diff --git a/src/neuroconv/datainterfaces/ecephys/spike2/spike2datainterface.py b/src/neuroconv/datainterfaces/ecephys/spike2/spike2datainterface.py index da69c6b0d8..44b4ab6d45 100644 --- a/src/neuroconv/datainterfaces/ecephys/spike2/spike2datainterface.py +++ b/src/neuroconv/datainterfaces/ecephys/spike2/spike2datainterface.py @@ -9,7 +9,7 @@ def _test_sonpy_installation() -> None: get_package( package_name="sonpy", excluded_python_versions=["3.10", "3.11"], - excluded_platforms_and_python_versions=dict(darwin=dict(arm=["3.9", "3.10", "3.11", "3.12"])), + excluded_platforms_and_python_versions=dict(darwin=dict(arm=["3.8", "3.9", "3.10", "3.11", "3.12"])), ) diff --git a/tests/test_on_data/test_recording_interfaces.py b/tests/test_on_data/test_recording_interfaces.py index e2a5383263..1defab475d 100644 --- a/tests/test_on_data/test_recording_interfaces.py +++ b/tests/test_on_data/test_recording_interfaces.py @@ -79,8 +79,8 @@ class TestBlackrockRecordingInterface(RecordingExtractorInterfaceTestMixin, Test @skipIf( - platform == "darwin" or this_python_version > version.parse("3.9"), - reason="Interface unsupported for OSX. Interface only runs on python 3.9", + platform == "darwin" or this_python_version < version.parse("3.8") or this_python_version > version.parse("3.9"), + reason="Interface unsupported for OSX. Only runs on Python 3.8 and 3.9", ) class TestSpike2RecordingInterface(RecordingExtractorInterfaceTestMixin, TestCase): data_interface_cls = Spike2RecordingInterface