Bug ID 1082409
Summary Major regression in usability of go package
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Development
Assignee bnc-team-screening@forge.provo.novell.com
Reporter dmacvicar@suse.com
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

By accident I discovered that I could not compile software because my go was
pointing to go1.4

scanner_test.go:7:2: cannot find package "github.com/dmacvicar/someproject" in
any of:
        /usr/lib64/go1.4/src/github.com/dmacvicar/someproject (from $GOROOT)

I never installed go1.4

So I tried to remove it:
$ sudo zypper rm go go1.4 go1.6
[sudo] password for root:                                                       
Loading repository data...                                                      
Reading installed packages...                                                   
Resolving package dependencies...                                               

The following 9 packages are going to be REMOVED:                               
  go go1.4 go1.4-doc go1.4-race go1.6 go1.6-doc go1.6-race go-doc go-race 

I try to install go again:

$ sudo zypper in go
Loading repository data...           
Reading installed packages...                                                   
Resolving package dependencies...                             

The following 11 NEW packages are going to be installed:
  go go1.4 go1.4-doc go1.4-race go1.6 go1.6-doc go1.6-race go1.9 go1.9-doc
go1.9-race go-race

The following recommended package was automatically selected: 
  go1.9-doc                         

Again 1.4!

I imagined go required go1.4 or something like that, but I locked go1.4 and I
was still able to install go.

I think the problem lies in that both "go" and "go1.9" provide "go = 1.9", and
on top of that "go" requires "go1.9".

What is the point of the "go" package? It only confuses the solver. Every goX.X
package can still "provide go". That way only the latest will get installed.

Additionally, what is the point in having go1.4 there? Is it only to build the
whole chain?

Then there is a problem with GOROOT. Installing a newer go, updates the
alternatives but GOROOT is still pointing to the go1.4 go.


You are receiving this mail because: