Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jun 24, 2024

Bumps github.com/pressly/goose/v3 from 3.9.0 to 3.21.1.

Release notes

Sourced from github.com/pressly/goose/v3's releases.

v3.21.1

  • Add GetVersions method to goose.Provider, returns the current (max db) version and the latest (max filesystem) version. (#756)
  • Clarify GetLatestVersion method MUST return ErrVersionNotFound if no latest migration is found. Previously it was returning a -1 and nil error, which was inconsistent with the rest of the API surface.
  • Add GetLatestVersion implementations to all existing dialects. This is an optimization to avoid loading all migrations when only the latest version is needed. This uses the max function in SQL to get the latest version_id irrespective of the order of applied migrations.
    • Refactor existing portions of the code to use the new GetLatestVersion method.

Note, v3.21.0 was retracted due to a reported user issue #779 with Go modules and replace directives when using go run, hence the patch bump to v3.21.1.

v3.21.0

[!CAUTION] Retracted, please use v3.21.1 instead.

v3.20.0

What's Changed

  • Expand the Store interface by adding a GetLatestVersion method and make the interface public.
  • Add a (non-blocking) method to check if there are pending migrations to the goose.Provider (#751):
func (p *Provider) HasPending(context.Context) (bool, error) {}

[!NOTE]
The underlying implementation does not respect the SessionLocker (if one is enabled) and can be used to check for pending migrations without blocking or being blocked by other operations.

  • The methods .Up, .UpByOne, and .UpTo from goose.Provider will invoke .HasPending before acquiring a lock with SessionLocker (if enabled). This addresses an edge case in Kubernetes-style deployments where newer pods with long-running migrations prevent older pods - which have all known migrations applied - from starting up due to an advisory lock. For more details, refer to pressly/goose#507 and #751.
  • Move integration tests to ./internal/testing and make it a separate Go module. This will allow us to have a cleaner top-level go.mod file and avoid imports unrelated to the goose project. See integration/README.md for more details. This shouldn't affect users of the goose library.

v3.19.2

  • Remove duckdb support. The driver uses Cgo and we've decided to remove it until we can find a better solution. If you were using duckdb with goose, please let us know by opening an issue.

v3.19.1

  • Fix selecting dialect for redshift
  • Add GOOSE_MIGRATION_DIR documentation

... (truncated)

Changelog

Sourced from github.com/pressly/goose/v3's changelog.

[v3.21.1]

  • Add GetVersions method to goose.Provider, returns the current (max db) version and the latest (max filesystem) version. (#756)

  • Clarify GetLatestVersion method MUST return ErrVersionNotFound if no latest migration is found. Previously it was returning a -1 and nil error, which was inconsistent with the rest of the API surface.

  • Add GetLatestVersion implementations to all existing dialects. This is an optimization to avoid loading all migrations when only the latest version is needed. This uses the max function in SQL to get the latest version_id irrespective of the order of applied migrations.

    • Refactor existing portions of the code to use the new GetLatestVersion method.

[v3.21.0]

  • Retracted. Broken release, please use v3.21.1 instead.

[v3.20.0]

  • Expand the Store interface by adding a GetLatestVersion method and make the interface public.
  • Add a (non-blocking) method to check if there are pending migrations to the goose.Provider (#751):
func (p *Provider) HasPending(context.Context) (bool, error) {}

The underlying implementation does not respect the SessionLocker (if one is enabled) and can be used to check for pending migrations without blocking or being blocked by other operations.

  • The methods .Up, .UpByOne, and .UpTo from goose.Provider will invoke .HasPending before acquiring a lock with SessionLocker (if enabled). This addresses an edge case in Kubernetes-style deployments where newer pods with long-running migrations prevent older pods - which have all known migrations applied - from starting up due to an advisory lock. For more details, refer to pressly/goose#507 and #751.
  • Move integration tests to ./internal/testing and make it a separate Go module. This will allow us to have a cleaner top-level go.mod file and avoid imports unrelated to the goose project. See integration/README.md for more details. This shouldn't affect users of the goose library.

[v3.19.2] - 2024-03-13

  • Remove duckdb support. The driver uses Cgo and we've decided to remove it until we can find a better solution. If you were using duckdb with goose, please let us know by opening an issue.

[v3.19.1] - 2024-03-11

  • Fix selecting dialect for redshift
  • Add GOOSE_MIGRATION_DIR documentation
  • Bump github.com/opencontainers/runc to v1.1.12 (security fix)

... (truncated)

Commits
  • 3ad1378 Release v3.21.1
  • 7da8209 Release v3.21.0
  • a4de30e fix: improve error message in missing migrations (#772)
  • 42502ba chore: bump deps (#771)
  • 14a8a7c chore: update go deps
  • c8f44de build(deps): bump golangci/golangci-lint-action from 5 to 6 (#767)
  • 9309665 cleanup: provider disabled versioning states (#769)
  • 992628d Rename CheckPending to GetVersions (#764)
  • 8c8def4 Update HasPending logic to account for out-of-order errors (#762)
  • 7e6240d build(deps): bump golangci/golangci-lint-action from 4 to 5 (#759)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/pressly/goose/v3](https://github.com/pressly/goose) from 3.9.0 to 3.21.1.
- [Release notes](https://github.com/pressly/goose/releases)
- [Changelog](https://github.com/pressly/goose/blob/master/CHANGELOG.md)
- [Commits](pressly/goose@v3.9.0...v3.21.1)

---
updated-dependencies:
- dependency-name: github.com/pressly/goose/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Jun 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant