-
-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
code qualityPlaces where the code quality or readability can be improvedPlaces where the code quality or readability can be improvedlargeThis is going to take a lot longer than most thingsThis is going to take a lot longer than most things
Description
While pony is a great library, a lot of its functionality tends to run into compatibility issues with every Python version change, and the utility of a rapid-development ORM has now outlived its usefulness.
Before replacing Pony, it's important to figure out what to replace it with. Here are some possibilities:
- SQLAlchemy: A well-regarded SQL abstraction layer and ORM that uses declarative syntax instead of generator tricks.
- SQLObject: Similar to SQLAlchemy but has seemingly simpler syntax and provides semi-Pythonic query syntax.
- lmdb: a BerkeleyDB-like indexed data store. Super fast and lightweight but also requires a LOT more attention for actually building queries. 2018 me was super into it, 2024 me not so much.
Of the three I have a weak preference for SQLAlchemy, just because it's so well-used. Also, the "session" concept should make it possible to finally add proper unit tests to Publ; pony's global db state has been a major pain point here, and unfortunately SQLObject seems to follow the same general pattern.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
code qualityPlaces where the code quality or readability can be improvedPlaces where the code quality or readability can be improvedlargeThis is going to take a lot longer than most thingsThis is going to take a lot longer than most things