Skip to content

Drop py3.9#48

Merged
andrew000 merged 4 commits intodevfrom
drop-py3.9
Oct 22, 2025
Merged

Drop py3.9#48
andrew000 merged 4 commits intodevfrom
drop-py3.9

Conversation

@andrew000
Copy link
Copy Markdown
Contributor

No description provided.

@andrew000 andrew000 requested a review from Copilot October 22, 2025 22:07
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 upgrades the minimum Python version from 3.9 to 3.10, enabling the use of modern Python type hint syntax (PEP 604 union types with |) and contemporary library versions. The changes modernize type annotations, update dependencies, remove Python 3.9 from CI/CD workflows, and apply stricter linting rules.

  • Replaced Optional[X], Union[X, Y], and List[X] with modern syntax (X | None, X | Y, list[X])
  • Updated dependencies to latest versions (click, pytest, ruff, mypy, sphinx, etc.)
  • Enhanced error handling with improved exception messages and stack level specifications
  • Expanded ruff linting to check all rules with selective ignores

Reviewed Changes

Copilot reviewed 42 out of 43 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
pyproject.toml Updated Python requirement to 3.10+, modernized dependency versions, and expanded linting configuration
tests/conftest.py Refactored type imports and improved test collection logic with better warnings
aiogram_i18n/utils/*.py Modernized type hints across utility modules
aiogram_i18n/types.py Replaced typing imports with modern union syntax and TypeAlias
aiogram_i18n/cores/*.py Updated type annotations and improved error handling in core modules
aiogram_i18n/managers/*.py Modernized manager type hints and added abstract method decorators
.github/workflows/*.yml Removed Python 3.9 from test matrix and updated action versions
Comments suppressed due to low confidence (1)

pyproject.toml:1

  • The version 'pytest-cov==7.0.0' does not exist. As of January 2025, the latest version of pytest-cov is in the 5.x series (e.g., 5.0.0). Version 7.0.0 is specified but may not be available.
[project]

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread aiogram_i18n/lazy/factory.py Outdated
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@andrew000 andrew000 merged commit 663d1de into dev Oct 22, 2025
12 checks passed
@andrew000 andrew000 deleted the drop-py3.9 branch October 22, 2025 23:10
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.

2 participants