Comments (6)
I very much applaud this issue. I love when modules come with no dependencies:)
BTW, does this also apply to testify
?
Here's an interesting blogpost I read some time ago – The Cult of Go Test.
from cli.
@dearchap Yes, I think we're already at the point where the only build-time and runtime dependencies are from the Go standard library 👍🏼.
There are a few dependencies that will become part of the go.mod
resolution because they are used in tests and examples, and the test dependency on github.com/stretchr/testify. I think that the value of eliminating these remaining go.mod
resolution-time and test-specific dependencies is significantly lower than eliminating build dependencies, but there's still potential value there.
from cli.
@bartekpacia Yay I'm glad you like! I generally agree with that blog post!
As for testify
, I think I'm ambivalent. Since Go treats testing dependencies as a separate group, we're protected from leaking such dependencies into production builds. I have not rigorously tested these assumptions 😬.
All of this being said, I'm not interested in introducing any more testing dependencies right now, nor do I see cases where the testify/suite
capabilities would be significantly better than table-driven tests. Sticking to testify/assert
and `testify/require' is my preference right now 👍🏼
WDYT? I'm happy to talk more about the tradeoffs 😁
from cli.
Since there's more important work to do, and this doesn't affect any of our users, but only our codebase, I think it's OK to not act upon it at all right now.
I'd prefer to use pure Go test instead of testify/assert
and testify/require
, but then it's my small preference vs your preference, so no good reason for any change :P
I just love go.mod
files with no dependencies :P
from cli.
I also love go.mod
files with no dependencies! Please let's keep talking about this 🙇🏼
from cli.
Whats the problem. I dont see any direct dependencies at all. The indirect dependencies are all because of docs generation. I'm fine with what we have
from cli.
Related Issues (20)
- Wrong help output when a Command has "HideHelpCommand=true" but no defined subcommands
- DefaultCommand does not work when defined on a sub-Command HOT 9
- subcommand help did show global options. HOT 1
- How do I define Usage for BoolWithInverseFlag? HOT 23
- Shell completions are broken when login shell is different than currently active shell
- Use mkdocs `mike` for multi-version docs
- Build out all of the v3 documentation
- Vendor usage of `github.com/xrash/smetrics` for suggestions HOT 2
- Delete stale branches HOT 5
- Use gofumpt
- Man page generation feature is not documented anywhere HOT 3
- Doc generation default value set by environment variable HOT 4
- Expose shell completions scripts in by default in the `completion` command HOT 5
- More powerful shell completion HOT 2
- Ensure `go mod tidy` works as expected HOT 1
- Target `stable` and `oldstable` in main CI
- Flags are alphabetically sorted when using categories HOT 3
- Should I expect completion of nested command's flags to work? HOT 30
- AfterFunc execution details HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cli.