Skip to content

Conversation

@vemel
Copy link
Collaborator

@vemel vemel commented Dec 3, 2025

  • Python 3.13 support (TypeIs, argparse)
  • Add full ty support
  • Add PEP 740 support
  • Update Dockerfile
  • Fix integration

@vemel vemel requested a review from Copilot December 3, 2025 05:51
Copilot finished reviewing on behalf of vemel December 3, 2025 05:52
Copy link

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 updates the minimum Python version requirement from 3.12 to 3.13 across the project. The main changes involve adopting Python 3.13 features and improving type safety throughout the codebase.

  • Updates minimum Python version from 3.12 to 3.13 in project configuration files
  • Replaces TypeGuard with TypeIs for improved type narrowing
  • Adds explicit typing for loguru handler configurations using BasicHandlerConfig

Reviewed changes

Copilot reviewed 16 out of 18 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
pyproject.toml Updates Python version requirements, adds "ty" keyword, removes 3.12 classifier
.github/workflows/on_push.yml Removes Python 3.12 from CI test matrix
scripts/release.py Updates requires-python to 3.13
scripts/ci.py Updates requires-python to 3.13
scripts/integration.py Adds BasicHandlerConfig typing for logger configuration
scripts/check_output.py Adds BasicHandlerConfig typing for logger configuration
mypy_boto3_builder/logger.py Adds BasicHandlerConfig typing for logger configuration
mypy_boto3_builder/utils/type_checks.py Replaces TypeGuard with TypeIs in type checking functions
mypy_boto3_builder/cli_parser.py Renames parameter from value to values, adds deprecated parameter
mypy_boto3_builder/parsers/shape_parser.py Improves variable scoping and null safety in resource method parsing
mypy_boto3_builder/boto3_ports/model.py Changes ResourceModel definition parameter to Mapping for immutability
tests/structures/test_paginator.py Adds isinstance check for return_type
tests/parsers/test_shape_parser.py Adds isinstance check and removes duplicate assertions
tests/import_helpers/test_internal_import_record.py Simplifies test to use actual enum instead of mock
vulture_whitelist.txt Adds option_string to whitelist
Taskfile.yml Adds task automation configuration
.python-version Confirms Python 3.13 version

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

Comment on lines +1093 to +1094
request_operation_model = self._get_operation(operation_name)
operation_model = request_operation_model
Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

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

The variable request_operation_model is immediately assigned to operation_model without any intermediate processing. This introduces unnecessary duplication. Consider directly assigning to operation_model instead.

Copilot uses AI. Check for mistakes.
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