Go'ing Insane Part Three: Imperfect Interfaces

This page summarizes the projects mentioned and recommended in the original post on /r/golang

Our great sponsors
  • Mergify - Updating dependencies is time-consuming.
  • SonarQube - Static code analysis for 29 languages.
  • InfluxDB - Collect and Analyze Billions of Data Points in Real Time
  • go

    The Go programming language

    The explanation you refer to later in the piece assumes we are using fat pointers, but the earlier part is referring to the use of fat pointers in the first place (or more broadly the lack of covariance). Taking a look at https://github.com/golang/go/issues/7512 it looks like the lack of covariance stays because of the complexity cost in the language to support it

  • guide

    The Uber Go Style Guide.

    Yes it is: https://github.com/uber-go/guide/issues/25

  • Mergify

    Updating dependencies is time-consuming.. Solutions like Dependabot or Renovate update but don't merge dependencies. You need to do it manually while it could be fully automated! Add a Merge Queue to your workflow and stop caring about PR management & merging. Try Mergify for free.

  • ireturn

    Accept Interfaces, Return Concrete Types

    Can I highjack a topic? Made a linter recently that will track usage of returned values, just to follow rule return concrete values instead interfaces- ireturn. Can be configurable, can be used with github-actions and will be available with next minor version of golangci-lint.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts