Package: golang-github-anacrolix-missinggo-dev
Version: 2.1.0-4
Followup-For: Bug #940286

That's correct, the circular dependency is in fact present in the two
packages.

In missinggo,  cmd/filecache/main.go and cmd/http-file-server/main.go
use tagflag.Parse.

In tagflag, parser.go and usage.go use missinggo/slices.

The situation is uncomfortable, but I do not anticipate it will cause
problems in practice.  tagflag is source-only, missinggo only needs it
to be present in the GOPATH, and vice versa.

There is no operational circular dependency in the actual files
involved, i.e. missinggo/slices (required by tagflags) is not the part
of missinggo that depends on tagflags.

missinggo is a collection of various miscellaneous functions, not a
library with a specific capability.  Not all functions are related to
one other.

The alternative is to patch missinggo/slices into tagflag.  This is
easy to do with Go using vendor directories.  This is how I bootstrapped
tagflag.  But now that missinggo itself is available, it doesn't seem
constructive to continue the vendor bootstrap.  It's a worse option
than tolerating the circular dependency, I think.

Reply via email to