[tor-bugs] #33330 [Circumvention/Snowflake]: Use Go modules for Snowflake

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Mar 10 03:46:58 UTC 2020


#33330: Use Go modules for Snowflake
-------------------------------------+------------------------
 Reporter:  cohosh                   |          Owner:  cohosh
     Type:  defect                   |         Status:  closed
 Priority:  Medium                   |      Milestone:
Component:  Circumvention/Snowflake  |        Version:
 Severity:  Normal                   |     Resolution:  fixed
 Keywords:                           |  Actual Points:  .2
Parent ID:                           |         Points:  .2
 Reviewer:                           |        Sponsor:
-------------------------------------+------------------------

Comment (by dcf):

 Replying to [comment:6 cohosh]:
 > Yeah this is weird. I'm still not sure why dependencies are sometimes
 added with `// indirect`. As far as I can tell, they are mostly not
 necessary to get a working build.
 [https://github.com/golang/go/wiki/Modules#why-does-go-mod-tidy-record-
 indirect-and-test-dependencies-in-my-gomod This resource] suggests that
 they are required by dependencies that don't have module support, but I
 suspect there's a bug in how they determine that.

 I think I see now. github.com/golang/protobuf and golang.org/x/text are
 only used by tests, and they are not packages themselves, but modules
 containing packages. The actual packages are
 github.com/golang/protobuf/proto and golang.org/x/text/secure/bidirule.
 `go mod why -m` searches for subpackages of that form.
 {{{
 $ go mod why github.com/golang/protobuf
 # github.com/golang/protobuf
 (main module does not need package github.com/golang/protobuf)

 $ go mod why golang.org/x/text
 # golang.org/x/text
 (main module does not need package golang.org/x/text)

 $ go mod why -m github.com/golang/protobuf
 # github.com/golang/protobuf
 git.torproject.org/pluggable-transports/snowflake.git/client
 github.com/pion/webrtc/v2
 github.com/pion/quic
 github.com/lucas-clemente/quic-go
 github.com/lucas-clemente/quic-go.test
 github.com/onsi/ginkgo
 github.com/onsi/ginkgo/internal/remote
 github.com/onsi/ginkgo/internal/spec_iterator
 github.com/onsi/ginkgo/internal/spec_iterator.test
 github.com/onsi/gomega/ghttp
 github.com/golang/protobuf/proto

 $ go mod why -m golang.org/x/text
 # golang.org/x/text
 git.torproject.org/pluggable-transports/snowflake.git/broker
 golang.org/x/crypto/acme/autocert
 golang.org/x/net/idna
 golang.org/x/text/secure/bidirule
 }}}

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/33330#comment:8>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list