tiedot is a document database engine that uses JSON as document
notation; it has a powerful query processor that supports advanced set
operations; it can be embedded into your program, or run a stand-alone
server using HTTP for an API.
tiedot has fault-tolerant data structures that put your data safety
first, while easily scales to 4+ CPU cores.
tiedot has very stable performance, even with millions of records! It
consistently achieves high throughput - swallow more than 120k records
or 80k complicated queries per second with confidence.
### 0.14.0
**Fixes**:
* Catch a buffer overflow when formatting the error message
* Import latest upstream sds. This breaks applications that are linked against the old hiredis v0.13
* Fix warnings, when compiled with -Wshadow
* Make hiredis compile in Cygwin on Windows, now CI-tested
* Bulk and multi-bulk lengths less than -1 or greater than `LLONG_MAX` are now
protocol errors. This is consistent with the RESP specification. On 32-bit
platforms, the upper bound is lowered to `SIZE_MAX`.
**BREAKING CHANGES**:
* Change `redisReply.len` to `size_t`, as it denotes the the size of a string
User code should compare this to `size_t` values as well.
If it was used to compare to other values, casting might be necessary or can be removed, if casting was applied before.
* Remove backwards compatibility macro's
This removes the following old function aliases, use the new name now:
| Old | New |
| --------------------------- | ---------------------- |
| redisReplyReaderCreate | redisReaderCreate |
| redisReplyReaderCreate | redisReaderCreate |
| redisReplyReaderFree | redisReaderFree |
| redisReplyReaderFeed | redisReaderFeed |
| redisReplyReaderGetReply | redisReaderGetReply |
| redisReplyReaderSetPrivdata | redisReaderSetPrivdata |
| redisReplyReaderGetObject | redisReaderGetObject |
| redisReplyReaderGetError | redisReaderGetError |
* The `DEBUG` variable in the Makefile was renamed to `DEBUG_FLAGS`
Previously it broke some builds for people that had `DEBUG` set to some arbitrary value,
due to debugging other software.
By renaming we avoid unintentional name clashes.
Simply rename `DEBUG` to `DEBUG_FLAGS` in your environment to make it working again.
3.12.0
* Bulk insert (`insert_many()` and `insert_from()`) will now return the row
count instead of the last insert ID. If you are using Postgres, peewee will
continue to return a cursor that provides an iterator over the newly-inserted
primary-key values by default. This behavior is being retained by default for
compatibility. Postgres users can simply specify an empty `returning()` call
to disable the cursor and retrieve the rowcount instead.
* Migration extension now supports altering a column's data-type, via the new
`alter_column_type()` method.
* Added `Database.is_connection_usabe()` method, which attempts to look at the
status of the underlying DB-API connection to determine whether the
connection is usable.
* Common table expressions include a `materialized` parameter, which can be
used to control Postgres' optimization fencing around CTEs.
* Added `BloomFilter.from_buffer()` method for populating a bloom-filter from
the output of a previous call to the `to_buffer()` method.
* Fixed APSW extension's `commit()` and `rollback()` methods to no-op if the
database is in auto-commit mode.
* Added `generate_always=` option to the `IdentityField` (defaults to False).
asyncpg v0.20.0
Improvements
Support Python 3.8
Support PgBouncer by sending only a single SYNC message per query
Bug Fixes
Handle IP values with prefix in "inet" type as ipaddress.IPvXInterface
Close transport if connection times out
Use faster UUID codecs; make UUID decoding/encoding/operations 2-7x faster
Use loop.start_tls() to upgrade connections to SSL
Build
Bump Cython to 0.29.14
Hi all, Redis 5.0.7 fixes a number of bugs, none is very critical, however
there are a few that may have an impact. It's a good idea to upgrade.
There are fixes in the area of replication from modules commands and
callbacks, AOF fsync (non critical issue), memory leaks (very rare and small),
streams beahvior (non critical), and a potential crash in commands
processing multiple keys at the same time that is there for years, and happens
very rarely, but is not impossible to trigger.
PostgreSQL 12.1, 11.6, 10.11, 9.6.16, 9.5.20, and 9.4.25 Released!
PostgreSQL 9.4 EOL Approaching
PostgreSQL 9.4 will stop receiving fixes on February 13, 2020, which is the next planned cumulative update release. Please see our versioning policy for more information.
Bug Fixes and Improvements
This update also fixes over 50 bugs that were reported in the last several months. Some of these issues affect only version 12, but may also affect all supported versions.
Some of these fixes include:
Fix crash that occurs when ALTER TABLE adds a column without a default value along with other changes that require a table rewrite
Several fixes for REINDEX CONCURRENTLY.
Fix for VACUUM that would cause it to fail under a specific case involving a still-running transaction.
Fix for a memory leak that could occur when VACUUM runs on a GiST index.
Fix for an error that occurred when running CLUSTER on an expression index.
Fix failure for SET CONSTRAINTS ... DEFERRED on partitioned tables.
Several fixes for the creation and dropping of indexes on partitioned tables.
Fix for partition-wise joins that could lead to planner failures.
Ensure that offset expressions in WINDOW clauses are processed when a query's expressions are manipulated.
Fix misbehavior of bitshiftright() where it failed to zero out padding space in the last byte if the bit string length is not a multiple of 8. For how to correct your data, please see the "Updating" section.
Ensure an empty string that is evaluated by the position() functions returns 1, as per the SQL standard.
Fix for a parallel query failure when it is unable to request a background worker.
Fix crash triggered by a case involving a BEFORE UPDATE trigger.
Display the correct error when a query tries to access a TOAST table.
Allow encoding conversion to succeed on strings with output up to 1GB. Previously there was hard limit of 0.25GB on the input string.
Ensure that temporary WAL and history files are removed at the end of archive recovery.
Avoid failure in archive recovery if recovery_min_apply_delay is enabled.
Ignore restore_command, recovery_end_command, and recovery_min_apply_delay settings during crash recovery.
Several fixes for logical replication, including a failure when the publisher and subscriber had different REPLICA IDENTITY columns set.
Correctly timestamp replication messages for logical decoding, which in the broken case would lead to pg_stat_subscription.last_msg_send_time set to NULL.
Several fixes for libpq, including one that improves PostgreSQL 12 compatibility.
Several pg_upgrade fixes.
Fix how a parallel restore handles foreign key constraints on partitioned tables to ensure they are not created too soon.
pg_dump now outputs similarly named triggers and RLS policies in order based on table name, instead of OID.
Fix pg_rewind to not update the contents of pg_control when using the --dry-run option.
This update also contains tzdata release 2019c for DST law changes in Fiji and Norfolk Island. Historical corrections for Alberta, Austria, Belgium, British Columbia, Cambodia, Hong Kong, Indiana (Perry County), Kaliningrad, Kentucky, Michigan, Norfolk Island, South Korea, and Turkey.
What's new in 1.4.5
* The ``auth_plugin`` option is added.
What's new in 1.4.4
* ``charset`` option is passed to ``mysql_options(mysql, MYSQL_SET_CHARSET_NAME, charset)``
before ``mysql_real_connect`` is called.
This avoid extra ``SET NAMES <charset>`` query when creating connection.
What's new in 1.4.3
* ``--static`` build supports ``libmariadbclient.a``
* Try ``mariadb_config`` when ``mysql_config`` is not found
* Fixed warning happend in Python 3.8
* Fixed ``from MySQLdb import *``, while I don't recommend it.
* Fixed SEGV ``MySQLdb.escape_string("1")`` when libmariadb is used and
no connection is created.
* Fixed many circular references are created in ``Cursor.executemany()``.
What's new in 1.4.2
* Fix Django 1.11 compatibility.
mysqlclient 1.5 will not support Django 1.11. It is not because
mysqlclient will break backward compatibility, but Django used
unsupported APIs and Django 1.11 don't fix bugs including
compatibility issues.
What's new in 1.4.1
* Fix dict parameter support
What's new in 1.4.0
* Dropped Python 3.4 support.
* Removed ``threadsafe`` and ``embedded`` build options.
* Remove some deprecated cursor classes and methods.
* ``_mysql`` and ``_mysql_exceptions`` modules are moved under
``MySQLdb`` package.
* Remove ``errorhandler`` from Connection and Cursor classes.
* Remove context manager API from Connection. It was for transaction.
New context manager API for closing connection will be added in future version.
* Remove ``waiter`` option from Connection.
* Remove ``escape_sequence``, and ``escape_dict`` methods from Connection class.
* Remove automatic MySQL warning checking.
* Drop support for MySQL Connector/C with MySQL<5.1.12.
* Remove ``_mysql.NULL`` constant.
* Remove ``_mysql.thread_safe()`` function.
* Support non-ASCII field name with non-UTF-8 connection encoding.
* Optimize decoding speed of string and integer types.
* Remove ``MySQLdb.constants.REFRESH`` module.
* Remove support for old datetime format for MySQL < 4.1.
* Fix wrong errno is raised when ``mysql_real_connect`` is failed.
What's new in 1.3.14
* Support static linking of MariaDB Connector/C
* Better converter for Decimal and Float
* Add ``Connection._get_native_connection`` for XTA project
* Fix SEGV on MariaDB Connector/C when some methods of ``Connection``
objects are called after ``Connection.close()`` is called.
* Fix ``Connection.client_flag``
* Fix SSCursor may raise same exception twice
* This removed ``Cursor._last_executed`` which was duplicate of ``Cursor._executed``.
Both members are private. So this type of changes are not documented in changelog
generally. But Django used the private member for ``last_executed_query`` implementation.
If you use the method the method directly or indirectly, this version will break
your application. See https://code.djangoproject.com/ticket/30013
* ``waiter`` option is now deprecated.
* Fixed SSL support is not detected when built with MySQL < 5.1
what is new for perl v5.30.1
Incompatible Changes
There are no changes intentionally incompatible with 5.30.1. If any
exist, they are bugs, and we request that you submit a report. See
"Reporting Bugs" below.
Modules and Pragmata
Updated Modules and Pragmata
o Module::CoreList has been upgraded from version 5.20190522 to
5.20191110.
Documentation
Changes to Existing Documentation
We have attempted to update the documentation to reflect the changes
listed in this document. If you find any we have missed, send email to
perlbug@perl.org <mailto:perlbug@perl.org>.
Additionally, documentation has been updated to reference GitHub as the
new canonical repository and to describe the new GitHub pull request
workflow.
Configuration and Compilation
o The "ECHO" macro is now defined. This is used in a "dtrace" rule
that was originally changed for FreeBSD, and the FreeBSD make
apparently predefines it. The Solaris make does not predefine
"ECHO" which broke this rule on Solaris.
Testing
Tests were added and changed to reflect the other additions and changes
in this release.
Platform Support
Platform-Specific Notes
Win32
The locale tests could crash on Win32 due to a Windows bug, and
separately due to the CRT throwing an exception if the locale name
wasn't validly encoded in the current code page.
For the second we now decode the locale name ourselves, and always
decode it as UTF-8.
Selected Bug Fixes
o Setting $) now properly sets supplementary group ids, if you have
the necessary privileges.
o "readline @foo" now evaluates @foo in scalar context. Previously,
it would be evaluated in list context, and since readline() pops
only one argument from the stack, the stack could underflow, or be
left with unexpected values on it.
o sv_gets() now recovers better if the target SV is modified by a
signal handler.
o Matching a non-"SVf_UTF8" string against a regular expression
containing Unicode literals could leak an SV on each match attempt.
o "sprintf("%.*a", -10000, $x)" would cause a buffer overflow due to
mishandling of the negative precision value.
o "scalar()" on a reference could cause an erroneous assertion
failure during compilation.
Redis 5.0.6
Upgrade urgency CRITICAL: Only in case of exposed instances to untrusted users.
This Redis release, 5.0.6, is a bugfix and enhancement release. The most
important bugfix is a corruption related to the HyperLogLog. A malformed
HyperLogLog string could cause an invalid access to the memory. At a first
glance the vulnerability appears to be not exploitable but just a DoS. The
way to trigger the issue is complex, we'll not provide any information about
how to do that for the users safety.
Other significant changes in this release:
* New modules APIs merged from Redis unstable to Redis 5.
* Some memory optimization related to objects creation.
* Fixes to flushSlaveOutputBuffer() that make sure that SHUTDOWN will
transfer pending buffers to replicas.
2.13.1:
[BUGFIX] Fix panic in ARM builds of Prometheus.
[BUGFIX] promql: fix potential panic in the query logger.
[BUGFIX] Multiple errors of http: superfluous response.WriteHeader call in the logs.
Update ruby-sequel to 5.26.0.
=== 5.26.0 (2019-11-01)
* Recognize two additional foreign key constraint violation codes on MySQL 8.0.13+ (rianmcguire) (#1657)
* Support table aliases for single-table INSERT statements on PostgreSQL 9.5+ (jeremyevans) (#1656)
* Implement Sequel::Postgres::PGRange#hash so instances work correctly in hashes (jeremyevans) (#1648)
* Make dirty plugin work correctly with typecast_on_load plugin (jeremyevans) (#1647)
* Add support for :require_modification option when setting up nested_attributes (jeremyevans)
* Add support for SQL/JSON path expressions to the pg_json_ops extension, supported by PostgreSQL 12+ (jeremyevans)
0.63 21 July 2019
* added 000preret.t
Dump version info in "make test"
0.62 20 July 2019
* default to /usr/local/BerkeleyDB
fcc0ad8adf310f7c8cc65788806439f2f8c39f90
* __heap_exist prototype needed for db 5.2 or better
7fe4ad8d74190d7f41a816c79e5ccf044c02c7c9
* t/joint.: Silence Valgrinf
https://rt.cpan.org/Ticket/Display.html?id=125605
40d03924570f8516efe4a05982f402e8ce569637
* db_remove missing txn code
https://rt.cpan.org/Ticket/Display.html?id=124979
b91875a9f3f55bb779ad7a448c9fff0645d8a527
* Fix test failure when TRACE is enabled
bb80b7d0fb83643ccddd8243d4c6b6ab637428df
* Added BERKELEYDB_DEFINE_TRACE variable to allow TRACE to be enabled
from .travis file.
bd9ebf5aa149172afab55d6ba6f27d77cf08d91a
* Add test with BERKELEYDB_DEFINE_TRACE set to .travis
000b1d8dffe542d6476fe78f218cc95534f1c1c3
* my_db_strerror: Add missing dTHX declaration
Merge pull request https://github.com/pmqs/BerkeleyDB/pull/2
4273345d8eff5f521788b3c5e71fb291bf46a646
80ca9b77968ab84aaf8b546f2933d135202e16e0
* create .appveyor.yml
4e7b034ddbe76a7c2dcd189e1e0c935c1559aa2c
* sync dbinfo from DB_File
27b499fa9dbfca78adcc7a12ada43f0b05b6ece6
0.61 30 March 2019
* Fix a couple of typos
One's a copyright date out by 20 years.
The other one breaks builds with 5.2 竕、 BDB < 6.2.
Merge pull request https://github.com/pmqs/BerkeleyDB/pull/1
0.60 30 March 2019
* Moved source to github https://github.com/pmqs/BerkeleyDB
* Add META_MERGE to Makefile.PL
* Added meta-json.t & meta-yaml.t
0.58 23 January 2018
* please expose set_lg_filemode
[RT #124979]
0.57 23 January 2018
* Updates for BDB 6.3
0.56 5 January 2016
* Updates for BDB 6.2
The current code uses functions that are only available in newer releases of
Oracle Solaris, so disable for now to fix illumos and others. This could be
improved with proper feature tests.
repmgr 5.0 is a major release.
* Configuration file parsing has been made stricter
* Some "repmgr daemon ..." commands renamed
* Some deprecated command line options removed
* Support for PostgreSQL 12 added.
* The repmgr configuration file is now parsed using flex, meaning it will be parsed in the same way as PostgreSQL parses its own configuration files.
* repmgr standby clone: checks for availability of the repmgr extension on the upstream node have been improved and error messages improved.
* When executing repmgr remotely, if the repmgr log level was explicitly provided (with -L/--log-level), that log level will be passed to the remote repmgr.
* Bug fixes
Update ruby-sequel to 5.25.0.
=== 5.25.0 (2019-10-01)
* Fix Sequel::SQL::NumericMethods#coerce to not raise NoMethodError if super method is not defined (jeremyevans) (#1645)
* Allow setting a default for a column that already has a default on Microsoft SQL Server (jeremyevans)
* Fix keyword argument separation warnings on Ruby master branch in csv_serializer plugin (jeremyevans)
* Add association_multi_add_remove plugin for adding/removing multiple associated objects in a single method call (AlexWayfer, jeremyevans) (#1641, #1643)
* Make sharding plugin integrate with server_block extension (jeremyevans)
1.2.0
* Adapters::Sequel - fix for compatibility with new version of JDBC SQLite
* Adapters::Couch - refactor of error handling, #clear, #merge!, #slice, rev caching
* Fallback - add fallback proxy (#162)
* Pool - rewrite to enable limiting of size, gradual shrinking
* Enumerable - add proxy providing Enumerable API (using #each_key)
* Adapters::Couch, Adapters::RestClient - add Faraday :adapter option
* Adapters::Couch - add :full_commit and :batch options to some operations
* Adapters::LRUHash - rewrite to take advantage of ordered hashes
* Adapters::ActiveRecord - recover from deadlock during increment
Psycopg 2.8.4
The release brings a few assorted bugfixes and adds support for Python 3.8 and PostgreSQL 12.
A more detailed changes list is
* Fixed building with Python 3.8.
* Don't swallow keyboard interrupts on connect when a password is specified in the connection string.
* Don't advance replication cursor when the message wasn't confirmed.
* Fixed inclusion of time.h on linux.
* Fixed int overflow for large values in Column.table_oid and Column.type_code.
* errorcodes map and errors classes updated to PostgreSQL 12.
* Wheel package compiled against OpenSSL 1.1.1d and PostgreSQL at least 11.4.