Releases
0.7.3
Pony ORM Release 0.7.3 (2017-10-23)
New features
where()
method added to query
coalesce()
function added
between(x, a, b)
function added
#295 : Add _table_options_
for entity class to specify engine, tablespace, etc.
Make debug flag thread-local
sql_debugging
context manager added
sql_debug
and show_values arguments to db_session added
set_sql_debug
function added as alias to (to be deprecated) sql_debug
function
Allow db_session
to accept ddl
parameter when used as context manager
Add optimistic=True
option to db_session
Skip optimistic checks for queries in db_session
with serializable=True
fk_name
option added for attributes in order to specify foreign key name
#280 : Now it's possible to specify timeout
option, as well as pass other keyword arguments for sqlite3.connect
function
Add support of explicit casting to int in queries using int()
function
Added modulo division % native support in queries
Bugfixes
Fix bugs with composite table names
Fix invalid foreign key & index names for tables which names include schema name
For queries like select(x for x in MyObject if not x.description)
add "OR x.info IS NULL" for nullable string columns
Add optimistic checking for delete()
method
Show updated attributes when OptimisticCheckError
is being raised
Fix incorrect aliases in nested queries
Correctly pass exception from user-defined functions in SQLite
More clear error messages for UnrepeatableReadError
Fix db_session(strict=True)
which was broken in 2d3afb2
Fixes #170 : Problem with a primary key column used as a part of another key
Fixes #223 : incorrect result of getattr(entity, attrname)
when the same lambda applies to different entities
Fixes #266 : Add handler to "pony.orm"
logger does not work
Fixes #278 : Cascade delete error: FOREIGN KEY constraint failed, with complex entity relationships
Fixes #283 : Lost Json update immediately after object creation
Fixes #284 : query.order_by()
orders Json numbers like strings
Fixes #288 : Expression text parsing issue in Python 3
Fixes #293 : translation of if-expressions in expression
Fixes #294 : Real stack traces swallowed within IPython shell
Collection.count()
method should check if session is alive
Set obj._session_cache_
to None after exiting from db session for better garbage collection
Unload collections which are not fully loaded after exiting from db session for better garbage collection
Raise on unknown options for attributes that are part of relationship
You can’t perform that action at this time.