Fix startup problem of mariadb.
* Remove creating ${VARBASE}/run/mariadb with OWN_DIRS_PERMS since
${VARBASE}/run will be cleared on system start up.
* Create ${VARBASE}/run/mariadb in startup script with sutable owner.
Bump PKGREVISION.
2.9.1
- new feature: added support for using Kerberos authentication on windows clients using the native winkerberos library
- new feature: added support for using Channel Bind tokens with Kerberos authentication on windows clients
- fixed a bug related to using start_tls with a RESTARTABLE strategy that caused errors to be raised erroneously.
- fixed a bug around the type checking of Reverse DNS Settings with Kerberos authentication
- fixed an issue related to decoding unicode strings in LDAP referrals and attributes in python 2
- minor documentation updates and corrections
Active Record
* Do not try to rollback transactions that failed due to a
ActiveRecord::TransactionRollbackError. (Jamie McCarthy)
* Raise an error if pool_config is nil in set_pool_config. (Eileen
M. Uchitelle)
* Fix compatibility with psych >= 4.
Starting in Psych 4.0.0 YAML.load behaves like YAML.safe_load. To
preserve compatibility Active Record's schema cache loader and
YAMLColumn now uses YAML.unsafe_load if available. (Jean Boussier)
* Support using replicas when using rails dbconsole. (Christopher
Thornton)
* Restore connection pools after transactional tests. (Eugene Kenny)
* Change upsert_all to fails cleanly for MySQL when :unique_by is
used. (Bastian Bartmann)
* Fix user-defined self.default_scope to respect table alias. (Ryuta
Kamizono)
* Clear @cache_keys cache after update_all, delete_all, destroy_all.
(Ryuta Kamizono)
* Changed Arel predications contains and overlaps to use quoted_node
so that PostgreSQL arrays are quoted properly. (Bradley Priest)
* Fix merge when the where clauses have string contents. (Ryuta
Kamizono)
* Fix rollback of parent destruction with nested dependent: :destroy.
(Jacopo Beschi)
* Fix binds logging for "WHERE ... IN ..." statements. (Ricardo Díaz)
* Handle false in relation strict loading checks.
Previously when a model had strict loading set to true and then had
a relation set strict_loading to false the false wasn't considered
when deciding whether to raise/warn about strict loading.
class Dog < ActiveRecord::Base
self.strict_loading_by_default = true
has_many :treats, strict_loading: false
end
In the example, dog.treats would still raise even though
strict_loading was set to false. This is a bug effecting more than
Active Storage which is why I made this PR superceeding #41461. We
need to fix this for all applications since the behavior is a little
surprising. I took the test from ##41461 and the code suggestion
from #41453 with some additions. (Eileen M. Uchitelle, Radamés Roriz)
* Fix numericality validator without precision. (Ryuta Kamizono)
* Fix aggregate attribute on Enum types. (Ryuta Kamizono)
* Fix CREATE INDEX statement generation for PostgreSQL. (eltongo)
* Fix where clause on enum attribute when providing array of strings.
(Ryuta Kamizono)
* Fix unprepared_statement to work it when nesting. (Ryuta Kamizono)
Ruby on Rails 6.0.4 (2021-06-15), including security fixes.
Active Support
* Fixed issue in ActiveSupport::Cache::RedisCacheStore not passing
options to read_multi causing fetch_multi to not work properly.
(Rajesh Sharma)
* with_options copies its options hash again to avoid leaking mutations.
Fixes#39343. (Eugene Kenny)
Active Record
* Only warn about negative enums if a positive form that would cause
conflicts exists. Fixes#39065. (Alex Ghiculescu)
* Allow the inverse of a has_one association that was previously
autosaved to be loaded. Fixes#34255. (Steven Weber)
* Reset statement cache for association if table_name is changed.
Fixes#36453. (Ryuta Kamizono)
* Type cast extra select for eager loading. (Ryuta Kamizono)
* Prevent collection associations from being autosaved multiple times.
Fixes#39173. (Eugene Kenny)
* Resolve issue with insert_all unique_by option when used with
expression index.
When the :unique_by option of ActiveRecord::Persistence.insert_all
and ActiveRecord::Persistence.upsert_all was used with the name of
an expression index, an error was raised. Adding a guard around the
formatting behavior for the :unique_by corrects this.
Usage:
create_table :books, id: :integer, force: true do |t|
t.column :name, :string
t.index "lower(name)", unique: true
end
Book.insert_all [{ name: "MyTest" }], unique_by: :index_books_on_lower_name
Fixes#39516. (Austen Madden)
* Fix preloading for polymorphic association with custom scope.
(Ryuta Kamizono)
* Allow relations with different SQL comments in the or method.
(Takumi Shotoku)
* Resolve conflict between counter cache and optimistic locking.
Bump an Active Record instance's lock version after updating its
counter cache. This avoids raising an unnecessary
ActiveRecord::StaleObjectError upon subsequent transactions by
maintaining parity with the corresponding database record's
lock_version column. Fixes#16449. (Aaron Lipman)
* Fix through association with source/through scope which has joins.
(Ryuta Kamizono)
* Fix through association to respect source scope for includes/preload.
(Ryuta Kamizono)
* Fix eager load with Arel joins to maintain the original joins order.
(Ryuta Kamizono)
* Fix group by count with eager loading + order + limit/offset.
(Ryuta Kamizono)
* Fix left joins order when merging multiple left joins from different
associations. (Ryuta Kamizono)
* Fix index creation to preserve index comment in bulk change table on
MySQL. (Ryuta Kamizono)
* Change remove_foreign_key to not check :validate option if database
doesn't support the feature. (Ryuta Kamizono)
* Fix the result of aggregations to maintain duplicated "group by"
fields. (Ryuta Kamizono)
* Do not return duplicated records when using preload. (Bogdan Gusiev)
Action View
* SanitizeHelper.sanitized_allowed_attributes and
SanitizeHelper.sanitized_allowed_tags call safe_list_sanitizer's
class method. Fixes#39586. (Taufiq Muhammadi)
Action Pack
* Accept base64_urlsafe CSRF tokens to make forward compatible.
* Base64 strict-encoded CSRF tokens are not inherently websafe, which
makes them difficult to deal with. For example, the common practice
of sending the CSRF token to a browser in a client-readable cookie
does not work properly out of the box: the value has to be
url-encoded and decoded to survive transport.
In Rails 6.1, we generate Base64 urlsafe-encoded CSRF tokens, which
are inherently safe to transport. Validation accepts both urlsafe
tokens, and strict-encoded tokens for backwards compatibility.
In Rails 5.2.5, the CSRF token format is accidentally changed to
urlsafe-encoded. If you upgrade apps from 5.2.5, set the config
urlsafe_csrf_tokens = true.
Rails.application.config.action_controller.urlsafe_csrf_tokens = true
(Scott Blum, Étienne Barrié)
* Signed and encrypted cookies can now store false as their value when
action_dispatch.use_cookies_with_metadata is enabled. (Rolandas
Barysas)
Active Storage
* The Poppler PDF previewer renders a preview image using the original
document's crop box rather than its media box, hiding print
margins. This matches the behavior of the MuPDF previewer. (Vincent
Robert)
Railties
* Allow relative paths with trailing slashes to be passed to rails
test. (Eugene Kenny)
* Return a 405 Method Not Allowed response when a request uses an
unknown HTTP method. Fixes#38998. (Loren Norman)
Ruby on Rails 5.2.6 (2021-05-05)
There are changes in www/ruby-actionpack52 only, including security fix.
Action Pack
* Accept base64_urlsafe CSRF tokens to make forward compatible.
Base64 strict-encoded CSRF tokens are not inherently websafe, which
makes them difficult to deal with. For example, the common practice
of sending the CSRF token to a browser in a client-readable cookie
does not work properly out of the box: the value has to be
url-encoded and decoded to survive transport.
In this version, we generate Base64 urlsafe-encoded CSRF tokens,
which are inherently safe to transport. Validation accepts both
urlsafe tokens, and strict-encoded tokens for backwards
compatibility.
How the tokes are encoded is controllr by the
action_controller.urlsafe_csrf_tokens config.
In Rails 5.2.5, the CSRF token format was accidentally changed to
urlsafe-encoded.
Atention: If you already upgraded your application to 5.2.5, set the
config urlsafe_csrf_tokens to true, otherwise your form submission
will start to fail during the deploy of this new version.
Rails.application.config.action_controller.urlsafe_csrf_tokens = true
If you are upgrading from 5.2.4.x, you don't need to change this
configuration.
Scott Blum, Étienne Barrié
Issues fixed in 4.2.14:
SERVER-54710: Large number of $or clauses can create profiling entry exceeding max BSON size, causing the query to fail when it should not
SERVER-54136: Make the authenticate command respect enforceUserClusterSeparation
SERVER-53566: Investigate and reproduce “opCtx != nullptr && _opCtx == nullptr” invariant
SERVER-52564: Deadlock between step down and MongoDOperationContextSession
WT-7373: Improve slow random cursor operations on oplog
Issues fixed in 4.2.13:
SERVER-46686: Explain does not respect maxTimeMS
SERVER-46740: establishCursors() must always drain the AsyncRequestsSender::_baton
SERVER-46876: During the eviction pressure, we should quit the compact operation instead of crashing the process
SERVER-53394: Make ShardingTaskExecutorPoolReplicaSetMatching default to disabled for MongoD
WT-7028: Sweep thread shouldn’t lock during checkpoint gathering handles
MySQL Connectors and other MySQL client tools and applications now
synchronize the first digit of their version number with the
(highest) MySQL server version they support. For example, MySQL
Connector/C++ 8.0.12 would be designed to support all features of
MySQL server version 8 (or lower). This change makes it easy and
intuitive to decide which client version to use for which server
version.
Version 1.20, 2021-06-17
* New bucket cache
The bucket cache support has been rewritten from scratch. The new
bucket cache code provides for significant speed up of search
operations.
* Change mmap prereading strategy
Pre-reading of the memory mapper regions, introduced in version 1.19
can be advantageous only when doing intensive look-ups on a read-only
database. It degrades performance otherwise, especially if doing
multiple inserts. Therefore, this version introduces a new flag
to gdbm_open: GDBM_PREREAD. When given, it enables pre-reading of
memory mapped regions.
See https://github.com/Perl/perl5/issues/18884 for details.
mysql80 uses some inline asm on x86_64, but falls back to the
function on non-x86_64. netbsd does not have a ffsll function.
helps build on non-x86_64.
SQLite Release 3.36.0 On 2021-06-18
Improvement to the EXPLAIN QUERY PLAN output to make it easier to understand.
Byte-order marks at the start of a token are skipped as if they were whitespace.
An error is raised on any attempt to access the rowid of a VIEW or subquery. Formerly, the rowid of a VIEW would be indeterminate and often would be NULL. The -DSQLITE_ALLOW_ROWID_IN_VIEW compile-time option is available to restore the legacy behavior for applications that need it.
The sqlite3_deserialize() and sqlite3_serialize() interfaces are now enabled by default. The -DSQLITE_ENABLE_DESERIALIZE compile-time option is no longer required. Instead, there is is a new -DSQLITE_OMIT_DESERIALIZE compile-time option to omit those interfaces.
The "memdb" VFS now allows the same in-memory database to be shared among multiple database connections in the same process as long as the database name begins with "/".
Back out the EXISTS-to-IN optimization (item 8b in the SQLite 3.35.0 change log) as it was found to slow down queries more often than speed them up.
Improve the constant-propagation optimization so that it works on non-join queries.
The REGEXP extension is now included in CLI builds.
While here try to make updates less painful for pkgsrc developers
by automating some of the manual steps.
2.28.0 / 2021-06-21
[CHANGE] UI: Make the new experimental PromQL editor the default.
[FEATURE] Linode SD: Add Linode service discovery.
[FEATURE] HTTP SD: Add generic HTTP-based service discovery.
[FEATURE] Kubernetes SD: Allow configuring API Server access via a kubeconfig file.
[FEATURE] UI: Add exemplar display support to the graphing interface.
[FEATURE] Consul SD: Add namespace support for Consul Enterprise.
[ENHANCEMENT] Promtool: Allow silencing output when importing / backfilling data.
[ENHANCEMENT] Consul SD: Support reading tokens from file.
[ENHANCEMENT] Rules: Add a new .ExternalURL alert field templating variable, containing the external URL of the Prometheus server.
[ENHANCEMENT] Scrape: Add experimental body_size_limit scrape configuration setting to limit the allowed response body size for target scrapes.
[ENHANCEMENT] Kubernetes SD: Add ingress class name label for ingress discovery.
[ENHANCEMENT] UI: Show a startup screen with progress bar when the TSDB is not ready yet.
[ENHANCEMENT] SD: Add a target creation failure counter prometheus_target_sync_failed_total and improve target creation failure handling.
[ENHANCEMENT] TSDB: Improve validation of exemplar label set length.
[ENHANCEMENT] TSDB: Add a prometheus_tsdb_clean_start metric that indicates whether a TSDB lockfile from a previous run still existed upon startup.
[BUGFIX] UI: In the experimental PromQL editor, fix autocompletion and parsing for special float values and improve series metadata fetching.
[BUGFIX] TSDB: When merging chunks, split resulting chunks if they would contain more than the maximum of 120 samples.
[BUGFIX] SD: Fix the computation of the prometheus_sd_discovered_targets metric when using multiple service discoveries
2.27.0 / 2021-05-12
[FEATURE] Promtool: Retroactive rule evaluation functionality.
[FEATURE] Configuration: Environment variable expansion for external labels. Behind --enable-feature=expand-external-labels flag.
[FEATURE] TSDB: Add a flag(--storage.tsdb.max-block-chunk-segment-size) to control the max chunks file size of the blocks for small Prometheus instances.
[FEATURE] UI: Add a dark theme.
[FEATURE] AWS Lightsail Discovery: Add AWS Lightsail Discovery.
[FEATURE] Docker Discovery: Add Docker Service Discovery.
[FEATURE] OAuth: Allow OAuth 2.0 to be used anywhere an HTTP client is used.
[FEATURE] Remote Write: Send exemplars via remote write. Experimental and disabled by default.
[ENHANCEMENT] Digital Ocean Discovery: Add __meta_digitalocean_vpc label.
[ENHANCEMENT] Scaleway Discovery: Read Scaleway secret from a file.
[ENHANCEMENT] Scrape: Add configurable limits for label size and count.
[ENHANCEMENT] UI: Add 16w and 26w time range steps.
[ENHANCEMENT] Templating: Enable parsing strings in humanize functions.
[BUGFIX] UI: Provide errors instead of blank page on TSDB Status Page.
[BUGFIX] TSDB: Do not panic when writing very large records to the WAL.
[BUGFIX] TSDB: Avoid panic when mmaped memory is referenced after the file is closed.
[BUGFIX] Scaleway Discovery: Fix nil pointer dereference.
[BUGFIX] Consul Discovery: Restart no longer required after config update with no targets.
timescaledb-tune is a program for tuning a TimescaleDB database to perform its
best based on the host's resources such as memory and number of CPUs. It parses
the existing postgresql.conf file to ensure that the TimescaleDB extension is
appropriately installed and provides recommendations for memory, parallelism,
WAL, and other settings.
Release of v1.0.0
Hiredis v1.0.0 marks the first stable release of Hiredis and introduces
RESP3 support, SSL connections, allocator injection, better Windows support,
and more.
IMPORTANT: There are breaking changes in this release meaning your code
will need to be recompiled and may need small changes. The exact
details of the breaking changes can be found in README.md.
CHANGELOG.md has a detailed list of changes between v0.14.1 and v1.0.0.
0.4.1:
This is a bug fix release. This fixes a bug with Promscale on TimescaleDB 2.3.
It also adds some bug and security fixes. We deem this upgrade low priority:
you should only update if you are switching to TimescaleDB 2.3.
0.4.0:
At a high level, this release contains:
Stable version of new HA system (was previously experimental)
Support for multi-tenancy
Improved PostgreSQL permissions
Add text format ingest
Improvements to locking behavior
Stable version of new HA system
This release adds support for inserting data into compressed chunks
and improves performance when inserting data into distributed hypertables.
Distributed hypertables now also support triggers and compression policies.
The bug fixes in this release address issues related to the handling
of privileges on compressed hypertables, locking, and triggers with
transition tables.
# RSQLite 2.2.7 (2021-04-22)
- Remove RStudio Connection pane support due to problems reported by
users (#352).
- Upgrade bundled SQLite to version 3.35.5 (#368).
# RSQLite 2.2.6 (2021-04-11)
- Upgrade bundled SQLite to 3.35.4 (#361).
- Implement RStudio Connection Contract (#352, @edwindj).
- `Dbdatatype()` supports extended types for connections created with
`extended_types = TRUE` (#360, @ablack3).
- `dbWriteTable()` creates tables with extended types for connections
created with `extended_types = TRUE` (#360, @ablack3).
- Remove BH dependency by inlining the header files (#362).
# RSQLite 2.2.5 (2021-03-25)
- Upgrade bundled SQLite to version 3.35.2 (#357).
- If the busy handler fails, the transaction is aborted explicitly
(#348, @gaborcsardi).
# RSQLite 2.2.4 (2021-03-12)
## Features
- Improve concurrency behavior with multiple writers (#280, @gaborcsardi).
- New `sqliteSetBusyHandler()` helps configure what SQLite should do
when the database is locked (#280, @gaborcsardi).
- `dbConnect()` gains an `extended_types` argument that adds support
for date, time and timestamp columns. If a column has a declared
type `DATE`, `TIME` or `TIMESTAMP`, it is returned as `Date`, `hms`
or `POSIXct` value, respectively (#333, @anderic1).
- Upgrade bundled SQLite to version 3.34.1 (#342).
# RSQLite 2.2.3 (2021-01-24)
## Features
- Upgrade bundled SQLite to version 3.34.1 (#342).
- `dbConnect()` gains an `extended_types` argument that adds support
for date, time and timestamp columns. If a column has a declared
type `DATE`, `TIME` or `TIMESTAMP`, it is returned as `Date`, `hms`
or `POSIXct` value, respectively (#333, @anderic1).
# RSQLite 2.2.2 (2021-01-04)
## Features
- Upgrade bundled SQLite to version 3.34 (#337).
## Bug fixes
- `dbWriteTable()` and `dbAppendTable()` use transactions with unique
savepoint IDs (#338).
- Loading extensions works when RSQLite is installed in a path with
non-ASCII characters (#310).
## Internal
- Implement automatic upgrade of bundled SQLite via GitHub Actions (#335).
- Switch to GitHub Actions (#331).
# RSQLite 2.2.1 (2020-09-28)
- Upgrade to SQLite 3.33.0 (#321).
- Use transaction for faster processing in `dbAppendTable()` (#306).
- Strings and blobs now can have a size of up to 2 GB (#314, @shutinet).
- Multipart queries now give a warning (#313).