Skip to content

feat!: drop support for python 3.8#1371

Merged
omercnet merged 3 commits intomainfrom
break/droppy38
May 4, 2026
Merged

feat!: drop support for python 3.8#1371
omercnet merged 3 commits intomainfrom
break/droppy38

Conversation

@omercnet
Copy link
Copy Markdown
Member

@omercnet omercnet commented Apr 30, 2026

This pull request updates the project to drop support for Python 3.8, standardize Python version requirements, and replace the liccheck license checker with pylic. It also updates development dependencies and configuration files for improved consistency and maintainability.

Python version support and requirements:

  • Dropped support for Python 3.8 in the SDK, documentation, CI configuration, and packaging metadata; the minimum supported version is now Python 3.9. (README.md, .github/workflows/ci.yml, pyproject.toml, tox.ini) [1] [2] [3] [4] [5] [6]

License checking and compliance:

  • Replaced the liccheck tool and its configuration (liccheck.ini) with pylic, updating pre-commit hooks and specifying allowed licenses in pyproject.toml. (pyproject.toml, .pre-commit-config.yaml, liccheck.ini) [1] [2] [3] [4]

Development and formatting tools:

  • Updated and simplified development dependencies, including using fixed versions for pre-commit, black, and flake8, and removed Python-version-specific dependency logic. (pyproject.toml, .pre-commit-config.yaml) [1] [2] [3]

Let me know if you want more details on any of these changes!

Copilot AI review requested due to automatic review settings April 30, 2026 12:22
@shuni-bot-dev
Copy link
Copy Markdown

shuni-bot-dev Bot commented Apr 30, 2026

🐕 Review complete — View session on Shuni Portal 🐾

@omercnet omercnet marked this pull request as draft April 30, 2026 12:22
@omercnet omercnet force-pushed the break/droppy38 branch 3 times, most recently from 744c536 to bce931a Compare April 30, 2026 12:23
Copy link
Copy Markdown

@shuni-bot-dev shuni-bot-dev Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🐕 Shuni's Review

Drops Python 3.8 support, switches license checker from liccheck to pylic, and aligns pre-commit hook versions with poetry dev deps.

Sniffed out 3 issues:

  • 1 🟠 HIGH: pylic safe_licenses is missing license entries that liccheck previously authorized (certifi/MPL-2.0, email-validator/CC0-1.0)
  • 1 🟡 MEDIUM: pyupgrade still pinned to --py38-plus despite dropping 3.8
  • 1 🟢 LOW: YAML indentation inconsistency for the new pylic repo entry

See inline comments. Needs a bath!

Comment thread pyproject.toml
Comment thread .pre-commit-config.yaml Outdated
Comment thread .pre-commit-config.yaml Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR drops Python 3.8 support and updates development/compliance tooling accordingly, including migrating license checking from liccheck to pylic and refreshing pinned tooling/dependency artifacts.

Changes:

  • Bump minimum supported Python version to 3.9 and remove Python 3.8 classifier/conditional dependency specs.
  • Replace liccheck (and liccheck.ini) with pylic, configuring policy in pyproject.toml and wiring it into pre-commit.
  • Regenerate/export dependency lock and requirements artifacts to reflect the updated tooling and Python support.

Reviewed changes

Copilot reviewed 6 out of 8 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
requirements.txt Updates exported/pinned dependency set (and markers) for Python >=3.9.
pyproject.toml Raises minimum Python to 3.9, simplifies dev/format dependency constraints, and adds [tool.pylic] configuration.
poetry.lock Regenerated lockfile under the updated Python/tooling setup (Poetry v2 format/metadata changes).
liccheck.ini Removes legacy liccheck license policy configuration.
.pre-commit-config.yaml Pins formatter/linter hook versions and adds the pylic hook while removing the legacy liccheck hook.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .pre-commit-config.yaml Outdated
Comment thread .pre-commit-config.yaml Outdated
Comment thread .pre-commit-config.yaml Outdated
Comment thread pyproject.toml
@omercnet omercnet force-pushed the break/droppy38 branch 2 times, most recently from 271f42c to de800d3 Compare April 30, 2026 12:28
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 30, 2026

Coverage report

The coverage rate went from 98.36% to 98.37% ⬆️

None of the new lines are part of the tested code. Therefore, there is no coverage data about them.

Comment thread .github/workflows/ci.yml Fixed
@omercnet omercnet marked this pull request as ready for review May 3, 2026 12:45
LioriE
LioriE previously approved these changes May 3, 2026
Copy link
Copy Markdown
Contributor

@LioriE LioriE left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

omercnet and others added 3 commits May 4, 2026 08:18
Flask 3.1 removed the long-deprecated _request_ctx_stack, causing the
mypy 'type' tox env (only run on 3.12/3.13) to fail with:
  samples/magiclink_web_sample_app.py:1: error: Module "flask" has
  no attribute "_request_ctx_stack"  [attr-defined]

The library code already uses flask.g; align the sample with it.

Also clean up tox.ini: drop py38 from env_list and report.depends, and
remove the dead [testenv:py37] block, matching this branch's intent of
dropping Python 3.8.
…ntain permissions'

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Comment thread requirements.txt
@omercnet omercnet enabled auto-merge (squash) May 4, 2026 12:20
@omercnet omercnet merged commit 5114a01 into main May 4, 2026
28 checks passed
@omercnet omercnet deleted the break/droppy38 branch May 4, 2026 12:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants