-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Semantically versioned imports make it difficult to use golang-migrate. #159
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
Comments
We're intermittently seeing the same failure described in #55:
1.11.1
I think what you're describing is that |
Thanks for the clarification! I'm hesitant to make exceptions for back-porting non-security related bug fixes to Since you're already running Go 1.11.x, it may be easiest to migrate to modules. |
Uh oh!
There was an error while loading. Please reload this page.
Is your feature request related to a problem? Please describe.
We use
golang-migrate/migrate
two ways:For use case (1), the shift to go modules works for us. Our migrations repo is very simple and self contained. If all we needed was the CLI functionality we could easily switch to go modules.
For use case (2), the shift to go modules is a major issue. We import our migrations repo into a large production application with many existing dependencies. We know go modules is the future and are certainly investigating it, but we don't have the luxury of switching packaging tools overnight, particularly to an experimental work in progress system that won't be finalized until Go 1.13.
Until now we had pinned
migrate
tov3.5.4
. We have been dealing with sporadic CI failures that I believe would be fixed by #150, but it now looks like we won't be able to bring in that fix without switching from govendor to go modules in our main application.I noticed that my use case is not covered in the "Three Transitional Examples" in https://github.com/golang/go/wiki/Modules#semantic-import-versioning. As far as I can tell there is no reasonable way to consume a package that has gone all-in on go modules and is at v2+, from a project using one of old standard package managers (govendor, dep).
Describe the solution you'd like
Consider the possibility that it is too soon to go all-in on go modules. At least some other major Go projects have delayed this (e.g. elastic - #103 (comment)).
If not this, would it be possible to expand the category of what gets backported to v3? Alternatively, would you be open to me opening a PR that backports just the fix from #150 into v3?
I am admittedly somewhat new to Go and could very well be missing an obvious solution or workaround here. If someone knows of one, please let me know :).
Describe alternatives you've considered
golang-migrate/migrate
and getting rid of semantically versioned import pathsgolang-migrate/migrate
Additional context
FWIW, it looks like
dep
is working on some sort of support for semantically versioned imports, but unfortunately our largest application uses govendor and I couldn't find any comparable progress there.Thank you for your work on this great tool <3
The text was updated successfully, but these errors were encountered: