Skip to content

Conversation

@brycekbargar
Copy link
Collaborator

@brycekbargar brycekbargar commented Sep 22, 2025

Upgrades

This updates the minimum supported version of python to 3.10 as 3.9 is end-of-life in October. With the upgrade, we now have access to pipe unions without having to import them from the __future__. I removed the __future__ annotations imports which required a little reorganizing of imports and also quoting some type hints.

Going from 3.9 -> 3.10 as the target version for ruff and mypy had fewer changes than expected but those have been made here.

I adjusted the minimum required versions of tqdm and duckdb with a better idea as to what a minimum version should be.

Feature removals

Removing psycopg2 in favor of psycopg3 requires a little more setup documentation. There were also changes in tests necessary because of the return type mapping is different.

Excel export has been removed, that also allowed removing the dependency.

sqlite3 doesn't have json support which I will need to implement the faster transformation logic in 4.0 so it has also been removed. It ships with python so there wasn't a dependency to remove. There's probably some goofy logic now but the database handing code is going to be pretty heavily refactored

@brycekbargar brycekbargar marked this pull request as draft September 22, 2025 16:38
@brycekbargar brycekbargar marked this pull request as ready for review September 22, 2025 16:39
@brycekbargar brycekbargar marked this pull request as draft September 22, 2025 16:40
@brycekbargar brycekbargar marked this pull request as ready for review September 22, 2025 16:40
@brycekbargar brycekbargar merged commit b8d29ec into library-data-platform:v4.0.0 Sep 22, 2025
5 checks passed
@brycekbargar brycekbargar deleted the py-and-deps branch December 9, 2025 14:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant