We are excited to share the v0.10.0 release! π
It's been two months since v0.9.0, and it's time to release a new version and share with you what we've accomplished so far, as well as what's to come in the upcoming weeks. Besides the many improvements and bug fixes in v0.10.0, we added two major integrations to Atlas that we want to share with you: schema loaders and cloud-based migration linting.
Read the full announcement on Atlas blog
Quick installation
macOS + Linux:
curl -sSf https://atlasgo.sh | sh
Homebrew:
brew install ariga/tap/atlas
Docker:
docker pull arigaio/atlas
Windows
Download
What's Changed
Commits
cmd/atlas: update ariga.io/atlas by @a8m in #1391
sql/sqlclient: improve url/opener error by @a8m in #1392
sql/postgres: clear enum types after replaying migrations directory by @a8m in #1393
cmd/atlas: improve 'atlas migrate set' command by @a8m in #1395
doc: add examples for down migrations by @a8m in #1396
doc/md/guides: Add article about functional indexes in MySQL by @priteshtm in #1389
doc/md/cloud/getting-started: update multi tenancy content by @shani-a in #1386
doc/md: sqlc guide (declarative) by @crossworth in #1394
doc/md: adds more examples for the sqlc declarative guide by @crossworth in #1399
website: add newsletter icon & link by @shani-a in #1400
schemahcl: add url un/escape functions by @a8m in #1401
sql: add support for diffing primary-key changes by @a8m in #1402
sql/mysql: support planning pk changes by @a8m in #1403
sql/mysql: DROP and ADD primary key on the same command by @a8m in #1404
doc/md/guides/mysql: Add article about prefix indexes by @priteshtm in #1397
sql/postgres: support planning primary-key changes by @a8m in #1406
doc/md: sqlc guide (versioned) by @crossworth in #1398
sql/postgres: use the database to compare expressions only by @a8m in #1409
doc/md: ecs fargate guide by @rotemtam in #1408
sql/mysql: respect the lower_case_table_names sysvar on table search by @a8m in #1410
sql/internal/sqlx: patch non-identical table names in lcmode by @a8m in #1411
doc: add youtube footer link by @rotemtam in #1413
doc/website: Remove newsletter icon from front page by @shani-a in #1419
doc/website: update links to Atlas Cloud by @hilakashai in #1420
sql/postgres: disable locking capability in crdb mode by @a8m in #1421
doc/website: changing banner content to newsletter subscription by @shani-a in #1422
sql/migrate: support reading file directives by @a8m in #1423
Update docusaurus.config.js by @shani-a in #1425
Doc/md/guides/mysql: Add doc about CHECK constraint by @priteshtm in #1416
Merge #1418 by @a8m in #1426
docs: fix typo in golang-migrate by @CanRau in #1427
cmd/atlas/internal: support file-level nolint directives by @a8m in #1430
cmd/atlas: add support for txmode in file directives by @a8m in #1432
doc/md: update cloud screenshots by @hilakashai in #1433
sql/mysql: unquote timestamp default values on diff by @a8m in #1437
sql/migrate: MemDir will now only return sql files and respect a chec⦠by @masseelch in #1438
sql/migrate: allow overriding migrate.Validate by @masseelch in #1442
sql/postgres: add internal and special types by @a8m in #1443
doc/md: updating getting started instruction from tokens to CI bot by @shani-a in #1439
internal/integration: tests postgres internal types by @a8m in #1446
sql/sqlite: support reading index part with expressions by @a8m in #1447
sql/sqlite: add uint64 to sqlspec types by @a8m in #1452
doc/md/declarative: add doc for declarative migrations with single schemas (HCL) by @priteshtm in #1451
sql/migrate: accept nil values in CheckClean by @masseelch in #1455
sql/migrate: ensure consistency of NotCleanError by @blukai in #1454
cmd/atlas: update ariga.io/atlas by @a8m in #1457
cmd/atlas: create directory in 'migrate new' if it does not exist by @a8m in #1458
cmd/atlas: allow using ent/schemas as desired states by @a8m in #1459
cmd/atlas: support sqltool formatters in ent extension by @a8m in #1460
doc/md/declarative: add doc about SQL declarative migrations for a single MySQL schema by @priteshtm in #1453
cmd/atlas: print ErrNoPlan message when cmdext.MigrateDiff is executed by @a8m in #1462
sql/migrate: fix validate logic with empty directory by @giautm in #1463
cmd/lint: fixed atlas.sum report on empty dir by @giautm in #1464
sql/migrate: small refactor and test changes by @a8m in #1466
cmd/atlas: experiment function for running lint by @a8m in #1467
doc/versioned: add all drivers to migrate apply by @a8m in #1470
doc/md: Add getting started docs for declarative migrations by @a8m in #1473
doc/website: new front page design by @dimagreat in #1468
atlas/x: ignore SilentError by @giautm in #1475
Revert "doc/website: new front page design" by @rotemtam in #1477
schemahcl: limit type variables scope to specific location by @a8m in #1478
cmd/atlas/internal: add an HCL reference to the --env name by @a8m in #1479
atlas/lint: change Result to FileReport by @giautm in #1481
cmd/atlas: add support for template_dir by @a8m in #1480
doc: add template_dir data source by @a8m in #1482
doc/md/guides: Add docs for functional and descending indexes in PostgreSQL and SQLite by @a8m in #1486
doc: baseline migration + dev database by @a8m in #1488
cmd/atlas: unnamed env blocks by @a8m in #1489
cmd/atlas: update ariga.io/atlas by @a8m in #1491
sql/migrate: archive and unarchive dir by @rotemtam in #1492
feat/atlas react website by @dimagreat in #1490
cmd/atlas/internal/cloudapi: cloud client by @rotemtam in #1493
sql: support planning with indentation by @a8m in #1494
bugfix/website-header-link by @dimagreat in #1497
doc/md/integrations: minor fixes to gh actions doc by @rotemtam in #1499
cmd/atlas: rename --log to --format by @a8m in #1500
cmd/atlas: add --format to both schema and migrate diff by @a8m in #1504
doc/md: guide on testing with github actions by @rotemtam in #1502
cmd/atlas: pass indentation info to ext diff by @a8m in #1506
schemahcl: add support for init blocks by @a8m in #1507
cmd/atlas: add drop column and drop index to entloader by @giautm in #1508
atlas/cmd/internal/cmdext: remote_dir data source by @rotemtam in #1496
sql/postgres: clean enums on table drop by @a8m in #1510
cmd/atlas/internal: remote dir tags by @rotemtam in #1513
sql/postgres: drop tables with CASCADE on cleanup by @a8m in #1515
cmd/atlas/internal: add sumfile to remotedir memdir by @rotemtam in #1514
sql/sqlcheck: add backwards-incompatible checks by @a8m in #1511
sql/sqlite/sqlitecheck: add backwards-incompatible checks by @a8m in #1516
doc: add bc checks by @a8m in #1518
sql/postgres: accept sequence quoted as identifiers by @a8m in #1521
cmd/atlas: simplify gql client by @a8m in #1522
go: update golang.org/x/text and golang.org/x/net to latest by @a8m in #1525
Update image.md by @michaelcaulley in #1531
make a string lower before doing the string comparison by @markdessain in #1526
cmd/atlas: update ariga.io/atlas by @a8m in #1532
New Contributors
Full Changelog: v0.9.0...v0.10.0