[MacPorts] #61192: Lots of golang ports are downloading dependencies at build time

MacPorts noreply at macports.org
Wed Sep 23 14:59:13 UTC 2020


#61192: Lots of golang ports are downloading dependencies at build time
-------------------------------------------------+-------------------------
  Reporter:  amake                               |      Owner:  (none)
      Type:  defect                              |     Status:  new
  Priority:  Normal                              |  Milestone:
 Component:  ports                               |    Version:
Resolution:                                      |   Keywords:
      Port:  annie aws-vault certigo chezmoi     |
  cloudmonkey copilot croc elvish evans fzf      |
  gitqlite glow go-migrate golangci-lint gore    |
  gotop grpcurl hugo ipfs istioctl jenkins-cli   |
  k9s krew kubergrunt kustomize micro mole       |
  newreleases pulumi rclone scw staticcheck      |
  syncthing tektoncd-cli terragrunt trivy uni    |
  up webify wtfutil yq                           |
-------------------------------------------------+-------------------------

Comment (by amake):

 Replying to [comment:32 breun]:
 > All entries with github.com URLs in `go.vendors` look fine, but the ones
 for k8s.io, sigs.k8s.io, google.golang.org, go.uber.org, helm.sh,
 go.opencensus.io, rsc.io, vbom.ml all have `rmd160`, `sha256` and `size`
 set to `0`. It seems that these domains are not supported by `go.vendors`.
 Is there a way around this?

 Those domains are indeed not supported by `go.vendors`. Golang allows
 arbitrary domains in package identifiers; often those domains simply
 redirect to well-known hosts like GitHub, but at the moment we don't have
 a way to figure that out.

 The only way to handle this right now would be

 1. Manually resolve those package IDs
 2. If the actual host is a known one like GitHub, then replace the package
 ID with the GitHub, etc., equivalent
 3. In the post-extract phase, move the extracted directory to its correct
 place in the GOPATH according to its original package ID

 If the package resolves to a host that is not understood by the golang-1.0
 portgroup, then you would have to set up the distfile manually the usual
 way with `distfiles` and `master_sites`.

 I have an idea for an improvement. I will ping you with more later.

-- 
Ticket URL: <https://trac.macports.org/ticket/61192#comment:33>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list