diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 5df57a09..0d36f88d 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -9,15 +9,15 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] os: [ubuntu-latest, windows-latest, macos-latest] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - uses: actions/cache@v3 + - uses: actions/cache@v4 name: Configure pip caching with: path: ~/.cache/pip @@ -34,12 +34,12 @@ jobs: runs-on: ubuntu-latest needs: [test] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: '3.12' - - uses: actions/cache@v3 + - uses: actions/cache@v4 name: Configure pip caching with: path: ~/.cache/pip diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index 8a86cd2f..a3d55325 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -6,12 +6,12 @@ jobs: spellcheck: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 with: - python-version: 3.9 - - uses: actions/cache@v2 + python-version: "3.12" + - uses: actions/cache@v4 name: Configure pip caching with: path: ~/.cache/pip diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml index 0681f666..a710e412 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/test-coverage.yml @@ -12,12 +12,12 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out repo - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v5 with: - python-version: 3.9 - - uses: actions/cache@v2 + python-version: "3.11" + - uses: actions/cache@v4 name: Configure pip caching with: path: ~/.cache/pip diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 18322626..91e2e829 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,16 +10,16 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] numpy: [0, 1] os: [ubuntu-latest, macos-latest, windows-latest] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - uses: actions/cache@v3 + - uses: actions/cache@v4 name: Configure pip caching with: path: ~/.cache/pip @@ -29,8 +29,7 @@ jobs: - name: Install dependencies run: | pip install -e '.[test,mypy,flake8]' - - name: Optionally install tui dependencies (not 3.7) - if: matrix.python-version != '3.7' + - name: Optionally install tui dependencies run: pip install -e '.[tui]' - name: Optionally install numpy if: matrix.numpy == 1 @@ -50,12 +49,10 @@ jobs: pytest -v - name: run mypy run: mypy sqlite_utils tests - - name: run flake8 if Python 3.8 or higher - if: matrix.python-version >= 3.8 + - name: run flake8 run: flake8 - name: Check formatting run: black . --check - name: Check if cog needs to be run - if: matrix.python-version != '3.7' run: | cog --check README.md docs/*.rst diff --git a/setup.py b/setup.py index 9a3f4ff3..5e512ae5 100644 --- a/setup.py +++ b/setup.py @@ -64,7 +64,7 @@ def get_long_description(): "Issues": "https://github.com/simonw/sqlite-utils/issues", "CI": "https://github.com/simonw/sqlite-utils/actions", }, - python_requires=">=3.7", + python_requires=">=3.8", classifiers=[ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", @@ -72,7 +72,6 @@ def get_long_description(): "Intended Audience :: End Users/Desktop", "Topic :: Database", "License :: OSI Approved :: Apache Software License", - "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", diff --git a/sqlite_utils/db.py b/sqlite_utils/db.py index 5323c51b..6332dc26 100644 --- a/sqlite_utils/db.py +++ b/sqlite_utils/db.py @@ -457,8 +457,7 @@ def register(fn): fn_name, arity, fn, **dict(kwargs, deterministic=True) ) registered = True - except (sqlite3.NotSupportedError, TypeError): - # TypeError is Python 3.7 "function takes at most 3 arguments" + except sqlite3.NotSupportedError: pass if not registered: self.conn.create_function(fn_name, arity, fn, **kwargs)