Now Available: Meltano v1.34.0 and v1.34.1

Today, we are excited to release Meltano version 1.34.0, which (among other things) contains a number of changes related to how plugin configuration is managed internally, that make it easier to use Meltano with new extractors, loaders, and transformers.

Specifically, it introduces pipeline environment variables that allow loaders and transformers to adapt their configuration and behavior based on the extractor and loader they are run with as part of a meltano elt pipeline. This feature is used to dynamically configure the target-postgres and target-snowflake loaders and dbt transformer appropriately, independent of the specific extractor and loader used, while still allowing users to override any of these defaults as they see fit.

Shortly after releasing v1.34.0, we realized that one of its changes accidentally introduced an install-time dependency on PostgreSQL. This has been fixed in Meltano version 1.34.1.

Excited to try it out?

To upgrade your local installation of Meltano, activate the appropriate Python virtual environment and run meltano upgrade from inside a Meltano project, or pip3 install --upgrade meltano from anywhere else.

What else is new?

The list below (copied from the changelog) covers all of the changes made to Meltano since last week’s release of v1.33.0:

New

  • !1664 Automatically populate env properties on newly added custom plugin settings in meltano.yml
  • !1664 Have meltano config <plugin> list print default value along with setting name and env var
  • !1664 Pass configuration environment variables when invoking plugins
  • !1664 Set MELTANO_EXTRACTOR_NAME, MELTANO_EXTRACTOR_NAMESPACE, and MELTANO_EXTRACT_{SETTING...} environment variables when invoking loader or transformer
  • !1664 Set MELTANO_LOADER_NAME, MELTANO_LOADER_NAMESPACE, and MELTANO_LOAD_{SETTING...} environment variables when invoking transformer
  • !1664 Allow dbt project dir, profiles dir, target, source schema, target schema, and models to be configured like any other plugin, with defaults based on pipeline-specific environment variables
  • #2029 Allow target-postgres and target-snowflake schema to be overridden through config, with default based on pipeline’s extractor’s namespace
  • #2062 Support --database-uri option and MELTANO_DATABASE_URI env var on meltano init
  • #2062 Add support for PostgreSQL 12 as a system database by updating SQLAlchemy

Changes

  • !1664 Infer compatibility between extractor and transform based on namespace rather than name
  • !1664 Determine transform dbt model name based on namespace instead of than replacing - with _ in name
  • !1664 Don’t pass environment variables with “None” values to plugins if variables were unset
  • !1664 Determine Meltano Analyze schema based on transformer’s target_schema or loader’s schema instead of MELTANO_ANALYZE_SCHEMA env var
  • #2053 Bump dbt version to 0.16.1

Fixes

  • #2059 Properly handle errors in before/after install hooks

Intrigued?

You haven’t seen nothing yet!

Join our mailing list

Stay current with all things Meltano