I’ve filed this as #34417, at https://github.com/golang/go/issues/34417 
<https://github.com/golang/go/issues/34417>

> On Sep 19, 2019, at 09:52, Russ Selph <rse...@tibco.com> wrote:
> 
> Thanks for the hints.  I'll try to reproduce from the tip branch before 
> filing a bug.
> 
>> On Sep 19, 2019, at 09:34, t hepudds <thepudds1...@gmail.com 
>> <mailto:thepudds1...@gmail.com>> wrote:
>> 
>> Hello Russ,
>> 
>> Usually, if you are not modifying your code, I think go.mod should be stable 
>> across repeated identical invocations of something like 'go build' or 'go 
>> install'.
>> 
>> I think there were a similar sounding set of bugs fixed for Go 1.13, but 
>> sounds like you are seeing this with Go 1.13.
>> 
>> A more recent bug was this one, which I think was reported against Go 1.13:
>> 
>>    https://github.com/golang/go/issues/34086 
>> <https://github.com/golang/go/issues/34086>
>> 
>> That particular bug has seemingly been fixed in the tip branch. It probably 
>> is worth trying to see if you can reproduce with that fix in place. A handy 
>> way to try with the latest from tip / master is:
>> 
>>             $ go get golang.org/dl/gotip <http://golang.org/dl/gotip>
>>             $ gotip download 
>> 
>> However, that might not solve it for you. 
>>  
>> If you still see the same behavior using 'gotip', then I would suggest 
>> opening a new bug to make sure one of the people working on cmd/go takes a 
>> look. It looks like you already have nicely pulled together a public 
>> reproducer, which is great.
>> 
>> Finally, does 'go mod tidy' seem to be stable in terms of how it leaves 
>> go.mod?  If so, one approach in the short term might be to run 'go mod tidy' 
>> to put go.mod into a more stable state (e.g., after running 'go install'), 
>> but given you seem to be seeing a bug, I'm not sure if that will work for 
>> you.
>> 
>> Regards,
>> thepudds
>> 
>> On Wednesday, September 18, 2019 at 7:38:41 PM UTC-4, Russ Selph wrote:
>> Hi,
>> 
>> I've got a modules problem, and I'm not sure yet whether it's operator error 
>> or something worthy of a bug report.  In short, I have a build where go.mod 
>> oscillates between two states build by build.  The first build changes it 
>> one way, the next build changes it back.  If I try the build with 
>> -mod=readonly, it will always fail because every build wants to change 
>> go.mod.  This is a real problem for source control.  :-)
>> 
>> I've put together a toy project that demonstrates the problem.  It's based 
>> on our real world project, which is pretty large.  This one has no code of 
>> any consequence, but is an exact model of the external dependencies.
>> 
>> https://github.com/rselph-tibco/go-unstable-mods 
>> <https://github.com/rselph-tibco/go-unstable-mods>
>> 
>> There are two programs and two packages, all contained in two modules, with 
>> a sort of twisted interdependency.  But it seems to be the external 
>> dependencies that are messing things up.  On subsequent builds of sample1, 
>> the go.mod file  does this:
>> 
>>     foo.com/me/sample2 <http://foo.com/me/sample2> 
>> v0.0.0-00010101000000-000000000000
>>     github.com/coreos/bbolt <http://github.com/coreos/bbolt> v1.3.3
>>     github.com/coreos/etcd <http://github.com/coreos/etcd> 
>> v3.3.15+incompatible
>> -   github.com/coreos/go-semver <http://github.com/coreos/go-semver> v0.3.0 
>> // indirect
>>     github.com/elazarl/go-bindata-assetfs 
>> <http://github.com/elazarl/go-bindata-assetfs> v1.0.0
>>     github.com/gorilla/mux <http://github.com/gorilla/mux> v1.7.3
>> -   github.com/json-iterator/go <http://github.com/json-iterator/go> v1.1.7 
>> // indirect
>>     github.com/magiconair/properties 
>> <http://github.com/magiconair/properties> v1.8.1
>> -   github.com/modern-go/reflect2 <http://github.com/modern-go/reflect2> 
>> v1.0.1 // indirect
>>     github.com/satori/go.uuid <http://github.com/satori/go.uuid> v1.2.0
>>     golang.org/x/net <http://golang.org/x/net> 
>> v0.0.0-20190918130420-a8b05e9114ab
>> 
>> then this:
>> 
>>     foo.com/me/sample2 <http://foo.com/me/sample2> 
>> v0.0.0-00010101000000-000000000000
>>     github.com/coreos/bbolt <http://github.com/coreos/bbolt> v1.3.3
>>     github.com/coreos/etcd <http://github.com/coreos/etcd> 
>> v3.3.15+incompatible
>> +   github.com/coreos/go-semver <http://github.com/coreos/go-semver> v0.3.0 
>> // indirect
>>     github.com/elazarl/go-bindata-assetfs 
>> <http://github.com/elazarl/go-bindata-assetfs> v1.0.0
>>     github.com/gorilla/mux <http://github.com/gorilla/mux> v1.7.3
>> +   github.com/json-iterator/go <http://github.com/json-iterator/go> v1.1.7 
>> // indirect
>>     github.com/magiconair/properties 
>> <http://github.com/magiconair/properties> v1.8.1
>> +   github.com/modern-go/reflect2 <http://github.com/modern-go/reflect2> 
>> v1.0.1 // indirect
>>     github.com/satori/go.uuid <http://github.com/satori/go.uuid> v1.2.0
>>     golang.org/x/net <http://golang.org/x/net> 
>> v0.0.0-20190918130420-a8b05e9114ab
>> 
>> What's the best way to debug what's going on here?  Does this look like any 
>> known problem?  (Search didn't yield anything that looked similar to me.)
>> 
>> You can follow the exact steps and their consequences here: 
>> https://github.com/rselph-tibco/go-unstable-mods/commits/master 
>> <https://github.com/rselph-tibco/go-unstable-mods/commits/master>
>> All of that was generated by the script at 
>> https://github.com/rselph-tibco/go-unstable-mods/blob/master/run.sh 
>> <https://github.com/rselph-tibco/go-unstable-mods/blob/master/run.sh>
>> 
>> -- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "golang-nuts" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/golang-nuts/JD9pxtPIxHg/unsubscribe 
>> <https://groups.google.com/d/topic/golang-nuts/JD9pxtPIxHg/unsubscribe>.
>> To unsubscribe from this group and all its topics, send an email to 
>> golang-nuts+unsubscr...@googlegroups.com 
>> <mailto:golang-nuts+unsubscr...@googlegroups.com>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/golang-nuts/63ac661b-7d10-466f-9652-aaf0b2d8f90e%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/golang-nuts/63ac661b-7d10-466f-9652-aaf0b2d8f90e%40googlegroups.com?utm_medium=email&utm_source=footer>.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/F6BA762F-CE14-476D-898D-42219FB1AB8E%40tibco.com.

Reply via email to