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

Switch from patch-version environments to minor-version environments #36

Open
jaypeedevlin opened this issue Sep 1, 2022 · 0 comments

Comments

@jaypeedevlin
Copy link
Contributor

In a pre 1.0 world, new features were added in patch releases and breaking changes in minor versions. Now, new features come in minor versions and breaking changes in major versions. The assumption underpinning this proposal is that you never care about running anything but the latest patch version of a particular minor branch.

For versions >=1.0 I would like to suggest:

  • We create (eg) dbt-snowflake-1.2 rather than dbt-snowflake.1.2.x
  • We use major/minor only in version files

Additionally, I propose a command to upgrade the patch versions of both the adaptor/core in an environment (in an ideal world an environment variable might control auto-upgrading patch versions if available).

I have been running something similar by manually maintaining it locally for the past few months:

  • When a new minor version comes out, bump my ~/.dbt/version file to 1.x.0
  • When a new patch version comes out, activate the relevant venv and pip install --upgrade dbt-core dbt-snowflake

Personally I find it works really well, and saves me from "environment sprawl" just to get the latest patch version. Hoping to solicit some opinions before looking at implementation options.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant