default and bump PKGREVISION to 2.
Also, don't depend on python unless the python option is turned
on, and make the lua bindings behave themselves on netbsd where
there's a copy of lua in base.
Note that the ruby bindings are built in a separate package
(databases/ruby-rrdtool) ...probably the python bindings should be as
well. Also note that there's another apparently different set of
python bindings in databases/py-python-rrdtool. I have no idea which
is preferred.
------------------------------------------
--- 2.0.62 2016/01/30
Zebra SCM moved to GitHub https://github.com/indexdata/idzebra
Make packages for Ubuntu 15.10/Wily Werewolf.
Fix incorrect scan terms with result set limit. Closes#1
Fix documentation of of chr's equivalent directive ZEB-672
And add a few tests for the behavior.
Allow @attr 2=102 for numeric index
--- 2.0.61 2015/09/15
Upgrade to debhelper version 7
Not upgrading to version 9 now. It would move libraries and modules
to /usr/lib/{arch}.
Many documentation fixes. Thanks to David Crossley.
Build: Remove Debian squeeze. Add CentOS 7. Remove Ubuntu Saucy.
Add Ubuntu Vivid.
Fix modulePath for examples ZEB-665
Fix typo in path to oai-pmh example
--- 2.0.60 2015/02/06
Fix ICU phrase searches for terms split by ICU ZEB-664
Update Visual Studio nmake file for VS 2013.
was being checked and not the gcc toolchain's use of __aarch64__.
db6 does support the 64-bit ARM platform.
previous condition put back as it was prior.
ride PKGREVISION bump
build on aarch64 Linux
Also add '--enable-dbm' to CONFIGURE_ARGS (legacy dbm interface) in
order to be compatible with db4 builds which happens to fix obscure
build errors on aarch64 Linux with packages such as python27.
bump PKGREVISION to pick up change
Update COMMENT
Upstream changes:
bsddb3-6.2.1: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.3-3.5, and Berkeley DB 4.7, 4.8, 5.1, 5.3, 6.1 and 6.2. (20160510)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use Berkeley DB version up to (and including) 5.3. You can use that Berkeley DB version with this bindings release.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Correctly detect Berkeley DB installations in modern 64 bits Debians.
bsddb3-6.2.0: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.3-3.5, and Berkeley DB 4.7, 4.8, 5.1, 5.3, 6.1 and 6.2. (20160421)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use Berkeley DB version up to (and including) 5.3. You can use that Berkeley DB version with this bindings release.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Support Berkeley DB 6.2.x.
Declare Python 3.5 support for PyPI.
Drop support for Python 3.2. If you need compatibility with that version, you can keep using old releases of these bindings.
Drop support for Berkeley DB 5.0, 5.2 and 6.0. If you need compatibility with those versions, you can keep using old releases of these bindings.
bsddb3-6.1.1: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.2-3.5, and Berkeley DB 4.7-6.1. (20151107)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use BDB version up to (and including) 5.3.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Compatibility with Python 3.5.
Code cleanup after dropping Python 2.4/2.5 support.
PGP key changed.
Support for DB_FORCESYNCENV flag in "DB_ENV.close()".
Support for DB_LOG_NOSYNC flag in "DB_ENV.log_set_config()".
Fix tests under Windows. See https://bugs.python.org/issue22943 .
Solve an incorrect parameter verification with the "DB.compact()" method call.
Solve a compilation warning when compiling the bindings for Python 3.5 and Berkeley DB 4.8, 5.0 or 5.1.
bsddb3-6.1.0: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.2-3.4, and Berkeley DB 4.7-6.1. (20140721)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use BDB version up to (and including) 5.3.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Support Berkeley DB 6.1.x.
Solve a ResourceWarning when compiling.
Drop support for Python 2.4, 2.5 and 3.1. If you need compatibility with those versions, you can keep using old releases of these bindings.
Drop support for Berkeley DB 4.3, 4.4, 4.5, 4.6. If you need compatibility with those versions, you can keep using old releases of these bindings.
From now on, our support reference is Red Hat Enterprise Linux 6.
Drop modules attributes "cvsid".
Drop (hidden) $Id$ keyword in the documentation.
Upstream changes:
2016-08-23 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.036)
Stable version, to include all changes since 4.035.
2016-08-19 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.035_03)
* By mistake, when DBD::mysql was compiled against libmariadb, it
did not compile in SSL support.
Reported by Jitka Plesnikova @ Red Hat
(https://rt.cpan.org/Public/Bug/Display.html?id=116959)
(https://bugzilla.redhat.com/show_bug.cgi?id=1366773)
* If the database test server was not on localhost and the test database was
not yet created, we would not correctly create the test database.
Reported by Vladimir Marek.
(https://rt.cpan.org/Ticket/Display.html?id=112072)
2016-08-11 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.035_02)
* Test 56connattr.t failed when run when performance schema is enabled, but
tests were run as a user with limited permissions.
Reported by J矇r繫me �t矇v矇.
(https://rt.cpan.org/Public/Bug/Display.html?id=115980)
* In 4.033_03 we added a patch from Petr P穩sa� @ Red Hat for a problem on
64-bit big-endian systems. The patch was applied but the unit test was not,
also, there was no entry in the change log.
Unit test provided by Vladimir Marek.
t/40server_prepare.t test failed on s390x platform. Server-prepared
values of types int, smallint, and tinyint are passed to application
as 32-bit integer. The same buffer was interpreted as long integer
by DBD::MySQL. This caused misaligned read/write and bogus
interpretation of the values.
(https://rt.cpan.org/Public/Bug/Display.html?id=57266)
* Remove dropdb, createdb, reload and shutdown admin functions from perldoc.
These are deprecated by the C API.
Use 'CREATE DATABASE..', 'DROP DATABASE...' and other SQL commands instead.
* Test rt75353-innodb-lock-timeout.t fails on MySQL Server 5.1 and earlier
because innodb_lock_wait_timeout is not modifyable per session.
* Test rt25389-bin-case.t does not work on MySQL Server < 5.1, reported by
GAAS.
2016-08-01 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.035_01)
* Apparently, on t/31insertid.t, there is one test that fails when compiled
against libmysqlclient 5.7 or up; issuing a SELECT statement on the same
database handle that previously executed an INSERT clears
$dbh->{mysql_insertid}, while previously this was retained.
(https://rt.cpan.org/Ticket/Display.html?id=108000)
* Removed appveyor.yml and mysql.mtest from CPAN releases.
* Converted README.pod to README.md because of installation failures on
FreeBSD, reported by Don Randolph.
(https://rt.cpan.org/Public/Bug/Display.html?id=114177)
pkgsrc changes:
* Overhaul Makefile.
- Remove use of INSTALL_DIRS and simplify install process.
- Utilize pkgsrc SUBST_*.
- Stop other pkglint warninggs.
* Drop some dot files from installation.
Quote from Changes:
4.6.4 (2016-08-16)
- issue [security] Weaknesses with cookie encryption, see PMASA-2016-29
- issue [security] Improve session cookie code for openid.php and signon.php example files
- issue [security] Full path disclosure in openid.php and signon.php example files
- issue [security] Multiple XSS vulnerabilities, see PMASA-2016-30
- issue [security] Multiple XSS vulnerabilities, see PMASA-2016-31
- issue [security] Unsafe generation of BlowfishSecret (when not supplied by the user)
- issue [security] Referrer leak when phpinfo is enabled
- issue [security] PHP code injection, see PMASA-2016-32
- issue [security] Full path disclosure, see PMASA-2016-33
- issue [security] SQL injection attack, see PMASA-2016-34
- issue [security] Local file exposure through LOAD DATA LOCAL INFILE, see PMASA-2016-35
- issue [security] Local file exposure through symlinks with UploadDir, see PMASA-2016-36
- issue [security] Path traversal with SaveDir and UploadDir, see PMASA-2016-37
- issue [security] Multiple XSS vulnerabilities, see PMASA-2016-38
- issue [security] SQL injection vulnerability as control user, see PMASA-2016-39
- issue [security] SQL injection vulnerability, see PMASA-2016-40
- issue [security] Denial-of-service attack through transformation feature, see PMASA-2016-41
- issue [security] SQL injection vulnerability as control user, see PMASA-2016-42
- issue [security] Verify data before unserializing, see PMASA-2016-43
- issue [security] Use HTTPS for wiki links
- issue Remove Swekey support
- issue [security] SSRF in setup script, see PMASA-2016-44
- issue [security] Denial-of-service attack with $cfg['AllowArbitraryServer'] = true and persistent connections, see PMASA-2016-45
- issue [security] Improve SSL certificate handling
- issue [security] Fix full path disclosure in debugging code
- issue [security] Possible circumvention of IP-based allow/deny rules with IPv6 and proxy server, see PMASA-2016-47
- issue [security] Detect if user is logged in, see PMASA-2016-48
- issue [security] Bypass URL redirection protection, see PMASA-2016-49
- issue [security] Referrer leak, see PMASA-2016-50
- issue [security] Reflected File Download, see PMASA-2016-51
- issue [security] ArbitraryServerRegexp bypass, see PMASA-2016-52
- issue [security] Denial-of-service attack by entering long password, see PMASA-2016-53
- issue [security] Remote code execution vulnerability when running as CGI, see PMASA-2016-054
- issue [security] Administrators could trigger SQL injection attack against users
- issue [security] Denial-of-service attack when PHP uses dbase extension, see PMASA-2016-55
- issue [security] Remove tode execution vulnerability when PHP uses dbase extension, see PMASA-2016-56
- issue [security] Denial-of-service attack by using for loops, see PMASA-2016-46
- issue Include X-Robots-Tag header in responses
- issue Enforce numeric field length when creating table
- issue Fixed invalid Content-Length in some HTTP responses
- issue #12394 Create view should require a view name
- issue #12391 Message with 'Change password successfully' displayed, but does not take effect
- issue Tighten control on PHP sessions and session cookies
- issue #12409 Re-enable overhead on server databases view
- issue #12414 Fixed rendering of Original theme
- issue #12413 Fixed deleting users in non English locales
- issue #12416 Fixed replication status output in Databases listing
- issue #12303 Avoid typecasting to float when not needed
- issue #12425 Duplicate message variable names in messages.inc.php
- issue #12399 Adding index to table shows wrong top navigation
- issue #12424 Fixed password change on MariaDB without auth plugin
- issue #12339 Do not error on unset server port
- issue #12422 Improvements to the original theme
- issue #12395 Do not try to load old transformation plugins
- issue #12423 Fixed replication status in database listing
- issue #12433 Copy table with prefix does not copy the indexes
- issue #12375 Search in database: Window content is not scrolling down when clicking first time on Browse link
- issue #12346 SQL Editor textareas can have their size increased from the top, distorting the page view
Security Issues
---------------
Two security holes have been closed by this release:
CVE-2016-5423: certain nested CASE expressions can cause the server to crash.
CVE-2016-5424: database and role names with embedded special characters can allow code injection during administrative operations like pg_dumpall.
The fix for the second issue also adds an option, -reuse-previous, to psql's \connect command. pg_dumpall will also refuse to handle database and role names containing line breaks after the update. For more information on these issues and how they affect backwards-compatibility, see the Release Notes.
Bug Fixes and Improvements
--------------------------
This update also fixes a number of bugs reported in the last few months. Some of these issues affect only version 9.5, but many affect all supported versions:
Fix misbehaviors of IS NULL/IS NOT NULL with composite values
Fix three areas where INSERT ... ON CONFLICT failed to work properly with other SQL features.
Make INET and CIDR data types properly reject bad IPv6 values
Prevent crash in "point ## lseg" operator for NaN input
Avoid possible crash in pg_get_expr()
Fix several one-byte buffer over-reads in to_number()
Don't needlessly plan query if WITH NO DATA is specified
Avoid crash-unsafe state in expensive heap_update() paths
Fix hint bit update during WAL replay of row locking operations
Avoid unnecessary "could not serialize access" with FOR KEY SHARE
Avoid crash in postgres -C when the specified variable is a null string
Fix two issues with logical decoding and subtransactions
Ensure that backends see up-to-date statistics for shared catalogs
Prevent possible failure when vacuuming multixact IDs in an upgraded database
When a manual ANALYZE specifies columns, don't reset changes_since_analyze
Fix ANALYZE's overestimation of n_distinct for columns with nulls
Fix bug in b-tree mark/restore processing
Fix building of large (bigger than shared_buffers) hash indexes
Prevent infinite loop in GiST index build with NaN values
Fix possible crash during a nearest-neighbor indexscan
Fix "PANIC: failed to add BRIN tuple" error
Prevent possible crash during background worker shutdown
Many fixes for issues in parallel pg_dump and pg_restore
Make pg_basebackup accept -Z 0 as no compression
Make regression tests safe for Danish and Welsh locales
- Recheck the list of slaves while OSC runs
- pt-osc should error if server is a slave in row based
replication
- pt-table-checksum should force replica table charset to utf8
- Added --create-table-engine param to pt-heartbeat
- SlowLogParser is able to handle dates in RFC339 format for MySQL
5.7
- pt-kill leaks memory each time it kills a query
- Large BLOB/TEXT/BINARY Produces NULL Checksum
- Fixed pt-archiver deletes wrong rows #103
- Added --slave-user and --slave-password to
pt-online-schema-change & pt-table-sync
- Handle GTID ranges where the left-side integer is larger than 9
- Remove extra word 'default' from the --verbose help
- add enum column type to is_char check so that values are
properly quoted
- some of the drivers now export client library functions to the
programmer via the dbi_driver_specific_function() interface
- if necessary, the drivers now support libdbi instances
- a segfault in the oracle driver caused by INSERT statements was
fixed
- the pgsql driver now supports features specific to PostgreSQL 9
and later
- drivers now support transactions and savepoints if the
underlying database engines do
- additional libdbi hint about position in a result set allows
tremendous speedup of sequential reads from MySQL result sets
- various memory leaks were plugged
- database specific test scripts allow tests without affecting
existing database clusters
- completely rewritten test kit increases coverage and improves
error reporting
Bugfixes
- libdbi now supports using custom driver functions correctly
(none of the drivers had implemented this feature before
libdbi-drivers 0.9.0, so this was not really a problem).
- a variety of other bug fixes too numerous to list here, see
ChangeLog
Improvements
- libdbi now supports several independent "instances" per
process. This makes the library safe to use in programs that
dlopen() plugins at runtime which in turn are linked against
libdbi. The new function dbi_initialize_r() creates a handle
which the functions dbi_shutdown_r(), dbi_set_verbosity_r(),
dbi_driver_list_r(), dbi_driver_open_r(), and dbi_conn_new_r()
use to operate on a particular instance. A new function
dbi_driver_get_instance() helps to determine the instance at
runtime.
The old interface (with just one instance per process which is
managed internally) is still around but deprecated. See the file
UPGRADING for detailed instructions.
- libdbi now provides functions for managing transactions and
savepoints
- libdbi now provides a hint to drivers indicating the current
position in a result set. This allows drivers to implement
additional optimizations
- the libtool library versioning numbers were now set
appropriately (they had fallen out of maintenance somehow in
the past), and starting with this release the release number
will match the libtool numbering scheme. libtool manages shared
objects in a way to allow the loader to detect whether an
application was linked against a compatible version of
a library. This will avoid runtime errors in future releases
if backwards-incompatible changes are necessary.
- pgk-config (http://pkg-config.freedesktop.org/wiki/) is now
supported
- if CFLAGS is set in the environment, it is now used
appropriately in ./configure
=== 4.37.0 (2016-08-01)
* Add support for regular expression matching on Oracle 10g+ using REGEXP_LIKE (johndcaldwell) (#1221)
* Recognize an additional disconnect error in the postgres adapter (jeremyevans)
* Make connection pool remove connections for disconnect errors not raised as DatabaseDisconnectError (jeremyevans)
* Support mysql2 0.4+ native prepared statements and bound variables (jeremyevans)
* Add Database#values for VALUES support on SQLite 3.8.3+ (jeremyevans)
* Support create_view :columns option on SQLite 3.9.0+ (jeremyevans)
* Make migration reverser handle alter_table add_constraint using a hash as the first argument (soupmatt) (#1215)
* Make ASTTransformer handle Sequel.extract (jeremyevans) (#1213)
Add flag for Darwin linker to resolve symbols from external libraries at
runtime.
Handle dylib file extension for module.
Add comment to describe patch-aa.
ok alnsn@
2.4.0 (2016-08-17)
- ping now ignores all TransportError exceptions and just returns
False
- expose scroll_id on ScanError
- increase default size for scan helper to 1000
- changed Transport.perform_request to just return the body, not
status as well.
2.3.0 (2016-02-29)
- added client_key argument to configure client certificates
- debug logging now includes response body even for failed requests
2.3.5
There are no changes in Elasticsearch 2.3.5 except for the version
bump. This is a compatibility release for bug fixes in Marvel,
Watcher, and Shield.
2.3.4
Bulk
- Copy headers and context to individual requests inside a bulk
CAT API
- Fix merge stats rendering in RestIndicesAction
- Expand wildcards to closed indices in /_cat/indices
Cluster
- Fix block checks when no indices are specified
Core
- Fix misplaced cast when parsing seconds
Highlighting
- Skip all geo point queries in plain highlighter
Internal
- Fix filtering of node ids for TransportNodesAction
Percolator
- Fixed NPE when percolator filter option is "empty".
REST
- Do not decode path when sending error
Translog
- Translog can delete valid .ckp file when views are closed after
the translog
- Dates
Upgrade joda-time to 2.9.4
* Dario Teixeira: migrate syntax extension from OCaml-pcre to OCaml-re.
* Rudi Grinberg: migrate core library from OCaml-pcre to OCaml-re.
* Rudi Grinberg: add unit tests for regular expressions.
* Evgenii Lepikhin: add support for types UUID and JSONB.
* Philippe Wang: add support for type CITEXT.
Changed default configuration setting for loadable extensions
on Mac OS X. Due to frequent installation issues the default
setting is now to turn off loadable extensions on that platform.
You will have to explicitly turn them on if you need them.
Fixed a bug finalizing user-defined functions for a database.
More build process improvements for Homebrew users.
Improved build process for Homebrew users.
Major API change that is compatible with major release series 2:
It is now possible to return errors from user-defined SQL-functions
by simply raising (arbitrary) exceptions. This somewhat
tricky internal change eliminates the need for Data.ERROR and
reestablishes compatibility with major release series 2.
Sorry for the churn, but the more elegant solution was not
quite obvious!
Added user function error handling (major API change).
Fixed a build problem due to Oasis/ocamlbuild inconsistency.
Fixed a callback locking bug when encountering rows containing
unexpected NULLs.
- The driver can now use the native TLS and crypto functions
included in Mac OS X and Windows.
- The driver implements the MongoDB Command Monitoring Spec.
- New functions mongoc_client_set_error_api and
mongoc_client_pool_set_error_api
allow applications to distinguish client and server errors.
- Unacknowledged writes (writes whose mongoc_write_concern_t "w"
value is zero) now reply with an empty document instead of one
with nInserted: 0, nUpdated: 0, and so on.
- Public API For Higher-Level Drivers
- New connection string option "localThresholdMS".
- zSeries, POWER8, and ARM 64-bit platform support.
- Performance enhancements, reduce allocation and copying in
command code.
- All man page names now begin with "mongoc_" to avoid install
conflicts.
- New function mongoc_gridfs_file_set_id.
* A performance enhancement to the page-cache "truncate" operation reduces COMMIT time by dozens of milliseconds on systems with a large page cache.
* Fix to the --rbu option of sqldiff.
Added support for WITHOUT ROWID virtual tables.
Improved the query planner so that the OR optimization can be used on virtual tables even if one or more of the disjuncts use the LIKE, GLOB, REGEXP, MATCH operators.
Added the CSV virtual table for reading RFC 4180 formatted comma-separated value files.
Added the carray() table-valued function extension.
Enabled persistent loadable extensions using the new SQLITE_OK_LOAD_PERMANENTLY return code from the extension entry point.
Added the SQLITE_DBSTATUS_CACHE_USED_SHARED option to sqlite3_db_status().
Add the vfsstat.c loadable extension - a VFS shim that measures I/O together with an eponymous virtual table that provides access to the measurements.
Improved algorithm for running queries with both an ORDER BY and a LIMIT where only the inner-most loop naturally generates rows in the correct order.
Enhancements to Lemon parser generator, so that it generates a faster parser.
The PRAGMA compile_options command now attempts to show the version number of the compiler that generated the library.
Enhance PRAGMA table_info so that it provides information about eponymous virtual tables.
Added the "win32-none" VFS, analogous to the "unix-none" VFS, that works like the default "win32" VFS except that it ignores all file locks.
The query planner uses a full scan of a partial index instead of a full scan of the main table, in cases where that makes sense.
Allow table-valued functions to appear on the right-hand side of an IN operator.
Created the dbhash.exe command-line utility.
Added two new C-language interfaces: sqlite3_expanded_sql() and sqlite3_trace_v2(). These new interfaces subsume the functions of sqlite3_trace() and sqlite3_profile() which are now deprecated.
Added the json_quote() SQL function to the json1 extension.
Disable the authorizer callback while reparsing the schema.
Added the SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION compile-time option and turned that option on by default when building the command-line shell.
Bug Fixes:
Fix the ALTER TABLE command so that it does not corrupt descending indexes when adding a column to a legacy file format database.
Fix a NULL-pointer dereference/crash that could occurs when a transitive WHERE clause references a non-existent collating sequence.
Improved the cost estimation for an index scan which includes a WHERE clause that can be partially or fully evaluated using columns in the index and without having to do a table lookup. This fixes a performance regression that occurred for some obscure queries following the ORDER BY LIMIT optimization introduced in version 3.12.0.
Bugs fixed and general cleanups
- fixed some bugs related to the Cython extension build process.
- allow blanks and perform type conversion when using the db_url
extension
- added the ability to query using the <foreign_key>_id attribute.
- ensure that peewee.OperationalError is raised consistently when
using the RetryOperationalError mixin.
- ensure that pwiz will import the appropriate extensions when
vendor-specific fields are used.
- ensure that pwiz-generated models containing UnknownField
placeholders do not blow up when you instantiate them.
- correctly limit the length of automatically-generated index
names.
- fixed bug where BlobField could not be used if it's parent model
pointed to an uninitialized database Proxy.
- greater consistency with the conversion to Python data-types
when performing aggregations, annotations, or calling scalar().
- ensure the correct data-types are used when initializing a
connection pool.
- fix bug where Signal subclasses were not returning rows affected
on save.
- added documentation about SQLite limits and how they affect
insert_many.
- better warnings regarding C extension compilation, thanks
@dhaase-de.
- fix bug where table names starting with numbers generated
invalid table names when using pwiz.
- fix bug where parameter was not being used. Thanks @jberkel.
- fixed the way SqliteExtDatabase handles the automatic rowid (and
docid) columns. Thanks for alerting me to the issue and
providing a failing test case @jberkel.
- fix obscure bug relating to cloning foreign key fields twice.
- allow set instances to be used on the right-hand side of IN
exprs.
- fix behavior where the default id primary key was inherited
regardless. When users would inadvertently include it in their
queries, it would use the table alias of it's parent class.
- add support for db_column in djpeewee
- fix the behavior of truncate_date with Postgresql. Thanks
@Zverik.
- allow DATABASE_URL as a recognized parameter to the Flask
config.
- correctly handle bytes wrapper used by PasswordField to bytes.
- when selecting and joining on multiple models, do not create
model instances when the foreign key is NULL.
- do not coerce the return value of function calls to COUNT or
SUM, since the python driver will already give us the right
Python value.
- use global state to resolve DeferredRelations, allowing for a
nicer API. Thanks @brenguyen711.
- attempt to avoid creating invalid Python when using pwiz with
MySQL database columns containing spaces. Yes, fucking spaces.
- fix bug in SQLite migrator which had a naive approach to fixing
indexes.
- explicitly check for None when determining if the database has
been set on ModelOptions. Thanks @joeyespo.
New stuff
- Added TimestampField for storing datetimes using integers.
Greater than second delay is possible through exponentiation.
- Added Database.drop_index() method.
- Added a max_depth parameter to the model_to_dict function in the
playhouse.shortcuts extension module.
- SelectQuery.first() function accepts a parameter n which applies
a limit to the query and returns the first row.
- group_by(), order_by(), window() now accept a keyward argument
extend, which, when set to True, will append to the existing
values rather than overwriting them.
- Query results support negative indexing.
- C sources are included now as part of the package. I think they
should be able to compile for python 2 or 3, on linux or
windows...but not positive.
- pt-stalk now sorts the output of transactions by id
- Added "Shared" memory info to pt-summary
- Added the --no-vertical-format option for pt-query-digest,
allowing compatibility with non-standard MySQL clients that
don't support the \G directive at the end of a statement
- Fixed error when parsing tcpdump capture with pt-query-digest
- Improved pt-online-schema-change plugin documentation
- Clarified the description of the --attribute-value-limit option
for pt-query-digest
- Fixed all PERL-based tools to return a zero exit status when run
with the --version option
- Fixed error that sometimes prevented to choose the primary key
as index, when using the -where option for pt-table-checksum
- Fixed the inability of pt-query-digest to parse the general log
generated by MySQL (and Percona Server) 5.7 instance
- Clarified the description of the --verbose option for
pt-slave-restart
Redis 3.2.3
Bugfixes:
- There was an inverted if statement logic problem in
replication.c causing
a replication delay.
- Redis-cli created the history file with insecure permissions,
allowing reding from the file.
Redis 3.2.2
- There was a bug in the List type implementation, able to cause
the crash of the server under certain (non trivial to replicate)
circumstances when the LSET command was used.
- Redis Sentinel, when monitoring multiple masters, could crash
after a Sentinel address update event.
- Redis Sentinel now checks slaves INFO state more often when
disconnected.
- It was possible, under a variety of conditions, that the AOF and
RDB children process could spawn at the same time. This is known
to trash disk I/O, AOF performances, and to ultimately create
latency in the Redis server.
- Many GEORADIUS bugs are now fixed \o/.
New features:
- Now slaves support the slave-announce-ip and slave-announce-port
options.
- The RDB check utlity is now part of Redis and uses the same RDB
code that Redis uses in order to load the dataset in memory.
Features
- Handle null values in NumpyProtocolHandler (PYTHON-553)
- Collect greplin scales stats per cluster (PYTHON-561)
- Update mock unit test dependency requirement (PYTHON-591)
- Handle Missing CompositeType metadata following C* upgrade
(PYTHON-562)
- Improve Host.is_up state for HostDistance.IGNORED hosts
(PYTHON-551)
- Utilize v2 protocol's ability to skip result set metadata for
prepared statement execution (PYTHON-71)
- Return from Cluster.connect() when first contact point
connection(pool) is opened (PYTHON-105)
- cqlengine: Add ContextQuery to allow cqlengine models to switch
the keyspace context easily (PYTHON-598)
- Standardize Validation between Ascii and Text types in Cqlengine
(PYTHON-609)
Bug Fixes
- Fix geventreactor with SSL support (PYTHON-600)
- Don't downgrade protocol version if explicitly set (PYTHON-537)
- Nonexistent contact point tries to connect indefinitely
(PYTHON-549)
- Execute_concurrent can exceed max recursion depth in failure
mode (PYTHON-585)
- Libev loop shutdown race (PYTHON-578)
- Include aliases in DCT type string (PYTHON-579)
- cqlengine: Comparison operators for Columns (PYTHON-595)
- cqlengine: disentangle default_time_to_live table option from
model query default TTL (PYTHON-538)
- cqlengine: pk__token column name issue with the equality
operator (PYTHON-584)
- cqlengine: Fix "__in" filtering operator converts True to string
"True" automatically (PYTHON-596)
- cqlengine: Avoid LWTExceptions when updating columns that are
part of the condition (PYTHON-580)
- cqlengine: Cannot execute a query when the filter contains all
columns (PYTHON-599)
- cqlengine: routing key computation issue when a primary key
column is overriden by model inheritance (PYTHON-576)
The purpose of this driver is to provide exceptionally thin glue
between MongoDB and PHP, implementing only fundemental and
performance-critical components necessary to build a fully-functional
MongoDB driver.
Countrary to php-mongo, mongodb one supports php 7.x as well as 5.5.x/5.6.x
Bugs Fixed
Replication: When using statement-based or mixed binary logging format with --read-only=ON, it was not possible to modify temporary tables.
MySQL Server upgrades performed using RPM packages failed when upgrading from MySQL 5.1 Community to MySQL 5.5 Community or MySQL 5.1 Commercial to MySQL 5.5 Commercial.
A buffer overflow in the regex library was fixed.
Certain arguments to NAME_CONST() could cause a server exit.
Installing MySQL from a yum or zypper repository resulted in /var/log/mysqld.log being created with incorrect user and group permissions.
If a stored function updated a view for which the view table had a trigger defined that updated another table, it could fail and report an error that an existing table did not exist.
If an INSTALL PLUGIN statement contained invalid UTF-8 characters in the shared library name, it caused the server to hang (or to raise an assertion in debug builds).
For multibyte character sets, LOAD DATA could fail to allocate space correctly and ignore input rows as a result.
Bugs Fixed
InnoDB: Full-text search auxiliary tables could be dropped by one session while being access by another.
InnoDB: Selecting full-text index information schema tables for a deleted table caused a segmentation fault.
InnoDB: Rollback of a full-text index synchronization operation raised an assertion. The rollback operation attempted to acquire a mutex still held by the background synchronization thread.
InnoDB: Setting innodb_monitor_enable to all did not enable all counters.
Replication: After issuing a PURGE BINARY LOGS statement, if the binary log index file was not available, for example because it had been opened by another application such as MEB, the server could stop unexpectedly. Although this situation was rare, the handling has been made more robust to avoid unexpected halts and more informative errors are provided.
Replication: When using row-based replication and InnoDB, replication slaves reverted to using an older locking scheme when a transaction had already acquired an AUTOINC lock related to a LOAD FILE or INSERT ... SELECT type of statement, reducing replication slave performance. The fix ensures that sql_command is set correctly for any of the DML events such as WRITE_ROWS_EVENT, UPDATE_EVENT, and DELETE_EVENT.
Replication: A MySQL version 5.5 slave does not have a server_uuid and replication identified servers by their server_id. Starting from MySQL version 5.6, replication masters detected a zombie dump thread based only on a slave's server_uuid value, under the assumption that each slave has a unique UUID. Connecting a MySQL 5.5 slave to a MySQL 5.6 and later master meant that the master was unable to detect zombie dump threads that were created to serve slaves running versions older than MySQL 5.6. The fix ensures that a master now first checks if a slave has a server_uuid set. If it is set, zombie dump thread detection happens based on the slave's UUID. If a slave's server_uuid is not set, zombie dump thread detection happens based on server_id.
Replication: With slave_skip_errors enabled there were still special cases when slave errors were not being correctly ignored. For example:
When opening and locking a table failed.
When field conversions failed on a server running row-based replication.
In these cases the error was considered critical and it was not respecting the state of slave_skip_errors. The fix ensures that with slave_skip_errors enabled, all errors reported during applying a transaction are correctly handled. This means that in such a set up, upon receiving an error with the log_warnings option set to greater than 1, if the error can be ignored then the warning is printed into the error log and the server continues as it does in the case of other ignored errors.
Replication: When using statement-based or mixed binary logging format with --read-only=ON, it was not possible to modify temporary tables.
MySQL Server upgrades performed using RPM packages failed when upgrading from MySQL 5.5 Community to MySQL 5.6 Community or MySQL 5.5 Commercial to MySQL 5.6 Commercial.
The code for reading character set information from Performance Schema statement events tables (for example, events_statements_current) did not prevent simultaneous writing to that information. As a result, the SQL query text character set could be invalid, which could result in a server exit. Now an invalid character set causes SQL_TEXT column truncation.
A buffer overflow in the regex library was fixed.
Certain arguments to NAME_CONST() could cause a server exit.
For unit-testing with the MySQL test suite, the make unit-test command is no longer available. The ctest program should be used instead. See Unit Tests Added to Main Test Runs.
ST_Distance() could raise an assertion for NULL return values.
With the query cache enabled, executing a prepared statement with CURSOR_TYPE_READ_ONLY and then again with CURSOR_TYPE_NO_CURSOR caused the server to return an error.
mysql_real_connect() was not thread-safe when invoked with the MYSQL_READ_DEFAULT_FILE or MYSQL_READ_DEFAULT_GROUP option enabled.
Installing MySQL from a yum or zypper repository resulted in /var/log/mysqld.log being created with incorrect user and group permissions.
If a stored function updated a view for which the view table had a trigger defined that updated another table, it could fail and report an error that an existing table did not exist.
If an INSTALL PLUGIN statement contained invalid UTF-8 characters in the shared library name, it caused the server to hang (or to raise an assertion in debug builds).
For multibyte character sets, LOAD DATA could fail to allocate space correctly and ignore input rows as a result.
Enhancements
* It's now possible to delete variables using wildcards
* It's now possible to test the connection from the profile dialog
* For Postgres, the generated source code for functions and custom aggregates now contains the new PARALLEL settings for Postgres 9.6
* It's now possible to show a quick filter in the macro popup window
* When searching for a JDBC driver class in the driver's jar file, available service registrations are used to speed up the searching.
* It's now possible to disable icons in menus
* For HSQLDB 2.3.4 synonyms are now displayed
* It's now possible to configure the buttons on the toolbar
* It's now possible to restore recently closed editor tabs
* For Progress OpenEdge, squences and synonyms are now shown in the DbExplorer
* It's now possible to associate variables with the connection profile and the workspace
* For SAP HANA the source for synonyms are now shown
* For SAP HANA dependency for tables, views, triggers, procedures and sequences are now shown in the DbExplorer and DbTree
* A new command (WbGenerateFKScript) is available to generate the DDL for only the foreign key constraints.
* For DB2 10.5 indexes based on expressions are now shown correctly
Bug fixes
* For SQL Server, the source code for user defined object types with columns was incorrect.
* For DBMS supporting catalogs and schemas, auto completion for large schemas was slow.
* Fixed a problem where in rare cases, closing an editor tab could hang the application.
* Ignoring the "Max Rows" setting in the DbExplorer's table data did not work any more
* WbListMacros, WbDeleteMacro and WbDefineMacro were always using the default macro file
* Timestamps with microseconds (.SSSSSS in the format) where not imported correctly with WbImport
* For Postgres, the LEAKPROOF attribute was not included in the generated source code for functions
* WbSchemaDiff incorrectly combined all tables to be dropped in a single tag
* For Postgres, the format of hstore literals was not correct when exporting data as SQL statements
* For Postgres, hstore columns could not be edited in a query result
* The ALTER TABLE OWNER TO statement for Postgres was not created correctly
* It wasn't possible to use -mode=Upsert or -mode=InsertIgnore with WbCopy
* Parsing of comments in SQL statements is now more lenient with invalid (nested) comments
* When changing the position of SQL tabs with files loaded, the Workspace was not saved properly
* For Progress OpenEdge, the SQL generated for sequences was invalid
* For Postgres, the implizit index for an exclusion constraint was incorrectly added to the souce of the table
* The format of a hstore and array literals was not correct for generated SQL statements
* For Oracle procedures from packages that contained only procedures without parameters were not displayed.
* Implemented a workaround for the MariaDB JDBC driver that returns invalid object type names for tables ("BASE TABLE" instead of "TABLE")
* Generate "DROP script with dependencies" was no longer working in the DbExplorer or DbTree
* When using SQL Workbench in batch mode, passing quoted parameters on the command line did not work properly
* The DDL for tables was not displayed when using Amazon Redshift
* Using sqlwbconsole.sh together with -command or -script on a headless system did not work
* The display for LVARCHAR and DATE columns was not always correct for Informix
* Warnings that were reported by the JDBC driver after establishing the connection were sometimes shown in the generated DDL in the DbTree
* The DDL for sequences in Oracle did not reflect the values for CYCLE and ORDER
* Running PL/SQL in Oracle did not work if the option "Remove comments" was enabled in the connection profile
* When using "Create DDL script" in the DbExplorer, the source for materialized views was generated twice
* With certain Oracle driver versions, TYPEs where displayed twice in the DbExplorer or the DbTree
* When exporting to text files, values containing the line delimiter were not quoted properly
* With SQL Server, it was not possible to drop indexes from within the DbTree
* Passwords are no longer trimmed
Upstream changes:
0.9995 2016-07-27T09:23:55Z
- Taught the `add` command not to ignore the `--change` option.
- The `add` command now emits a usage statement when no change name is
passed to it.
- The `add` command now helpfully suggests using the --change option when
attempting to add a change with the same name as a target. Thanks to
Ivan Nunes for the report!
- The `tag` command now helpfully suggests using the --tag option when
attempting to add a tag with the same name as a target.
- Added `--global` as an alias for `--user` to the `config` command. This
alias benefits the muscle memory of Git users.
- Added a note for Git users to the `sqitch-revert` documentation, to
head off potential confusion with `git revert`. Thanks to Eric
Br矇chemier for the "time travel" analogy and wording.
- Fixed an "uninitialized value" error when creating a registry database
on Windows. Thanks to Steven C. Buttgereit for the report (Issue #289).
- Fixed editor selection to prioritize the `core.editor` configuration
variable over the `$EDITOR` environment variable. The `$SQITCH_EDITOR`
environment variable still trumps all. Thanks to Jim Nasby for the pull
request (#296).
- Added detection of the `$VISUAL` environment variable to Editor
selection, prioritzed after the `core.editor` configuration variable
and before the `$EDITOR` environment variable. Thanks to Jim Nasby for
the pull request (#296).
- Updated the DateTime code to set the locale via `set_locale()` instead
of `set()`, as the latter may actually change the local time
unintentionally, and has been deprecated since DateTime v1.04. Thanks
to Dave Rolsky for the pull request (#304).
0.9994 2016-01-08T19:46:43Z
- Reduced minimum required MySQL engine from 5.1.0 to 5.0.0. Thanks to
@dgc-wh for testing it (Issue #251).
- Fixed floating-point rounding issue with SQLite registry versions on
Perls with 16-byte doubles. Thanks to H. Merijn Brand for the report
and testing.
- Fixed an error when adding an engine with the `engine` command. Thanks
to Victor Mours for the report and fix!
- Updated the Oracle engine to support Oracle Wallet connection strings,
where no username or host is in the connection URI. Thanks to Timothy
Procter for the patch!
- Improved the installer's selection of the prefix in which to install
`etc` files to better match the `--installdirs` option, which defaults
to the "site" directories. Thanks to @carragom for the pull request
(#265).
- Added missing dash to `-engine` in sample calls to `sqitch init` in the
tutorials. Thanks to Andrew Dunstan for the spot (Issue #268).
- Fixed broken Vertica documentation links.
- Attempting to revert a database with no associated registry no longer
reports the registry as version 0, but correctly reports that no
registry can be found. Thanks to Arnaldo Piccinelli for the spot (Issue
#271).
- Fixed the search for change IDs in engines to match the search for
changes. Specifically, change ID seaerch now properly handles the
offset characters `~` and `^`. This bug mainly affected the `verify`
command, but it's good to address the inconsistency, done mainly by
adding the `find_change_id` and `change_id_offset_from_id` methods to
complement the `find_change` and `change_offset_from_id` methods.
Thanks to Andrew Dunstan for the spot (Issue #272).
- Fixed the `flips` table example in the MySQL tutorial. It was
inappropriately copied from the PostgreSQL tutorial at some point.
Thanks to Jeff Carpenter for the spot (Issue #254)!
0.9993 2015-08-17T17:55:26Z
[Bug Fixes]
- Eliminated test failures due to warnings from DateTime::Locale when
`LC_TIME` is set to C.UTF-8. Thanks to Shantanu Bhadoria for the report
and Dave Rolsky for the workaround.
- Fixed an error checking the registry version when the local uses a
comma for decimal values. Thanks to Steffen M羹ller for the report
(Issue #234).
- Worked around an error setting the MySQL storage engine using versions
of DBI prior to 1.631. Thanks to melon-babak for the report!
- Fixed an error from the Oracle engine when deploying more than 1000
changes. Thanks to Timothy Procter and Minh Hoang for the report and
testing the fix.
- Fixed a bunch of typos in error messages, comments, and documentation.
Thanks to Dmitriy for the pull request!
- Fixed test failures due to new warnings from File::Path on Perl
5.23.1.
- On Firebird, Looking up a change and tag in the database (via the
`--onto` option to `rebase` or the `--to` option to `revert`, among
others) would sometimes return the incorrect change if the change has
been reworked two or more times. Was fixed for the other engines in
v0.9991.
- Fixed the `--all` option used to apply a command to all known targets
so that it loads only targets specified by the local configuration.
Otherwise, user and system configuration can get in the way when they
specify engines and targets not used by the current project.
[Improvements]
- Added support for the `--set` option when deploying to MySQL. Thanks to
Chris Bandy for figuring out how to do it!
- Added support for a "reworked directory". By default, reworked change
scripts live in the deploy, revert, and verify directories along with
all the other change scripts. But if that starts to get too messy, or
you simply don't want to see them, add a `reworked_dir` setting to the
core, engine, or target config and reworked scripts will be stored
there, instead. Also supported are `reworked_deploy_dir`,
`reworked_revert_dir`, and `reworked_verify_dir`.
- Added the `--dir` option to the `init`, `engine`, and `target`
commands.
- Copied the core configuration options (`--engine`, `--target`,
`--plan-file`, `--registry`, etc.) to the `init`, `engine`, and
`target` commands. This means that they can be specified after the
command, which is a bit more natural. It also means that the
`--registry` and `--client` options of the `target` are no longer
deprecated.
- The `init` command on longer writes out commented values for the
`deploy_dir`, `revert_dir`, or `verify_dir` settings. I think these
settings are not commonly used, and it would start to get crowded if we
also added their "reworked" variants, which will be used still less.
- Added the `alter` action to the `engine` and `target` commands to set
engine and target properties.
- Added support for setting reworked directories to the `engine` and
`target` commands.
- Reformatted the output of the `engine` and `target` command `show`
actions to include reworked directories, and to bit a bit less flat.
- Attempting to add or alter an engine with a target URI that connects to
a different engine now triggers an error. For example, you can't set
the target for engine `pg` to `db:sqlite:`.
- The `add` and `alter` actions of the `engine` and `target` commands
now create script directories if they don't already exist.
- The `add` action of the `engine` and `target` commands now creates a
plan file if one does not exist in the specified location for the
engine or target.
- Added the `deploy_dir`, `revert_dir`, and `verify_dir` methods to
App::Sqitch::Plan::Change. Each points to the proper directory for the
target depending on whether or not the change has been reworked.
- In the MySQL engine, the following URI query params will be converted
to options passed to the command-line client, if they're present:
* mysql_compression=1 => --compress
* mysql_ssl=1 => --ssl
* mysql_connect_timeout => --connect_timeout
* mysql_init_command => --init-command
* mysql_socket => --socket
* mysql_ssl_client_key => --ssl-key
* mysql_ssl_client_cert => --ssl-cert
* mysql_ssl_ca_file => --ssl-ca
* mysql_ssl_ca_path => --ssl-capath
* mysql_ssl_cipher => --ssl-cipher
[Documentation]
- Added the "Overworked" section to sqitch-configuration guide with an
example of how to move reworked change scripts into a `reworked_dir`.
[Deprecations]
- Deprecated the `set-*` actions in the `engine` and `target` commands in
favor of the new `alter` action.
- The core `--deployed-dir`, `--revert-dir`, and `--verify-dir` options
are deprecated in favor of the `--dir` option on the `init`, `engine`,
and `target` command.
0.9992 2015-05-20T23:51:41Z
- On PostgreSQL, Sqitch now sets the `client_encoding` parameter to
`UTF8` for its own connection to the database. This ensures that data
sent to and from the databse should always be properly encoded and
decoded. Users should still set the proper encodings for change scripts
as appropriate.
- Fixed test failures due to path differences on Windows.
- DateTime::TimeZone is now explicitly required in an attempt to head off
"Cannot determine local time zone" errors.
- Corrected some typos and thinkos in `sqitchtutorial-oracle`, thanks to
George Hartzell.
- Improved the script to upgrade an Oracle registry to v1.0 to support
versions prior to Oracle 12, thanks to Timothy Procter.
- Added missing closing parenthesis to the "Nothing to deploy" message.
Thanks to George Hartzell for the pull request (Issue #226).
- Replaced the unique constraint on the `script_hash` column in the
`changes` registry table with a unique constraint on `project` and
`script_hash`. This is to allow a deploy script to be used in more than
one project in a single database. This change increments the registry
version to v1.1. Thanks to Timothy Procter for the report.
- Updated the registry check constraints to have consistent names on the
engines that support them. This will make it easier to modify the
constraints in the future.
- Fixed precision issues with the registry version on MySQL and Firebird.
- Added comment to sqitch-passwords guide that MySQL::Config is required
to read passwords from the MySQL configuration files. Thanks to
Sterling Hanenkamp for the patch!
0.9991 2015-04-03T23:14:39Z
[Improvements]
- Reduced minimum required MySQL engine from 5.6.4 to 5.1.0. Versions
prior to 5.6.4 lose the following features:
* Versions earlier than 5.6.4 is fractional second precision on
registry `DATETIME` columns. Since the ordering of those timestamps
is so important to the functioning of Sqitch, it will sleep in 100 ms
increments between logging changes to the registry until the time has
ticked over to the next second. Naturally, reverts and deploys will
be a little slower on versions of MySQL before 5.6.4, but accurate.
* Versions earlier than 5.5.0 lose the `checkit()` functions, which
would otherwise be used to emulate CHECK constraints in the registry,
as well as in user-created verify scripts, as recommended in the
MySQL tutorial, `sqitchtutorial-mysql`.
- Added a script to update the `DATETIME` columns in a MySQL Sqitch
registry that was upgraded to MySQL 5.6.4 or higher. It will be
installed as `tools/upgrade-registry-to-mysql-5.6.4.sql` in the
directory returned by `sqitch --etc`.
- Added a script to add the `checkit()` function and registry triggers to
emulate CHECK constraints to a MySQL Sqitch registry that was upgraded
to MySQL 5.5.0 or higher. It will be installed as
`tools/upgrade-registry-to-mysql-5.5.0.sql` in the directory returned
by `sqitch --etc`.
- The `init` command now throws an error when the plan file already
exists and is invalid or defined for a different project. Thanks to
Gabriel Potk獺ny for the suggestion (Issue #214).
- All commands that take target arguments can now specify them as engine
names or plan file paths as well as target names and URIs.
- Added the `--all` option and the `$command.all` configuration variable
to the `add`, `rework`, `tag`, and `bundle` commands. This option tells
the commands to do their thing for all plans known from the
configuration, not just the default plan.
- Pass engine, target, or plan file names to the `add`, `rework`, `tag`,
and `bundle` commands` commands to specify specify one or more targets,
engines, and plans to act on.
- Added the `--change` option to the `add`, `rework`, and `tag` commands
to distinguish the change to be added, reworked, or tagged from
plan-specifying arguments, if necessary.
- Added the `--tag` option to the `tag` command to distinguish the tag to
be added from plan-specifying arguments, if necessary.
- Changed the short variant of the `--conflicts` option to the `add` and
`rework` commands from `-c` to `-x`. The `-c` option is now used as the
short variant for `--change` (and `--conflicts` has almost certainly
never been used, anyway).
- Added the `engine` and `project` variables to the execution of script
templates by the `add` command. The default templates now use it to
make their first lines one of:
* -- Deploy [% project %]:[% change %] to [% engine]
* -- Revert [% project %]:[% change %] from [% engine]
* -- Verify [% project %]:[% change %] on [% engine]
[Bug Fixes]
- DateTime::TimeZone::Local::Win32 is now required on Windows.
- The MySQL engine no longer passes `--skip-pager` on Windows, since
it is not supported there. Thanks to Gabriel Potk獺ny for the report
(Issue #213).
- Fixed "no such table: changes" error when upgrading the SQLite
registry.
- Fixed upgrade failure on PostgreSQL 8.4. Thanks to Phillip Smith for
the report!
- Fixed an error when the `status` command `show_changes` and `show_tags`
configuration variables were set. Thanks to Adrian Klaver for the
report (Issue #219).
- Fixed `log` and `plan` usage statements to properly spell `--abbrev`.
Thanks to Adrian Klaver for the report (Issue #220).
- Fixed the formatting of change notes so that a space precedes the `#`
character whether the note was added by the `--note` option or via an
editor.
- Fixed a bug when parsing plan files with DOS/Windows line endings.
Thanks to Timothy Procter for the report (Issue #212).
- Looking up a change and tag in the database (via the `--onto` option to
`rebase` or the `--to` option to `revert`, among others) would
sometimes return the incorrect change if the change has been reworked
two or more times. Thanks to BryLo for the report!
[Documentation]
- Updated docs to be consistent in referring to the location of the system
configuration and template location as `$(prefix)/etc/sqitch`. Also
added notes pointing to the `--etc-dir` to find out exactly what that
resolves to. Suggested by Joseph Anthony Pasquale Holsten (Issue #167).
[Deprecations]
- Reverted deprecation of the database connection options. Target URIs
are still generally preferred, but sometimes you want to use a target
but just change the user name or database name. Retaining the options
is the easiest way to do this. Plus, a fair number of people have
scripts that use these options, and it seems petty to break them. Sorry
for the double-take here! The list of un-deprecated options is:
* `--db-client`
* `--db-host`
* `--db-port`
* `--db-username`
* `--db-password`
* `--db-name`
0.999 2015-02-12T19:43:45Z
- Improved MySQL missing table error detection by relying on error codes
instead of matching a (possibly localized) error string.
- Made the registry upgrade more transparent when deploying. Sqitch is
now is a little more vigilent in checking for things being out-of-date
and updating them.
- Fixed an issue where the `status` command would return an error when
run against a an older version of the registry.
- Fixed a Postgres test failure when DBD::Pg is installed but psql is not
in the path.
- Now require Config::GitLike 1.15 to build on Windows in order to avoid
test failures when Cwd::abs_path dies on non-existant paths.
- Clarified the behavior of each `deploy` reversion mode with regard to
deploy script vs. verify script failures, and with the expectation that
deploy scripts are atomic.
- Target passwords can now be set via a single environment variable,
`$SQITCH_PASSWORD`. Its value will override URI-specified password.
- Added the sqitch-passwords and sqitch-environment guides.
0.998 2015-01-15T22:17:44Z
- Fixed a bug in `sqitch engine update-config` where it would add data to
config files that did not previously have them, or report that data was
present in nonexistent config files.
- Added the `releases` table to the databases. This table will keep track
of releases of the Sqitch registry schema.
- The Oracle `registry` variable is now always `DEFINE`d when Oracle
scripts run.
- Added the `upgrade` command, which upgrades the schema for the Sqitch
registry for a target database.
- Added the `script_hash` column to the `changes` registry table. This
column contains a SHA-1 hash of the deploy script for the change at the
time it was deployed. For existing registries, the upgrade script sets
its value to be the same as the change ID. This value is update the
next time a project is deployed to the database.
- The error message when `deploy` cannot find the currently-deployed
change ID in the plan now includes more contextual information,
including the change name, associated tags, and the plan file name.
Suggested by Curtis Poe (Issue #205).
- Comments on Firebird registry objects are now created with the
`COMMENT` command, rather than INSERTs into catalog tables.
- Added support for "merge" events, though none are logged, yet.