Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
I installed pony with python3.6 (I never got the error that @pingf got, it just worked for me), however I think something in Python3.6 broke queries.
Using the following dummy test file:
#!/usr/bin/env python3.6 from pony import orm db = orm.Database() class Foo(db.Entity): name = orm.Required(str) db.bind('sqlite', ':memory:') db.generate_mapping(create_tables=True) with orm.db_session: Foo(name="foo") print(orm.select(_ for _ in Foo))
With python3.5 the output is as expected (a Query object) however with python 3.6 the output is the following:
# New features * New warning DatabaseContainsIncorrectEmptyValue added, it is raised when the required attribute is empty during loading an entity from the database # Bugfixes * Fixes #216: Added Python 3.6 support * Fixes #203: subtranslator should use argnames from parent translator * Change a way aliases in SQL query are generated in order to fix a problem when a subquery alias masks a base query alias * Volatile attribute bug fixed * Fix creation of self-referenced foreign keys - before this Pony didn't create the foreign key for self-referenced attributes * Bug fixed: when required attribute is empty the loading from the database shouldn't raise the validation error. Now Pony raises the warning DatabaseContainsIncorrectEmptyValue * Throw an error with more clear explanation when a list comprehension is used inside a query instead of a generator expression: "Use generator expression (... for ... in ...) instead of list comprehension [... for ... in ...] inside query"