./databases/py-peewee, Small, expressive ORM for PostgreSQL, MySQL and SQLite

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.9.6, Package name: py37-peewee-3.9.6, Maintainer: fhajny

Peewee is a simple and small ORM. It has few (but expressive)
concepts, making it easy to learn and intuitive to use.
Supports SQLite, MySQL and PostgreSQL.


Required to run:
[devel/py-setuptools] [databases/py-sqlite3] [devel/py-cython] [lang/python37]

Required to build:
[textproc/py-sphinx] [pkgtools/cwrappers]

Master sites:

SHA1: 5ed2665aad77e9a355cea0c8df8de4ab9c12d00c
RMD160: 214e503e5dca4651f9bdb279953fa391f2fe7e5e
Filesize: 791.588 KB

Version history: (Expand)


CVS history: (Expand)


   2019-06-10 09:36:14 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.9.6

3.9.6
Support nesting the Database instance as a context-manager. The outermost block \ 
will handle opening and closing the connection along with wrapping everything in \ 
a transaction. Nested blocks will use savepoints.
Add new session_start(), session_commit() and session_rollback() interfaces to \ 
the Database object to support using transactional controls in situations where \ 
a context-manager or decorator is awkward.
Fix error that would arise when attempting to do an empty bulk-insert.
Set isolation_level=None in SQLite connection constructor rather than afterwards \ 
using the setter.
Add create_table() method to Select query to implement CREATE TABLE AS.
Cleanup some declarations in the Sqlite C extension.
Add new example showing how to implement Reddit's ranking algorithm in SQL.
   2019-04-27 11:33:07 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.9.5

3.9.5
* Added small helper for setting timezone when using Postgres.
* Improved SQL generation for `VALUES` clause.
* Support passing resolution to `TimestampField` as a power-of-10.
* Small improvements to `INSERT` queries when the primary-key is not an
  auto-incrementing integer, but is generated by the database server (eg uuid).
* Cleanups to virtual table implementation and python-to-sqlite value
  conversions.
* Fixed bug related to binding previously-unbound models to a database using a
  context manager.
   2019-04-15 09:03:50 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.9.4

3.9.4:

* Add Model.bulk_update() method for bulk-updating fields across multiple
  model instances.
* Add lazy_load parameter to ForeignKeyField. When initialized with
  lazy_load=False, the foreign-key will not use an additional query to
  resolve the related model instance. Instead, if the related model instance is
  not available, the underlying FK column value is returned (behaving like the
  "_id" descriptor).
* Added Model.truncate_table() method.
* The reflection and pwiz extensions now attempt to be smarter about
  converting database table and column names into snake-case. To disable this,
  you can set snake_case=False when calling the Introspector.introspect()
  method or use the -L (legacy naming) option with the pwiz script.
* Bulk insert via insert_many() no longer require specification of the
  fields argument when the inserted rows are lists/tuples. In that case, the
  fields will be inferred to be all model fields except any auto-increment id.
* Add DatabaseProxy, which implements several of the Database class context
  managers. This allows you to reference some of the special features of the
  database object without directly needing to initialize the proxy first.
* Add support for window function frame exclusion and added built-in support
  for the GROUPS frame type.
* Add support for chaining window functions by extending a previously-declared
  window function.
* Playhouse Postgresql extension TSVectorField.match() method supports an
  additional argument plain, which can be used to control the parsing of the
  TS query.
* Added very minimal JSONField to the playhouse MySQL extension.
   2019-04-03 02:33:20 by Ryo ONODERA | Files touched by this commit (748)
Log message:
Recursive revbump from textproc/icu
   2019-03-24 11:39:48 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.9.3

3.9.3
* Added cross-database support for NULLS FIRST/LAST when specifying the
  ordering for a query. Previously this was only supported for Postgres. Peewee
  will now generate an equivalent CASE statement for Sqlite and MySQL.
* Added [EXCLUDED](http://docs.peewee-orm.com/en/latest/pe … l#EXCLUDED)
  helper for referring to the EXCLUDED namespace used with INSERT...ON CONFLICT
  queries, when referencing values in the conflicting row data.
* Added helper method to the model Metadata class for setting the table name
  at run-time. Setting the Model._meta.table_name directly may have appeared
  to work in some situations, but could lead to subtle bugs. The new API is
  Model._meta.set_table_name().
* Enhanced helpers for working with Peewee interactively, [see \ 
doc](http://docs.peewee-orm.com/en/latest/pe … ctive.html).
* Fix cache invalidation bug in DataSet that was originally reported on the
  sqlite-web project.
* New example script implementing a [hexastore]
   2019-03-06 19:36:13 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.9.2

3.9.2:
This release contains a fix for a test that was failing when 3.9.1 was tagged \ 
and released.

3.9.1:
Includes a bugfix for an AttributeError that occurs when using MySQL with the \ 
MySQLdb client.
   2019-03-06 09:37:57 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-peewee: updated to 3.9.0

3.9.0:
New and improved stuff
Added new document describing how to use peewee interactively.
Added convenience functions for generating model classes from a pre-existing \ 
database, printing model definitions and printing CREATE TABLE sql for a model. \ 
See the "use peewee interactively" section for details.
Added a __str__ implementation to all Query subclasses which converts the query \ 
to a string and interpolates the parameters.
Improvements to sqlite_ext.JSONField regarding the serialization of data, as \ 
well as the addition of options to override the JSON serialization and \ 
de-serialization functions.
Added index_type parameter to Field
Added DatabaseProxy, which allows one to use database-specific decorators with \ 
an uninitialized Proxy object.
Added support for INSERT ... ON CONFLICT when the conflict target is a partial \ 
index (e.g., contains a WHERE clause). The OnConflict and on_conflict() APIs now \ 
take an additional conflict_where parameter to represent the WHERE clause of the \ 
partial index in question.
Enhanced the playhouse.kv extension to use efficient upsert for all database \ 
engines. Previously upsert was only supported for sqlite and mysql.
Re-added the orwhere() query filtering method, which will append the given \ 
expressions using OR instead of AND.
Added some new examples to the examples/ directory
Added select_from() API for wrapping a query and selecting one or more columns \ 
from the wrapped subquery. Docs.
Added documentation on using row values.
Removed the (defunct) "speedups" C extension, which as of 3.8.2 only \ 
contained a barely-faster function for quoting entities.

Bugfixes
Fix bug in SQL generation when there was a subquery that used a common table \ 
expressions.
Enhanced prefetch() and fixed bug that could occur when mixing self-referential \ 
foreign-keys and model aliases.
MariaDB 10.3.3 introduces backwards-incompatible changes to the SQL used for \ 
upsert. Peewee now introspects the MySQL server version at connection time to \ 
ensure proper handling of version-specific features.
Fixed bug where TimestampField would treat zero values as None when reading from \ 
the database.
   2019-01-18 09:04:45 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.8.2

3.8.2

Backwards-incompatible changes
The default row-type for INSERT queries executed with a non-default RETURNING \ 
clause has changed from tuple to Model instances. This makes INSERT behavior \ 
consistent with UPDATE and DELETE queries that specify a RETURNING clause. To \ 
revert back to the old behavior, just append a call to .tuples() to your INSERT \ 
... RETURNING query.
Removing support for the table_alias model Meta option. Previously, this \ 
attribute could be used to specify a "vanity" alias for a model class \ 
in the generated SQL. As a result of some changes to support more robust UPDATE \ 
and DELETE queries, supporting this feature will require some re-working. As of \ 
the 3.8.0 release, it was broken and resulted in incorrect SQL for UPDATE \ 
queries, so now it is removed.

New features
Added playhouse.shortcuts.ReconnectMixin, which can be used to implement \ 
automatic reconnect under certain error conditions (notably the MySQL error 2006 \ 
- server has gone away).

Bugfixes
Fix SQL generation bug when using an inline window function in the ORDER BY \ 
clause of a query.
Fix possible zero-division in user-defined implementation of BM25 ranking \ 
algorithm for SQLite full-text search.