Skip to content

Conversation

@kyamagu
Copy link
Contributor

@kyamagu kyamagu commented Dec 5, 2025

Summary

Upgrades the aggdraw dependency to >=1.4.1 to enable Python 3.14 support on Windows platform.

Changes

  • Update aggdraw version requirement to >=1.4.1 in both composite optional dependencies and dev dependency group
  • Remove cp314-win* from cibuildwheel skip list to enable Python 3.14 Windows wheel builds
  • Update documentation to reflect new version requirement
  • Remove outdated note about Python 3.14 Windows compatibility issues

Rationale

aggdraw 1.4.1+ includes wheels for Python 3.14 on Windows, allowing us to build and distribute wheels for this platform combination. Previously, we had to skip Python 3.14 Windows builds due to the lack of compatible aggdraw wheels.

Test plan

  • Verify that Python 3.14 Windows wheels build successfully in CI
  • Confirm aggdraw>=1.4.1 installs correctly on Python 3.14 Windows
  • Run tests with composite dependencies on Python 3.14 Windows (if available)

🤖 Generated with Claude Code

kyamagu and others added 6 commits December 5, 2025 09:00
Update the aggdraw dependency constraint to >=1.4.1 in both the composite optional dependencies and dev dependency group. This version adds support for Python 3.14 on Windows platform.

Changes:
- Update aggdraw version requirement to >=1.4.1 in pyproject.toml
- Remove cp314-win* from cibuildwheel skip list to enable Python 3.14 Windows builds
- Update documentation to reflect new version requirement
- Remove outdated note about Python 3.14 Windows compatibility issues

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
aggdraw 1.4.1 requires Python >=3.11, but psd-tools supports Python >=3.10.
Use conditional dependency specifications to install the appropriate version:
- Python 3.10: aggdraw >=1.3.16,<1.4.1
- Python 3.11+: aggdraw >=1.4.1 (includes Python 3.14 Windows support)

This ensures compatibility across all supported Python versions while enabling
Python 3.14 Windows builds where aggdraw 1.4.1+ is available.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Remove the exclusion of Python 3.14 on Windows from the test matrix.
With aggdraw 1.4.1+ available for Python 3.11+ (via conditional dependencies),
Python 3.14 on Windows is now fully supported.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Remove conditional dependencies in favor of a simple >=1.3.16 constraint.
The package resolver will automatically select:
- aggdraw 1.3.x for Python 3.10 (where 1.4.1 is not compatible)
- aggdraw 1.4.1+ for Python 3.11+ (including Python 3.14 Windows support)

This is cleaner and achieves the same result without explicit conditionals.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
On Windows, require aggdraw>=1.4.1 which provides pre-built wheels for all
supported Python versions (3.10-3.14). The older 1.3.x versions lack wheels
for Python 3.14 on Windows, causing pip to attempt building from source which
requires complex C/C++ dependencies.

On other platforms, continue to allow aggdraw>=1.3.16 which works correctly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Combine both platform and Python version constraints to handle all cases:
- Non-Windows: aggdraw>=1.3.16
- Windows + Python 3.10: aggdraw>=1.3.16,<1.4.1 (1.4.1 requires Python 3.11+)
- Windows + Python 3.11+: aggdraw>=1.4.1 (includes Python 3.14 wheel support)

This ensures Python 3.10 on Windows gets a compatible version while Python 3.11+
on Windows gets the newer version with Python 3.14 support.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@kyamagu kyamagu merged commit 8aeb9c6 into main Dec 5, 2025
19 checks passed
@kyamagu kyamagu deleted the upgrade-dependencies-aggdraw branch December 5, 2025 00:37
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