Bot releases are visible (Hide)
Published by kozlovsky about 2 months ago
Published by kozlovsky about 1 year ago
Published by kozlovsky over 2 years ago
This is a bugfix-only release.
Published by kozlovsky over 2 years ago
Hi all! We released Pony ORM 0.7.15. This release includes:
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
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.
assert t is translator.
sum(x.field for x in previous_query)
Published by kozlovsky almost 3 years ago
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.
assert t is translator.
sum(x.field for x in previous_query)
Published by kozlovsky almost 4 years ago
(x, y) in ((a, b), (c, d))
Published by kozlovsky over 4 years ago
This release contains no new features or bugfixes. The only reason for this release is to test our CI/CD process.
Published by kozlovsky over 4 years ago
sql_default
is specified: DEFAULT should be before NOT NULLPublished by kozlovsky almost 5 years ago
Published by kozlovsky over 5 years ago
Published by kozlovsky over 5 years ago
Published by kozlovsky over 5 years ago
This is a bug fix release
Published by kozlovsky almost 6 years ago
SELECT FROM (SELECT ...)
type of queriesPublished by kozlovsky about 6 years ago
select(f'{s.name} - {s.age}' for s in Student)
query.limit(offset=10)
str
, int
or float
@db.on_connect
decorator addedexists()
in query does not throw away condition in generator expression:exists(s.gpa > 3 for s in Student)
in
operator to test membership of another query resultauto=True
can be used with all PrimaryKey
types, not only int
QueryResult
looks like a list
object again: add concatenation with lists, .shuffle()
and .to_list()
methodsPrimaryKey(buffer)
in Python2Published by kozlovsky about 6 years ago
This is mostly bugfix release to fix bugs introduced in 0.7.4
select(f'{s.name} - {s.age}' for s in Student)
query.limit(offset=10)
str
, int
or float
@db.on_connect
decorator addedexists(s.gpa > 3 for s in Student)
in
operator to test membership of another query resultauto=True
can be used with all PrimaryKey
types, not only int.shuffle()
and .to_list()
methodsPrimaryKey(buffer)
in Python2Published by kozlovsky about 6 years ago
query.where
and query.filter
method bug introduced in 0.7.4 was fixedPublished by kozlovsky about 6 years ago
select(x.a for x in prev_query if x.b)
group_concat()
aggregate function addeddistinct
option added to aggregate functionsfloat
and bool
in queriesLIKE
is case sensitive nowobj.json_attr = obj.json_attr
db_session.__exit__
obj.delete()
__len__
in entity failsbetween()
function and rename arguments: between(a, x, y)
->between(x, a, b)
OptimisticCheckError
if db_session
is not optimisticImportError
exception messages when MySQLdb, pymysql, psycopg2 or psycopg2cffi driver was not founddesc()
function fixed to allow reverse its effect by calling desc(desc(x))
__contains__
method should check if objects belong to the same db_session
Published by kozlovsky almost 7 years ago
where()
method added to querycoalesce()
function addedbetween(x, a, b)
function added_table_options_
for entity class to specify engine, tablespace, etc.sql_debugging
context manager addedsql_debug
and show_values arguments to db_session addedset_sql_debug
function added as alias to (to be deprecated) sql_debug
functiondb_session
to accept ddl
parameter when used as context manageroptimistic=True
option to db_sessiondb_session
with serializable=True
fk_name
option added for attributes in order to specify foreign key nametimeout
option, as well as pass other keyword arguments for sqlite3.connect
functionint()
functionselect(x for x in MyObject if not x.description)
add "OR x.info IS NULL" for nullable string columnsdelete()
methodOptimisticCheckError
is being raisedUnrepeatableReadError
db_session(strict=True)
which was broken in 2d3afb24getattr(entity, attrname)
when the same lambda applies to different entities"pony.orm"
logger does not workquery.order_by()
orders Json numbers like stringsCollection.count()
method should check if session is aliveobj._session_cache_
to None after exiting from db session for better garbage collectionPublished by kozlovsky over 7 years ago
optimistic
attribute option is added https://docs.ponyorm.com/api_reference.html#cmdoption-arg-optimistic