easegress
easegress copied to clipboard
Is it necessary for Easegress to follow semantic version spec as a go module for custom development experience
Currently,using Easegress to develop custom business filters and objects must pull Easegress source code. This means we need to merge Easegress source code updates continually, sometimes for any reason, there exist conflicts or you have to use git stash or do copy some code fragments manually. It is troublesome. One solution I think we can use Easegress as a module and separate custom developed code from Easegress code.
Under this assumption,we can use go get
command to update Easegress as following:
go get github.com/megaease/easegress
This is okay to get Easegress v1.x,for Easegress v2.x execute go get github.com/megaease/[email protected]
, it will report go: github.com/megaease/[email protected]: invalid version: module contains a go.mod file, so module path must match major version ("github.com/megaease/easegress/v2")
.
Because according to semantic version spec if major version greater than v1, major version should append to go module name,So module github.com/megaease/easegress
should change to module github.com/megaease/easegress/v2
in Easegress v2.x
Thanks for the valuable proposal, this requirement was neglected, because v2.0 is already released, we will try to find a solution for it.
We have solved this problem in v2.5.0. Now feel free to use go get github.com/megaease/easegress
.