Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build(deps): bump github.com/skeema/skeema from 1.8.0 to 1.9.0 #300

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 1, 2022

Bumps github.com/skeema/skeema from 1.8.0 to 1.9.0.

Release notes

Sourced from github.com/skeema/skeema's releases.

v1.9.0

For a summary of the most important changes in this release, see our blog post.

  • Premium CLI now includes the ability to offload the temp-schema workspace to a different database host, via the new temp-schema-environment option. The option value is set to the name of an environment (.skeema file section) which can override some or all connectivity options (host, port, socket, user, password, host-wrapper, SSH options, SSL options, etc) for determining what host to place the temp-schema workspace on. (#94)
  • Connectivity-related options (user, password, host, schema, etc) now support use of environment variables as option values in .skeema option files, permitting flexible dynamic configuration. (16b54e4, #101)
  • Improvements to the various ignore-* options (ignore-table, ignore-proc, ignore-func, ignore-view, ignore-trigger)
    • The ignore-proc and ignore-func options, which previously were only available in the Premium edition (since v1.6.0-premium one year ago), are now available in the Community edition as well. (0de3c57)
    • These options now take effect earlier in the processing flow for all commands. This improves performance, and ensures that any SQL errors from an ignored statement do not affect the execution of the command in any way. (b35f065)
  • Several MariaDB-specific improvements and fixes
    • MariaDB 10.10 is now fully supported, including special conversion logic for the new inet4 column type. (53de093)
    • MariaDB's November 2022 point releases (MariaDB 10.3.37, 10.4.27, 10.5.18, 10.6.11, 10.7.7, 10.8.6, 10.9.4) are now supported by Skeema. These MariaDB releases unexpectedly changed the output logic for collations in SHOW CREATE TABLE, which broke compatibility with a core safety check in Skeema. (f2dcaf8, #193, #194, #195)
    • When modifying existing procs/funcs in MariaDB, atomic CREATE OR REPLACE syntax is now used. This functionality was originally introduced in Skeema v1.6.0-premium one year ago, but is now present in the Community Edition as well. (412a326)
  • When interacting with multiple hosts (running skeema from a parent directory), it is now possible to interactively prompt for different passwords for each host, by configuring the bare password option with no =value in the same .skeema file as the host. (ab4a84c, 5e35143, b004616)
    • Previously, bare password option with no =value was only supported in global option files. This still works, and still prompts for a single "global" password rather than host-specific ones.
    • For an alternative mechanism for passing different passwords to each host, also see the new ENV variable support, mentioned above.
  • When using workspace=docker with MySQL 8, whenever Skeema creates a new ephemeral containerized DB, binary logging will be disabled automatically, despite MySQL 8 normally defaulting to enabling binlogging. This improves workspace performance, and prevents potential issues with non-deterministic CREATE FUNCTION definitions. (2804a44)

An installation guide and full documentation are available on our website skeema.io.

v1.8.2

  • MariaDB 10.9 is now supported. (9262e29)
  • When using an interactive password prompt (--password or -p with no value), the prompt text is now normally displayed on STDERR instead of STDOUT, so that it is visible even if STDOUT is being redirected to a file. This also helps ensure that STDOUT only contains valid SQL, which can be piped/redirected to other client programs as-is if desired. (c0267f4, #188)
  • MySQL 8 cross-schema foreign key safety improvement: when using the default of workspace=temp-schema, if any foreign keys cross schema boundaries (the referenced "parent" table is in a different database than the "child" table defining the FK constraint), this can cause metadata locking conflicts in MySQL 8, since the database extends metadata locks to both sides of the FK. Skeema now automatically applies a low session-level lock_wait_timeout for its workspace=temp-schema operations in MySQL 8 to limit any performance impact from such metadata locking conflicts. Note that only cross-schema FKs (and not same-schema FKs) are affected by the root issue, and only under MySQL 8 and workspace=temp-schema. See commit message for more details. (762da89)
  • Bug fix: a nil pointer panic could occur if the network connection to the DB was extremely unstable/flaky (initial connections succeeded, but some subsequent connection attempts in the same operation failed in one particular code path). Skeema will now gracefully handle this situation with a normal error message. (d07d106)

v1.8.1

  • Tables with explicit TABLESPACE innodb_system or TABLESPACE innodb_file_per_table clauses are now supported for diff operations. These clauses permit overriding the server's innodb_file_per_table setting on an individual table basis. This syntax is only available in MySQL 5.7+, and is relatively rare. (9ed3f60)
  • MySQL 8 bug fix: under some rare conditions, tables can report different next AUTO_INCREMENT value in information_schema vs SHOW CREATE TABLE, even with information_schema_stats_expiry=0 which Skeema automatically uses for its sessions. When this occurred, tables were unsupported for diff operations. To solve this, Skeema now relies on the SHOW CREATE TABLE value exclusively, and these tables are now properly supported for diffs. (677d8de)
  • Internal concurrency improvements should provide performance benefits in some scenarios, such as running Skeema with high network latency, a large count of procs/funcs, and/or operating on multiple schemas at once. (f9a6bb2)
  • When Skeema is unable to generate diff DDL for a table, the extra information logged by --debug now makes it clearer which side of the diff was problematic. A similar improvement has been made to the output of --verify in the rare case of verification failing. (#52, 677d8de)
  • Whenever skeema pull or skeema add-environment needs to rewrite a .skeema file, some option values are now rewritten differently:
    • String or enum type options that have been set to an empty-string value are now rewritten to use the "skip" prefix instead. For example, lint-pk='' is now rewritten as skip-lint-pk. These configurations have the exact same effect (and in this specific example both are equivalent to lint-pk=ignore), but the empty-string value was less clear. (cf19abd)
    • Premium CLI bug fix: If a .skeema file contained strip-definer with no value (implying =true), previously these commands would incorrectly rewrite this as strip-definer= (empty value implying false). Now fixed.
  • In a sharded environment in which shards are running different server versions (e.g. some shards on MySQL 8.0.28 and others on 8.0.30), differences in the server's metadata representation of the legacy three-byte "utf8" vs "utf8mb3" charset (and corresponding collations) are now ignored by default in skeema diff and skeema push. (894530f)
  • Some unit tests and integration tests required minor improvements to handle MySQL 8.0.30's metadata changes regarding legacy three-byte utf8mb3 collations. Aside from test suite adjustments, Skeema itself was already fully compatible with MySQL 8.0.30. (28d2b0a)
Commits
  • abea99e version bump: release v1.9.0-community
  • 06f75e1 Update CONTRIBUTING.md and PR template [ci skip]
  • 274c15a tests: minor tweaks and cleanups
  • 2804a44 docker: disable binlog in new MySQL 8 containers
  • 412a326 MariaDB: CREATE OR REPLACE syntax for procs/funcs in Community Edition
  • 53de093 MariaDB 10.10 support, including new inet4 column type
  • b35f065 improve implementation of ignore-table, ignore-proc, ignore-func
  • f2dcaf8 MariaDB: support latest SHOW CREATE TABLE changes
  • 0de3c57 add global options ignore-func and ignore-proc to Community Edition
  • b004616 password option: fix multi-host prompt text
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/skeema/skeema](https://github.com/skeema/skeema) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/skeema/skeema/releases)
- [Changelog](https://github.com/skeema/skeema/blob/main/.goreleaser.yml)
- [Commits](skeema/skeema@v1.8.0...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/skeema/skeema
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot requested a review from p1ass as a code owner December 1, 2022 04:13
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Dec 1, 2022
@codecov
Copy link

codecov bot commented Dec 1, 2022

Codecov Report

Base: 46.32% // Head: 46.32% // No change to project coverage 👍

Coverage data is based on head (aeb3eac) compared to base (10f1570).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #300   +/-   ##
=======================================
  Coverage   46.32%   46.32%           
=======================================
  Files          34       34           
  Lines        2081     2081           
=======================================
  Hits          964      964           
  Misses       1071     1071           
  Partials       46       46           

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file go Pull requests that update Go code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants