revive
moq
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
revive
-
revive v1.3.4 is now available
The v1.3.4 of revive, the fast, configurable, extensible, flexible, and beautiful linter for Go, is available.
-
net/http extension to exchange structs
I would suggest checking out something like revive to improve the code. For instance you use an errors.New(fmt.Sprintf(... when you can just use fmt.Errorf(... to simplify it. I am not saying obey everything but there are some good lints included that can even catch bugs (for instance misusing errors.Is or errors.As or general equality).
-
Why elixir over Golang
Linting and static analysis: https://revive.run/
- Just migrated our Open Source project to Golang
-
Revive 1.3 is out
For people using this linter (like me) https://github.com/mgechev/revive
-
Is there a better alternative to `gofmt`?
Been using https://github.com/mgechev/revive in all my projects.
-
Change Blogging my first Hacktoberfest (2021)
The day after, I talked about the Hacktoberfest to Salvador (architect colleague and my technical/career unofficial mentor). He is known for contributing to revive a Golang linter. We decided that I could contribute by solving these 3 issues (2 new rules and add a docker image to the release). Since this moment, I have been coding every available hour I had. It felt so reviving to spend time coding on new projects, rewarding to solve issues for people actually using the tool. Here are all my contributions.
-
Golang Style Checkers
While golint may be deprecated it has been brought back as revive. You can also enable in golangci-lint.
- Mgechev/revive: faster,stricter,configurable,extensible,replacement for golint
-
pre-commit-golang v0.8.3 - Now with revive support
This release adds support for revive, a ~6x faster, stricter, configurable, extensible, and beautiful drop-in replacement for golint.
moq
- vektra/mockery has fully released the "packages" feature! This blog explains what it is and how it works.
- Why elixir over Golang
-
Is gomock still maintained and recommended?
``` https://github.com/matryer/moq
-
How do you write/generate mocks for testing?
Currently trying out https://github.com/matryer/moq for the first time, and quite positive so far. Haven't pushed it enough yet to give a real opinion.
-
gomock giving me a hard time
I like moq much better than gomock. Much simpler and easier to work with.
-
how to mock DBs
Just replaced mockery generated mocks with https://github.com/matryer/moq Alot cleaner imo at least for me
- Testify Mocking conundrums
-
Can someone please comment on this mock example from Jon Calhoun's post on DDD?
btw, you can avoid making such mocks manually by using https://github.com/matryer/moq, which will generate such mocking code for you
-
How do you control behaviour in mocked interface ?
I like the way of matryer/moq a lot. Basically, it generates a func for each of the methods of an interface, therefore the behaviour is clear to everyone without too much abstraction.
-
What mocking framework do you prefer?
This one is easy to use, simple, powerful and idiomatic https://github.com/matryer/moq
What are some alternatives?
go-critic - The most opinionated Go source code linter for code audit.
gomock - GoMock is a mocking framework for the Go programming language.
go-tools - Staticcheck - The advanced Go linter
mockery - A mock code autogenerator for Go
emusak-ui - This is a tool which allows you to download saves or mods for Nintendo Switch emulators using a compatible Emusak backend
Testify - A toolkit with common assertions and mocks that plays nicely with the standard library
wrapcheck - A Go linter to check that errors from external packages are wrapped
NSubstitute - A friendly substitute for .NET mocking libraries.
ALVR - Stream VR games from your PC to your headset via Wi-Fi
counterfeiter - A tool for generating self-contained, type-safe test doubles in go
ireturn - Accept Interfaces, Return Concrete Types
GORM - The fantastic ORM library for Golang, aims to be developer friendly