* CMake support was updated to handle CMake version 3.1.
* The server now includes its version number when it writes the initial “starting” message to the error log, to make it easier to tell which server instance error log output applies to. This value is the same as that available from the version system variable.
* ALTER TABLE did not take advantage of fast alterations that might otherwise apply to the operation to be performed, if the table contained temporal columns found to be in pre-5.6.4 format (TIME, DATETIME, and TIMESTAMP columns without support for fractional seconds precision).
* Statement digesting as done previously by the Performance Schema is now done at the SQL level regardless of whether the Performance Schema is compiled in and is available to other aspects of server operation that could benefit from it. The default space available for digesting is 1024 bytes, but can be changed at server startup using the max_digest_length system variable.
* Bug fixes.
* CMake support was updated to handle CMake version 3.1.
* The server now includes its version number when it writes the initial “starting” message to the error log, to make it easier to tell which server instance error log output applies to. This value is the same as that available from the version system variable.
* Bug fixes.
2.5.1
- #566, fixed a bug regarding parentheses around compound SELECT queries
(i.e. UNION, INTERSECT, etc).
- Fixed unreported bug where table aliases were not generated correctly
for compound SELECT queries.
- #559, add option to preserve original column order with pwiz. Thanks @elgow!
- Fixed unreported bug where selecting all columns from a ModelAlias
does not use the appropriate FieldAlias objects.
- #561, added an option for bulk insert queries to return the list
of auto-generated primary keys. See docs for InsertQuery.return_id_list.
- #569, added parse function to the playhouse.db_url module. Thanks @stt!
- Added hacks section to the docs. Please contribute your hacks!
- Calls to Node.in_() and Node.not_in() do not take *args anymore and
instead take a single argument.
2.5.0
- #534, CSV utils was erroneously stripping the primary key from CSV data.
- #537, fix upserts when using insert_many.
- #541, respect autorollback with PostgresqlExtDatabase. Thanks @davidmcclure.
- #551, fix for QueryResultWrapper's implementation of the iterator protocol.
- #554, allow SQLite journal_mode to be set at run-time.
- Fixed case-sensitivity issue with DataSet.
- Added support for CAST expressions.
- Added a hook for extending Node with custom methods.
- JOIN_<type> became JOIN.<type>, e.g. .join(JOIN.LEFT_OUTER).
- OP_<code> became OP.<code>.
- #556, allowed using + and - prefixes to indicate ascending/descending
ordering.
- #550, added Database.initialize_connection() hook.
- #549, bind selected columns to a particular model. Thanks @jhorman, nice PR!
- #531, support for swapping databases at run-time via Using.
- #530, support for SQLCipher and Python3.
- New RowIDField for sqlite_ext playhouse module. This field can be used
to interact with SQLite rowid fields.
- Added LateralJoin helper to the postgres_ext playhouse module.
2.4.7
- #504, Docs updates.
- #506, Fixed regression in aggregate_rows()
- #510, Fixes bug in pwiz overwriting columns.
- #514, Correctly cast foreign keys in prefetch().
- #515, Simplifies queries issued when doing recursive deletes.
- #516, Fix cloning of Field objects.
- #519, Aggregate rows now correctly preserves ordering of joined instances.
- Unreported, fixed bug to not leave expired connections sitting around
in the pool.
- Added support for Postgresql's jsonb type with BinaryJSONField.
- Add some basic Flask helpers.
- Add support for UNION ALL queries in #512
- Add SqlCipherExtDatabase, which combines the sqlcipher database with
the sqlite extensions.
- Add option to print metadata when generating code with pwiz.
2.4.6
- #503, fixes behavior of aggregate_rows() when used with a CompositeKey.
- #498, fixes value coercion for field aliases.
- #492, fixes bug with pwiz and composite primary keys.
- #486, correctly handle schemas with reflection module.
- Peewee has a new ManyToManyField available in the playhouse.shortcuts
module.
- Peewee now has proper support for NOT IN queries through the Node.not_in()
method.
- Models now support iteration. This is equivalent to Model.select().
2.4.5
- #471, #482 and #484, all of which had to do with how joins were handled
by the aggregate_rows() query result wrapper.
- #472 removed some needless special-casing in Model.save().
- #466 fixed case-sensitive issues with the SQLite migrator.
- #474 fixed a handful of bugs that cropped up migrating foreign keys
with SQLite.
- #475 fixed the behavior of the SQLite migrator regarding auto-generated
indexes.
- #479 fixed a bug in the code that stripped extra parentheses
in the SQL generator.
- Fixed a handful of bugs in the APSW extension.
- Added connection abstraction called ExecutionContext (see docs).
- Made all context managers work as decorators (atomic, transaction,
savepoint, execution_context).
- Added explicit methods for IS NULL and IS NOT NULL queries. The latter was
actually necessary since the behavior is different from NOT IS NULL (...).
- Allow disabling backref validation (#465)
- Made quite a few improvements to the documentation, particularly sections
on transactions.
- Added caching to the DataSet extension, which should improve performance.
- Made the SQLite migrator smarter with regards to preserving indexes
when a table copy is necessary.
Version 1.4.0 - 26 Jan 2015
* Incremental base backup implementation through the reuse_backup
global/server option. Possible values are off (disabled,
default), copy (preventing unmodified files from being
transferred) and link (allowing for deduplication through hard
links).
* Store and show deduplication effects when using reuse_backup=
link.
* Added transparent support of pg_stat_archiver (PostgreSQL 9.4) in
check, show-server and status commands.
* Improved administration by invoking WAL maintenance at the end of
a successful backup.
* Changed the way unused WAL files are trashed, by differentiating
between concurrent and exclusive backup cases.
* Improved performance of WAL statistics calculation.
* Treat a missing pg_ident.conf as a WARNING rather than an error.
* Refactored output layer by removing remaining yield calls.
* Check that rsync is in the system path.
* Include history files in WAL management.
* Improved robustness through more unit tests.
* Fixed bug #55: Ignore fsync EINVAL errors on directories.
* Fixed bug #58: retention policies delete.
Upstream changes:
0.48 - 2015-02-11, H.Merijn Brand
* Update list of valid Text::CSV_XS attributes
0.47 - 2015-02-11, H.Merijn Brand
* Updated copyright to 2015
* Make test-tablename unique for parallel testing
* Remove perl recommendation from META as it breaks cpan clients
---------
0.29.8 (2015-03-03)
^^^^^^^^^^^^^^^^^^^
- Added get_class_by_table ORM utility function
0.29.7 (2015-03-01)
^^^^^^^^^^^^^^^^^^^
- Added Enum representation support for ChoiceType
0.29.6 (2015-02-03)
^^^^^^^^^^^^^^^^^^^
- Added customizable TranslationHybrid default value
0.29.5 (2015-02-03)
^^^^^^^^^^^^^^^^^^^
- Made assert_max_length support PostgreSQL array type
0.29.4 (2015-01-31)
^^^^^^^^^^^^^^^^^^^
- Made CaseInsensitiveComparator not cast already lowercased types to lowercase
0.29.3 (2015-01-24)
^^^^^^^^^^^^^^^^^^^
- Fixed analyze function runtime property handling for PostgreSQL >= 9.4
- Fixed drop_database and create_database identifier quoting (#122)
0.29.2 (2015-01-08)
^^^^^^^^^^^^^^^^^^^
- Removed deprecated defer_except (SQLAlchemy's own load_only should be used from now on)
- Added json_sql PostgreSQL helper function
0.29.1 (2015-01-03)
^^^^^^^^^^^^^^^^^^^
- Added assert_min_value and assert_max_value testing functions
0.29.0 (2015-01-02)
^^^^^^^^^^^^^^^^^^^
- Removed TSVectorType.match_tsquery (now replaced by TSVectorType.match to be compatible with SQLAlchemy)
- Removed undocumented function tsvector_concat
- Added support for TSVectorType concatenation through OR operator
- Added documentation for TSVectorType (#102)
0.28.3 (2014-12-17)
^^^^^^^^^^^^^^^^^^^
- Made aggregated fully support column aliases
- Changed test matrix to run all tests without any optional dependencies (as well as with all optional dependencies)
0.28.2 (2014-12-13)
^^^^^^^^^^^^^^^^^^^
- Fixed issue with Color importing (#104)
0.28.1 (2014-12-13)
^^^^^^^^^^^^^^^^^^^
- Improved EncryptedType to support more underlying_type's; now supports: Integer, Boolean, Date, Time, DateTime, ColorType, PhoneNumberType, Unicode(Text), String(Text), Enum
- Allow a callable to be used to lookup the key for EncryptedType
0.28.0 (2014-12-12)
^^^^^^^^^^^^^^^^^^^
- Fixed PhoneNumber string coercion (#93)
- Added observes decorator (generates decorator will be deprecated later)
0.27.11 (2014-12-06)
^^^^^^^^^^^^^^^^^^^^
- Added loose typed column checking support for get_column_key
- Made get_column_key throw UnmappedColumnError to be consistent with SQLAlchemy
0.27.10 (2014-12-03)
^^^^^^^^^^^^^^^^^^^^
- Fixed column alias handling in dependent_objects
* Fix Delete query under multithread
* Add missing quote for with query name
Version 0.5 - 2015-01-29
* Add schema
* Add Common Table Expression
* Escape Mod operator '%' with format paramstyle
* Deprecate Interesect in favor of Intersect
* Add Values
## 0.6.6
* Add context manager to cursor
* Fix can't encode blob that is not utf-8 on PY3. (regression of 0.6.4,
Thanks to @wiggzz)
## 0.6.4
* Support "LOAD LOCAL INFILE". Thanks @wraziens
* Show MySQL warnings after execute query.
* Fix MySQLError may be wrapped with OperationalError while connectiong. (#274)
* SSCursor no longer attempts to expire un-collected rows within __del__,
delaying termination of an interrupted program; cleanup of uncollected
rows is left to the Connection on next execute, which emits a
warning at that time. (#287)
* Support datetime and time with microsecond. (#303)
* Use surrogateescape to format bytes on Python 3.
* OperationalError raised from connect() have information about original
exception. (#304)
* `init_command` now support multi statement.
* `Connection.escape()` method now accepts second argument compatible to
MySQL-Python.
## 0.6.3
* Fixed multiple result sets with SSCursor.
* Fixed connection timeout.
* Fixed literal set syntax to work on Py2.6.
* Allow for mysql negative values with 0 hour timedelta.
* Added Connection.begin().
mongo-c-driver 1.1.2
====================
* Process connectTimeoutMS cast insensitively
* Addition of missing trace macros
* Improvement of internal error messages
* Fix a segfault in OpenSSL cleanup routines
* Fix for IPv66 support for replica sets
* Coalesce small vectorized TLS writes
* MinGW fixups
* Fix for a memory leak in get_database_names()
* Fixes for patching write concern through the bulk api
* Fix to normalize hostnames in uri parsing
* Fix for managing connections in the client pool
* Various other fixes
mongo-c-driver 1.1.0
====================
* ABI versioning for 1.1 versus 1.0 symbols
* additional geo index options
* authMechanismProperties in URI
* fixes for OS X Yosemite
* removal of replica set member limit
* SCRAM-SHA-1 SASL mechanism
* updated dependency on libbson 1.1 abi
* validation for bulk insert
* various memory leak fixes
* Fixes to documentation typos
* "How to Ask For Help" in the README
* Removed dependency on sasl for PLAIN authentication
* Use provided username, if available, for X.509 auth
* Fixed WriteConcern error reporting for some writes
* Check for closed sockets before attempting RPCs
* Fixes for gridfs file seek
* Fixes for mongoc_cursor_clone()
* Fixes for unix domain socket support
* Fixes for polling on win32
* Improved warnings on failure to connect
* Addition of wired tiger options
* Fixes for examples
Additions to the ABI include:
* support for extra option in count
- mongoc_collection_count_with_opts
* additional index options
- mongoc_index_opt_geo_get_default
- mongoc_index_opt_geo_init
- mongoc_index_opt_wt_get_default
- mongoc_index_opt_wt_init
* rand interface to seed and verify the strong random number generation needed
by some auth mechanisms
- mongoc_rand_seed
- mongoc_rand_add
- mongoc_rand_status
* URI additions to support more complicated auth credentials
- mongoc_uri_get_credentials
- mongoc_uri_get_mechanism_properties
* Support for cursor returning metadata crud operations
- mongoc_client_find_databases
- mongoc_collection_find_indexes
- mongoc_database_find_collections
* Kill cursor supportp
- mongoc_client_kill_cursor
* Various get/setters on cursor
- mongoc_cursor_get_batch_size
- mongoc_cursor_get_id
- mongoc_cursor_set_batch_size
* More socket/stream options
- mongoc_socket_check_closed
- mongoc_socket_inet_ntop
- mongoc_stream_check_closed
- mongoc_stream_write
- bug #4746 Right-aligned columns have left-aligned header
- bug #4779 PMA_Util::parseEnumSetValues fails on enums with UTF-8 values
- bug Undefined index savedsearcheswork
- bug #4788 Inline edit of DATE fields with NULL, NULL checkbox is under
datepicker
- bug #4790 DROP TABLE/VIEW IF EXISTS are not tracked
- bug Compatibility with central columns of version 4.4
- bug #4758 Firefox with auth_type to http with multiple server doesn't
work anymore
- bug #4789 Views aren't dropped when copying a database
- bug #4784 Incomplete bookmark saving
- bug #4786 SELECT width on relations page
- bug [security] Risk of BREACH attack, see PMASA-2015-1
- bug #4774 SQL links are completely wrong
- bug #4768 MariaDB: version mismatch
- bug #4777 Some images are missing in Designer for original theme
- bug #4767 Drizzle: undefined index in mysql_charsets.inc.php
- bug #4753 Normal field and multi-line field have different margins
- bug #4760 Cannot re-import settings from local storage
- bug #4778 SQL error when database list is sorted by additional columns
- bug #4780 Notice when timestamp column does not have default value
- bug Undefined index navwork
- bug #4744 Opening console scroll down the page
- bug Remove extra column heading in view structure page
- bug Add missing confirmation when deleting central columns
- bug Undefined index DisableIS
- bug #4763 Database export with more than 512 tables fails
- bug #4769 Previously set column aliases are destroyed if returned to the
same table
- bug #4752 Incorrect page after creating table
- bug #4771 Central Columns not working, showing error
Changelog
1.4.0 (2015-02-11)
Using insecure SSL configuration (verify_cert=False) raises a warning
reindex accepts a query parameter
enable reindex helper to accept any kwargs for underlying bulk and scan calls
when doing an initial sniff (via sniff_on_start) ignore special sniff timeout
option to treat TransportError as normal failure in bulk helpers
fixed an issue with sniffing when only a single host was passed in
1.3.0 (2014-12-31)
Timeout now doesn't trigger a retry by default (can be overriden by setting retry_on_timeout=True)
Introduced new parameter retry_on_status (defaulting to (503, 504, )) controls which http status code should lead to a retry.
Implemented url parsing according to RFC-1738
Added support for proper SSL certificate handling
Required parameters are now checked for non-empty values
ConnectionPool now checks if any connections were defined
DummyConnectionPool introduced when no load balancing is needed (only one connection defined)
Fixed a race condition in ConnectionPool
=== 4.20.0 (2015-03-03)
* Restore the use of AUTOINCREMENT on SQLite (jeremyevans) (#965)
* Duplicate the associations hash when duplicating a model object (jeremyevans)
* Correctly apply association limit when eager loading with an eager block using default limit strategy on some databases (jeremyevans)
* Fix eager loading when using the :window_function limit strategy with an eager block and cascaded associations (jeremyevans)
* Add support for set_column_type :auto_increment=>true to add AUTO_INCREMENT to existing column on MySQL (jeremyevans) (#959)
* Add support for overridding the :instance_specific association option (jeremyevans)
* Recognize MSSQL bit type as boolean in the schema_dumper (jeremyevans)
* Skip eager loading queries if there are no matching keys (jeremyevans) (#952)
* Dataset#paged_each now returns an enumerator if not passed a block (jeremyevans)
* Use to_json :root option with string value as the JSON object key in the json_serializer plugin (jeremyevans)
* Allow create_enum in the pg_enum extension be reversible in migrations (celsworth) (#951)
* Have swift adapter respect database and application timezone settings (asppsa, jeremyevans) (#946)
* Don't have the static cache plugin attempt to validate objects (jeremyevans)
* Make freeze not validate objects if their errors are already frozen (jeremyevans)
* Only use prepared statements for associations if caching association metadata (jeremyevans)
* Set parent association when loading descendants in the rcte_tree plugin (jeremyevans)
* Add Database#transaction :before_retry option, specifying a proc to call before retrying (uhoh-itsmaciek) (#941)
Upstream changes:
2.025001 2015-02-28 09:53:36-06:00 America/Chicago
- fix ::RS::Errors test on Windows
2.025000 2015-02-20 22:50:47-06:00 America/Chicago
- Add ::Helper::ResultSet::Errors to help when calling Result methods on an RS