Skip to content

Releases: ariga/atlas

v0.28.0

01 Oct 20:24
@a8m a8m
4c742db
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.28 🎊

Today, we're excited to release the new schema plan command, which many of you have been eagerly awaiting.

Taking the declarative workflow to the next level, the schema plan command lets you review, analyze and even edit declarative migration plans at pull-request stage, making schema apply much safer and predictable. Additionally, several new features have been added to Atlas in this release, and we cover them on our blog post.

image

Read the full announcement in our blogpost.

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license.

Full Changelog: v0.27.0...v0.28.0

v0.27.0

03 Sep 10:42
@a8m a8m
61e0bae
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.27 🎊

It's been a few weeks since our last release, and we are very excited to share with you the news of Atlas v0.27. In this release, you will find:

  • Atlas Schema Monitoring: A new product that provides a set of tools and features to help you manage and monitor your database schema effectively.
  • Pay via AWS Marketplace: Atlas users can now pay for their Atlas subscription via the AWS Marketplace.
  • Atlas HCL Doc Portal: A new portal that contains always up to date, automatically generated documentation for the Atlas HCL language.

Read the full announcement in our blogpost.

image

Note

Stay tuned for our next release which is going to include some exciting new features around declarative migrations.

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license.

Full Changelog: v0.26.0...v0.27.0

v0.26.0

09 Aug 06:53
@a8m a8m
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.26 🎊

It's been about a month since our last release, and we're excited to announce that Atlas v0.26 is now available! In this release we are happy to introduce a new feature that has been requested by many of you: support for Entity Framework Core. As part of our ever going effort to improve the quality and coverage of our documentation, we have published a set of guides on testing database schemas and migrations as well as a new GORM Portal.

Read the full announcement in our blogpost.

Note

Stay tuned for our next release which is going to include some exciting new features around declarative migrations and database schema observability.

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license.

Full Changelog: v0.25.0...v0.26.0

v0.25.0

09 Jul 11:48
@a8m a8m
7e9e0d6
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.25 🎊

Thanks for joining us today for our v0.25 release announcement! In this version we are introducing a new feature that has been requested by many of you: support for Row-level Security Policies in PostgreSQL.

What are Row-level Security Policies?

Row-level security (RLS) in PostgreSQL allows tables to have policies that restrict which rows can be accessed or modified based on the user's role, enhancing the SQL-standard privilege system available through GRANT.

When enabled, all normal access to the table must comply with these policies, defaulting to a deny-all approach if no policies are set, ensuring that no rows are visible or modifiable. Policies can be specific to commands, roles, or both, providing fine-grained control over data access and modification.

policy "employee_policy" {
  on    = table.employees
  for   = SELECT
  to    = [PUBLIC]
  using = "(current_user = employee_role)"
}

Read the full announcement and in our blogpost: https://atlasgo.io/blog/2024/07/09/v025-row-level-security

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license.

Full Changelog: v0.24.0...v0.25.0

v0.24.0

14 Jun 11:07
@a8m a8m
44a6f88
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.24 🎊

We are back again with a new release of Atlas, v0.24. In this release we double down on the core principle that has been guiding us from the start: enabling developers to manage their database Schema as Code. The features we announce today may appear like a yet another cool addition to Atlas, but we're confident, that in a few years' time, they will be recognized as something foundational.

In this release we introduce:

  • schema test - a new command (and framework) for testing your database schema using familiar software testing paradigms.
  • migrate test - a new command for testing writing tests for you schema migrations.
  • Enhanced editor support - we have added support for some long awaited features in our VSCode and JetBrains plugins: multi-file schemas, jump to definition, and support for much larger schemas.
test "migrate" "20240613061102" {
  # Migrate to version 20240613061046.
  migrate {
    to = "20240613061046"
  }
  # Insert some test data.
  exec {
    sql = "insert into users (name) values ('Ada Lovelace')"
  }
  # Migrate to version 20240613061102.
  migrate {
      to = "20240613061102"
  }
  # Verify the correctness of the data migration.
  exec {
    sql = "select first_name,last_name from users"
    output = "Ada, Lovelace"
  }
}

Read the full announcement and in our blogpost: https://atlasgo.io/blog/2024/06/13/atlas-v-0-24

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license.

Full Changelog: v0.23.0...v0.24.0

v0.23.0

21 May 12:11
@a8m a8m
fa6c067
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.23 🎊

It's been a few weeks since the release of v0.22 and we're excited to be back with the next version of Atlas, packed with some long awaited features and improvements.

  • Redshift Support - Amazon Redshift, a fully managed, petabyte-scale data warehouse service in the cloud. Starting today, you can use Atlas to manage your Redshift Schema-as-Code.
  • CircleCI Integration - Following some recent requests from our Enterprise customers, we have added a CircleCI orb to make it easier to integrate Atlas into your CircleCI pipelines.
  • Kubernetes Operator Down Migrations - The Kubernetes Operator now detects when you are moving to a previous version and will attempt to apply a down migration if configured to do so.
  • GORM View Support - We have added support for defining SQL Views in your GORM models.
  • SQLAlchemy Provider Improvements - We have added support for defining models using SQLAlchemy Core Tables in the SQLAlchemy provider.
  • ERD v2 - We have added a new navigation sidebar to the ERD to make it easier to navigate within large schemas.
  • PostgreSQL Improvements - We have added support for PostgreSQL Event Triggers, Aggregate Functions, and Function Security.

Read the full announcement and in our blogpost: https://atlasgo.io/blog/2024/05/21/atlas-v-0-23

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license.

Full Changelog: v0.22.0...v0.23.0

v0.22.0

30 Apr 12:46
@a8m a8m
296a12c
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.22 🎊

We're happy to share with you v0.22, which includes very exciting improvements for Atlas. Here's what's new:

  • RENAME Detection - Prior to version v0.22, Atlas interpreted schema renames as DROP and ADD commands. This version includes a rename detector that identifies such operations and interactively asks the user for feedback before generating the changes.
  • Preventing Table Locks - Eight new checks have been added to the migrate lint to detect table locks in various modes, which can be avoided during the PR stage. Note, these checks are available for Atlas Cloud users only πŸš€
  • Added support for PostgreSQL UNIQUE and EXCLUDE constraints.
  • PostgreSQL composite types can now be managed as part of your schema.
  • Added support for sequence objects in Microsoft SQL Server.

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license. If you would like to build Atlas from source follow the instructions here.

Full Changelog: v0.21.0...v0.22.0

v0.21.0

01 Apr 19:06
@a8m a8m
464a173
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.21 🎊

It's been only two weeks since our last version and today I'm happy to share with you v0.21, which includes very exciting feature for Atlas: migrate down.

The new atlas migrate down command allows reverting applied migrations. Unlike the traditional approach, where down files are "pre-planned", Atlas computes a migration plan based on the current state of the database. Atlas reverts previously applied migrations and executes them until the desired version is reached, regardless of the state of the latest applied migration β€” whether it succeeded, failed, or was partially applied and left the database in an unknown version.

Read the full announcement and in our blogpost: https://atlasgo.io/blog/2024/04/01/migrate-down

image

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license. If you would like to build Atlas from source follow the instructions here.

Full Changelog: v0.20.0...v0.21.0

v0.20.0

17 Mar 13:00
@a8m a8m
6c99dbd
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.20 🎊

It's been a few weeks since our last version announcement and today I'm happy to share with you v0.20, which includes very exciting improvements for Atlas. Here's what's new:

  • Support for PostgreSQL Extensions - Atlas now supports installing and managing PostgreSQL extensions.
  • Django ORM Integration - Atlas now supports Django! Django is a popular ORM for Python. Developers using either ORM can now use Atlas to automatically plan schema migrations for them, based on the desired state of their schema instead of crafting them by hand.
  • SQL Server is out of Beta - SQL Server is officially out of Beta! Along with this official support, we have included some new features:
    • User-Defined Types support for SQL Server - Atlas now supports two User-Defined Types: alias types and table types.
    • Azure Active Directory (AAD) Authentication for SQL Server - Connect to your SQL Server database using AAD Authentication.
  • Dashboards in the Cloud - The dashboard (previously the 'Projects' page) got a whole new look in Atlas Cloud. Now you can view the state of your projects and environments at a glance.

Read the full announcement on our blog: https://atlasgo.io/blog/2024/03/18/atlas-v-0-20

image

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license. If you would like to build Atlas from source follow the instructions here.

Full Changelog: v0.19.0...v0.20.0

v0.19.0

02 Feb 14:29
@a8m a8m
bf1bf8e
Compare
Choose a tag to compare

We are excited to announce the release of Atlas v0.19.0 🎊

It has been three weeks since our last version announcement, and today I'm happy to share with you v0.19, which includes some very exciting improvements for Atlas. Here's what's new:

  • Pre-migration Checks: Before executing schema changes, you can now add pre-migration checks that will be verified to help avoid risky migrations.
  • Schema Docs: Atlas lets you manage your database schema as code. One of the things we love most about code, is that because of its formal structure, it's possible to automatically generate documentation from it. With this release, we're introducing a new feature that lets you generate code-grade documentation for your database schema.
  • SQL Server Trigger Support: Atlas now supports managing triggers in SQL Server.
  • ClickHouse Materialized Views Support: Atlas now supports managing materialized views in ClickHouse.

Read the full announcement on our blog: https://atlasgo.io/blog/2024/02/02/atlas-v-0-19

image

Quick installation

macOS + Linux:

curl -sSf https://atlasgo.sh | sh

Homebrew:

brew install ariga/tap/atlas

Docker:

docker pull arigaio/atlas

Windows

Download

Legal

The default binaries in this release are distributed released under Atlas EULA, and the community binaries are released under the Apache 2.0 license. If you would like to build Atlas from source follow the instructions here.

Full Changelog: v0.18.0...v0.19.0

What's Changed

  • doc: update banner by @a8m in #2439
  • sql/postgres: attach change source to multi-statement changes by @a8m in #2441
  • docs: change ApplyParams to MigrateApplyParams by @haoxins in #2443
  • doc/md: features availability comparison by @rotemtam in #2444
  • doc/md: support page by @rotemtam in #2445
  • doc/md/features: checkpoints require login by @rotemtam in #2446
  • doc/md: update schema for SQLServer by @giautm in #2354
  • doc/md: added SQL server example by @giautm in #2448
  • docs: update APIs with atlas-go-sdk v0.4 by @haoxins in #2449
  • doc/website: re-add cloud link to top navbar by @rotemtam in #2451
  • sql/internal/specutil: fix typo by @a8m in #2457
  • cmd/atlas/cmdlog: extend migrate apply output by @a8m in #2461
  • doc: add documentation for set change analyzers by @noamcattan in #2464
  • schemahcl: allow set for_each on tuple any by @a8m in #2466
  • doc: login to extend inspection by @a8m in #2469
  • doc/md: update document and guide for SQL server by @giautm in #2470
  • doc/md: trigger example for SQL Server by @giautm in #2471
  • doc/website/blog: why you need schema as code by @rotemtam in #2474
  • website/blog: edit clickhouse blog by @hilakashai in #2475
  • doc/md: support sqlserver for gorm and sequelize by @giautm in #2476
  • doc/orm: add list of supported orms by @a8m in #2479
  • website/blog: add example to blogpost by @hilakashai in #2481
  • doc/md: update HCL types for MSSQL by @giautm in #2478
  • sql/specutil: marshal materialized for multiple schemas by @datdao in #2485
  • cmd/atlas: allow ref env:// to known attributes by @a8m in #2489
  • doc/md: clickhouse guide by @hilakashai in #2487
  • doc/md: fix clickhouse guide example by @hilakashai in #2490
  • cmd/atlas: add checks to migration reporting by @a8m in #2493
  • doc: pre-migration checks page by @a8m in #2495
  • doc/clickhouse: add materialized view by @datdao in #2491
  • sql/sqlite: Fix DROP TABLE IF EXISTS by @eric in #2499
  • cmd/atlas/internal/cmdapi: use driver-aware statement scanning in migrate status by @a8m in #2497
  • sql/internal/specutil: accept uint64 in schemahcl by @a8m in #2504
  • doc/website: v0.19 announcement by @hilakashai in #2502

New Contributors

Full Changelog: v0.18.0...v0.19.0