Skeema v1.7.0 released

January 24, 2022

Skeema v1.7.0 has been released! This new version adds support for Aurora MySQL 8 and MariaDB 10.7, 64-bit Linux ARM builds, self-update functionality in the Premium CLI, and more.

AWS Aurora v3 (MySQL 8) support

AWS recently released Aurora v3 (MySQL 8 engine). The Premium edition of the Skeema CLI offers full support for Aurora, and is extensively tested against all three major versions of Aurora – AWS Aurora for MySQL 5.6, 5.7, and now 8.0 as well.

Skeema is able to leverage an important change in Aurora v3’s privilege grants for admin user accounts: although Aurora still does not offer SUPER privileges, Aurora v3 does provide some of MySQL 8’s new finer-grained administrative privileges, including SESSION_VARIABLES_ADMIN and SET_USER_ID. By default, Skeema’s temp-schema-binlog and strip-definer features will automatically detect these privilege grants and adjust their behavior accordingly.

Although the Community edition of the Skeema CLI is not tested against Aurora and does not officially support Aurora, it has no known incompatibilities with Aurora MySQL 8 so far.

MariaDB 10.7 support

MariaDB recently made available a release candidate of their new MariaDB 10.7 series, and Skeema now offers preliminary support for this release series. This includes functionality for MariaDB 10.7’s new uuid column type, which can safely be converted to/from several specific sizes of binary, char, and varchar column types without requiring Skeema’s allow-unsafe option.

ARM 64-bit builds for Linux

We now provide Skeema CLI builds for the 64-bit ARM architecture (“arm64” or equivalently “aarch64”) on Linux, for both the Community and Premium editions of Skeema. This includes all of our supported Linux package manager formats (rpm, deb, apk), in addition to the raw tar.gz archive. With these new builds, you can easily install and run Skeema from AWS Graviton, Linux VMs on m1 Macs, and even Raspberry Pi systems!

Premium CLI subscribers can take advantage of our secure repos for popular Linux package managers (apt-get, yum, dnf, zypper, apk). These package managers automatically select the correct build for your CPU architecture.

Premium CLI self-update functionality

The Premium CLI now includes functionality to notify users about new Skeema releases. It also has a new skeema update command, which will perform an in-place software update on your Skeema binary. This feature automatically selects the correct build for your OS and CPU architecture, and updates to the latest Skeema Premium CLI version easily in a single command.

This feature is most useful on Windows and Mac systems, in situations where each engineer has skeema installed on their local machine. It can also be used on Linux, but we typically recommend using one of the supported package managers (apt-get, yum, dnf, zypper, or apk) on Linux to manage software updates instead.

Additional changes

Several other minor enhancements and fixes have been included in this release:

  • Files with UTF-8 byte order markers (BOM), which are more common on Windows, are now parsed properly
  • MySQL 8 bug fixes, to allow diff operations on previously-unsupported tables that use specific edge cases of generated columns, functional indexes, or DEFAULT expressions
  • MariaDB’s ALGORITHM=NOCOPY is now supported by Skeema’s alter-algorithm option
  • Several problem conditions in .sql files, which previously generated warnings, now emit fatal errors instead; this reduces risk of typos causing unexpected results from skeema diff or skeema push

For more information, full release notes are available on GitHub.