Releases: ponyorm/pony
PonyORM release 0.7.19 (2024-08-27)
PonyORM release 0.7.18 (2024-08-26)
PonyORM release 0.7.17 (2023-09-25)
Features
- Add Python 3.11 support; drop support for Python < 3.8
Bugfixes
- Fix #636 nullable IntArray and StrArray
- Fix quoting table alias in MySQL DELETE queries
- Fix handling of default argument values in hybrid methods and functions
PonyORM release 0.7.16 (2022-01-28)
This is a bugfix-only release.
Bugfixes
- Fixes #628: DBAPIProvider.init() got multiple values for argument 'database'
PonyORM release 0.7.15 (2022-01-22)
Hi all! We released Pony ORM 0.7.15. This release includes:
- A long-awaited support of Python 3.10.
- A possibility to create shared-in memory SQLite databases that can be accessed from multiple threads
Support of Python 3.10
Previous versions of PonyORM use Python parser
module from Python 2.x to parse Python AST. The support of this module was dropped in Python 3.10. Because of this, Pony ORM switches to new ast
module.
With this change, the support of Python 2.7 and old versions of Python 3 was dropped, and the supported versions now are Python 3.6-Python 3.10
Shared in-memory SQLite databases
Previously in-memory SQLite databases are created in Pony ORM by specifying ":memory:"
string as a database filename. The database created this way cannot be used in multiple threads. Now it is possible to use ":sharedmemory:"
string to create a database that can be accessed from multiple threads.
Other changes
- Do not perform optimistic checks when deleting an object (it is OK if it was already deleted by concurrent transaction)
- Validation of int fields should take into account field size and check that the value is fit into the range
- More tests for hybrid methods added
- Fix incorrect assertion check
assert t is translator.
- Fix aggregated query
sum(x.field for x in previous_query)
- #594: Use a clearly synthetic filename when compiling dynamic code to not confuse coverage.py
- Use DecompileError exception instead of AssertionError when a function cannot be decompiled
PonyORM release 0.7.15-RC1 (2022-01-10)
In this release, PonyORM got the support of Python 3.10. The code was rewritten significantly to use the standard Python ast
module which comes with Python 3. Now PonyORM works on Python versions 3.7-3.10, and support of Python 2 was ended.
Bugfixes
- Do not perform optimistic checks when deleting an object (it is OK if it was already deleted by concurrent transaction)
- Validation of int fields should take into account field size and check that the value is fit into the range
- More tests for hybrid methods added
- Fix incorrect assertion check
assert t is translator.
- Fix aggregated query
sum(x.field for x in previous_query)
- #594: Use a clearly synthetic filename when compiling dynamic code to not confuse coverage.py
- Use DecompileError exception instead of AssertionError when a function cannot be decompiled.
PonyORM release 0.7.14 (2020-11-23)
Features
- Add Python 3.9 support
- Allow to use kwargs in select: Entity.select(**kwargs) and obj.collection.select(**kwargs), a feature that was announced but actually missed from 0.7.7
- Add support for volatile collection attributes that don't throw "Phantom object appeared/disappeared" exceptions
Bugfixes
- Fix negative timedelta conversions
- Pony should reconnect to PostgreSQL when receiving 57P01 error (AdminShutdown)
- Allow mixing compatible types (like int and float) in coalesce() arguments
- Support of subqueries in coalesce() arguments
- Fix using aggregated subqueries in ORDER BY section
- Fix queries with expressions like
(x, y) in ((a, b), (c, d))
- #451: KeyError for seeds with unique attributes in SessionCache.update_simple_index()
PonyORM release 0.7.13 (2020-03-03)
This release contains no new features or bugfixes. The only reason for this release is to test our CI/CD process.
PonyORM release 0.7.12 (2020-02-04)
Features
- CockroachDB support added
- CI testing for SQLite, PostgreSQL & CockroachDB
Bugfixes
- Fix translation of getting array items with negative indexes
- Fix string getitem translation for slices and negative indexes
- PostgreSQL DISTINCT bug fixed for queries with ORDER BY clause
- Fix date difference syntax in PostgreSQL
- Fix casting json to dobule in PostgreSQL
- Fix count by several columns in PostgreSQL
- Fix PostgreSQL MIN and MAX expressions on boolean columns
- Fix determination of interactive mode in PyCharm
- Fix column definition when
sql_default
is specified: DEFAULT should be before NOT NULL - Relax checks on updating in-memory cache indexes (don't throw CacheIndexError on valid cases)
- Fix deduplication logic for attribute values
PonyORM release 0.7.11 (2019-10-23)
Features
- #472: Python 3.8 support
- Support of hybrid functions (inlining simple Python functions into query)
- #438: support datetime-datetime, datetime-timedelta, datetime+timedelta in queries
Bugfixes
- #430: add ON DELETE CASCADE for many-to-many relationships
- #465: Should reconnect to MySQL on OperationalError 2013 'Lost connection to MySQL server during query'
- #468: Tuple-value comparisons generate incorrect queries
- #470 fix PendingDeprecationWarning of imp module
- Fix incorrect unpickling of objects with Json attributes
- Check value of discriminator column on object creation if set explicitly
- Correctly handle Flask current_user proxy when adding new items to collections
- Some bugs in syntax of aggregated queries were fixed
- Fix syntax of bulk delete queries
- Bulk delete queries should clear query results cache so next select will get correct result from the database
- Fix error message when hybrid method is too complex to decompile