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

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


Branch: CURRENT, Version: 3.7.1, Package name: py27-peewee-3.7.1, Maintainer: filip

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] [devel/py-cython] [lang/python27]

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

Master sites:

SHA1: 4781a13627eb4ac002faed854155316272c31bc7
RMD160: 8106a17f8a749f5ac8b0d9673118eac1eb986163
Filesize: 2116.896 KB

Version history: (Expand)


CVS history: (Expand)


   2018-10-07 10:42:24 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.7.1

3.7.1:

New features
* Added table_settings model Meta option, which should be a list of strings
  specifying additional options for CREATE TABLE, which are placed *after*
  the closing parentheses.
* Allow specification of on_update and on_delete behavior for many-to-many
  relationships when using ManyToManyField.

Bugfixes
* Fixed incorrect SQL generation for Postgresql ON CONFLICT clause when the
  conflict_target is a named constraint (rather than an index expression). This
  introduces a new keyword-argument to the on_conflict() method:
  conflict_constraint, which is currently only supported by Postgresql.
* Fixed incorrect SQL for sub-selects used on the right side of IN
  expressions. Previously the query would be assigned an alias, even though an
  alias was not needed.
* Fixed incorrect SQL generation for Model indexes which contain SQL functions
  as indexed columns.
* Fixed bug in the generation of special queries used to perform operations on
  SQLite FTS5 virtual tables.
* Allow frozenset to be correctly parameterized as a list of values.
* Allow multi-value INSERT queries to specify columns as a list of strings.
* Support CROSS JOIN for model select queries.
   2018-09-07 11:01:09 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-peewee: updated to 3.7.0

3.7.0:

Backwards-incompatible changes
* Pool database close_all() method renamed to close_idle() to better
  reflect the actual behavior.
* Databases will now raise InterfaceError when connect() or close() are
  called on an uninitialized, deferred database object.

New features
* Add methods to the migrations extension to support adding and dropping table
  constraints.
* Add Model.bulk_create() method for bulk-inserting unsaved model instances.
* Add close_stale() method to the connection pool to support closing stale
  connections.
* The FlaskDB class in playhouse.flask_utils now accepts a model_class
  parameter, which can be used to specify a custom base-class for models.

Bugfixes
* Parentheses were not added to subqueries used in function calls with more
  than one argument.
* Fixed bug when attempting to serialize many-to-many fields which were created
  initially with a DeferredThroughModel.
* Fixed bug when using the Postgres ArrayField with an array of BlobField.
* Allow Proxy databases to be used as a context-manager.
* Fixed bug where the APSW driver was referring to the SQLite version from the
  standard library sqlite3 driver, rather than from apsw.
* Reflection library attempts to wrap server-side column defaults in quotation
  marks if the column data-type is text/varchar.
* Missing import in migrations library, which would cause errors when
  attempting to add indexes whose name exceeded 64 chars.
* When using the Postgres connection pool, ensure any open/pending transactions
  are rolled-back when the connection is recycled.
* Even *more* changes to the setup.py script. In this case I've added a
  helper function which will reliably determine if the SQLite3 extensions can
  be built. This follows the approach taken by the Python YAML package.
   2018-07-20 11:38:49 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-peewee: updated to 3.6.4

3.6.4:
Take a whole new approach, following what simplejson does. Allow the
build_ext command class to fail, and retry without extensions in the event we
run into issues building extensions.

3.6.3:
Add check in setup.py to determine if a C compiler is available before
building C extensions.

3.6.2:
Use ctypes.util.find_library to determine if libsqlite3 is installed.
Should fix problems people are encountering installing when SQLite3 is not
available.

3.6.1:
Fixed issue with setup script.

3.6.0:
* Support for Python 3.7, including bugfixes related to new StopIteration
  handling inside of generators.
* Support for specifying ROWS or RANGE window frame types.
* Add APIs for user-defined window functions if using \ 
[pysqlite3](https://github.com/coleifer/pysqlite3)
  and sqlite 3.25.0 or newer.
* TimestampField now uses 64-bit integer data-type for storage.
* Added support to pwiz and playhouse.reflection to enable generating
  models from VIEWs.
* Added lower-level database API for introspecting VIEWs.
* Revamped continuous integration setup for better coverage, including 3.7 and
  3.8-dev.
* Allow building C extensions even if Cython is not installed, by distributing
  pre-generated C source files.
* Switch to using setuptools for packaging.
   2018-07-20 05:34:33 by Ryo ONODERA | Files touched by this commit (705)
Log message:
Recursive revbump from textproc/icu-62.1
   2018-07-04 05:56:46 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-peewee: updated to 3.5.2

3.5.2:

New guide to using window functions in Peewee.
New and improved table name auto-generation. This feature is not backwards \ 
compatible, so it is disabled by default. To enable, set \ 
legacy_table_names=False in your model's Meta options. For more details, see \ 
table names documentation.
Allow passing single fields/columns to window function order_by and partition_by \ 
arguments.
Support for FILTER (WHERE...) clauses with window functions and aggregates.
Added IdentityField class suitable for use with Postgres 10's new identity \ 
column type. It can be used anywhere AutoField or BigAutoField was being used \ 
previously.
Fixed bug creating indexes on tables that are in attached databases (SQLite).
Fixed obscure bug when using prefetch() and ModelAlias to populate a \ 
back-reference related model.

3.5.1:

New features
------------
New documentation for working with relationships in Peewee.
Improved tests and documentation for MySQL upsert functionality.
Allow database parameter to be specified with ModelSelect.get() method.
Add QualifiedNames helper to peewee module exports.
Add temporary= meta option to support temporary tables.
Allow a Database object to be passed to constructor of DataSet helper.

Bug fixes
---------
Fixed edge-case where attempting to alias a field to it's underlying column-name \ 
(when different), Peewee would not respect the alias and use the field name \ 
instead.
Raise a ValueError when joining and aliasing the join to a foreign-key's \ 
object_id_name descriptor. Should prevent accidentally introducing O(n) queries \ 
or silently ignoring data from a joined-instance.
Fixed bug for MySQL when creating a foreign-key to a model which used the \ 
BigAutoField for it's primary-key.
Fixed bugs in the implementation of user-defined aggregates and extensions with \ 
the APSW SQLite driver.
Fixed regression introduced in 3.5.0 which ignored custom Model __repr__().
Fixed regression from 2.x in which inserting from a query using a SQL() was no \ 
longer working.
   2018-06-04 12:20:01 by Filip Hajny | Files touched by this commit (2) | Package updated
Log message:
databases/py-peewee: Update to 3.5.0.

Backwards-incompatible changes
- Custom Model repr no longer use the convention of overriding
  __unicode__, and now use __str__.
- Redesigned the sqlite json1 integration and changed some of the APIs
  and semantics of various JSONField methods.

New features
- Better default repr for model classes and fields.
- ForeignKeyField() accepts a new initialization parameter,
  deferrable, for specifying when constraints should be enforced.
- BitField.flag() can be called without a value parameter for the
  common use-case of using flags that are powers-of-2.
- SqliteDatabase pragmas can be specified as a dict (previously
  required a list of 2-tuples).
- SQLite TableFunction (docs) will print Python exception tracebacks
  raised in the initialize and iterate callbacks, making debugging
  significantly easier.

Bug fixes
- Fixed bug in migrator.add_column() where, if the field being added
  declared a non-standard index type (e.g., binary json field with GIN
  index), this index type was not being respected.
- Fixed bug in database.table_exists() where the implementation did
  not match the documentation.
- Fixed bug in SQLite TableFunction implementation which raised errors
  if the return value of the iterate() method was not a tuple.
   2018-05-21 15:18:16 by Filip Hajny | Files touched by this commit (2) | Package updated
Log message:
databases/py-peewee: Update to 3.4.0.

Backwards-incompatible changes

- The regexp() operation is now case-sensitive for MySQL and Postgres.
  To perform case-insensitive regexp operations, use iregexp().
- The SQLite BareField() field-type now supports all column
  constraints except specifying the data-type. Previously it silently
  ignored any column constraints.
- LIMIT and OFFSET parameters are now treated as parameterized values
  instead of literals.
- The schema parameter for SQLite database introspection methods is no
  longer ignored by default. The schema corresponds to the name given
  to an attached database.
- ArrayField now accepts a new parameter field_kwargs, which is used
  to pass information to the array field's field_class initializer.

New features and other changes

- SQLite backup interface supports specifying page-counts and a
  user-defined progress handler.
- GIL is released when doing backups or during SQLite busy timeouts
  (when using the peewee SQLite busy-handler).
- Add NATURAL join-type to the JOIN helper.
- Improved identifier quoting to allow specifying distinct
  open/close-quote characters. Enables adding support for MSSQL, for
  instance, which uses square brackets, e.g. [table].[column].
- Unify timeout interfaces for SQLite databases (use seconds
  everywhere rather than mixing seconds and milliseconds, which was
  confusing).
- Added attach() and detach() methods to SQLite database, making it
  possible to attach additional databases (e.g. an in-memory cache
  db).
   2018-05-14 12:54:19 by Filip Hajny | Files touched by this commit (2) | Package updated
Log message:
databases/py-peewee: Update to 3.3.4.

3.3.4
- Added a BinaryUUIDField class for efficiently storing UUIDs in
  16-bytes.
- Fix dataset's update_cache() logic so that when updating a single
  table that was newly-added, we also ensure that all dependent tables
  are updated at the same time.

3.3.3
- More efficient implementation of model dependency-graph generation.
  Improves performance of recursively deleting related objects by
  omitting unnecessary subqueries.
- Added union(), union_all(), intersect() and except_() to the
  Model-specific query implementations. This was an oversight that
  should have been patched in 3.3.2, but is fixed in 3.3.3.
- Major cleanup to test runner and standardized test skipping logic to
  integrate with standard-library unittest conventions.

3.3.2
- Add methods for union(), union_all, intersect() and except_().
  Previously, these methods were only available as operator overloads.
- Removed some Python 2.6-specific support code, as 2.6 is no longer
  officially supported.
- Fixed model-graph resolution logic for deferred foreign-keys.
- Better support for UPDATE...FROM queries (Postgresql).