dsnet | FAST command to manage a centralised wireguard VPN | VPN library
kandi X-RAY | dsnet Summary
kandi X-RAY | dsnet Summary
The configuration is a single JSON file. Beyond possible initial customisations, the file is managed entirely by dsnet. dsnetconfig.json is the only file the server needs to run the VPN. It contains the server keys, peer public/shared keys and IP settings. A working version is automatically generated by dsnet init which can be modified as required. Currently its location is fixed as all my deployments are for a single network. I may add a feature to allow setting of the location via environment variable in the future to support multiple networks on a single host.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of dsnet
dsnet Key Features
dsnet Examples and Code Snippets
Community Discussions
Trending Discussions on dsnet
QUESTION
I've created small go application. Few days back I upgraded from go 1.15 to 1.17 and I also upgraded packages with go get -u
. After the changes I have 2 require blocks in my go.mod file. Why is it? What does it mean? Is it ok or something is broken?
Application still builds correctly.
go.mod file:
...ANSWER
Answered 2021-Oct-04 at 09:40Because in Go 1.17 the module graph has been changed to enable pruning and lazy loading. The second require
block contains indirect dependencies.
https://golang.org/doc/go1.17#go-command
If a module specifies go 1.17 or higher, the module graph includes only the immediate dependencies of other go 1.17 modules, not their full transitive dependencies. [...]
[...] If a module specifies go 1.17 or higher in its go.mod file, its go.mod file now contains an explicit require directive for every module that provides a transitively-imported package. (In previous versions, the go.mod file typically only included explicit requirements for directly-imported packages.)
Because the number of explicit requirements may be substantially larger in an expanded Go 1.17 go.mod file, the newly-added requirements on indirect dependencies in a go 1.17 module are maintained in a separate require block from the block containing direct dependencies.
Note: the go.mod
file that you posted in your question has //indirect
dependencies in the first require block. I suspect, inferring from the quoted docs "newly-added" term, that this is because those //indirect
dependencies were already listed there and go mod tidy
doesn't rearrange them. If you:
- manually delete one of those
- and/or recreate the
go.mod
file with Go version set to1.17
or higher - and/or run
go mod tidy -go=1.17
then it will properly separate direct and //indirect
dependencies in the two blocks. At least this is what I see empirically in my projects. Still looking for a more explicit mention in the docs.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install dsnet
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page