Skip to content

Releases: maxbrunsfeld/counterfeiter

v6.4.0

01 Apr 01:41
Compare
Choose a tag to compare
  • 🐛 remove logic to speed up multiple invocations of go generate in a single package; if you need the prior behavior, please adopt counterfeiter:generate directives (#170 via @rittneje, fixes #166)
  • 🆕 add -q flag to suppress status output (#167 via @martinxsliu)
  • ⬆️ dependencies
  • 🔁 update CI to use go 1.16

Detailed changes: v6.3.0...v6.4.0

v6.3.0

26 Oct 21:54
v6.3.0
d0c725d
Compare
Choose a tag to compare
  • 🆕 allow adding headers to generated fakes (#153 via @hoegaarden)
  • 🐛 ensure type info is loaded for compatibility with go 1.13+ (fixes #147)
  • 🐛 avoid data race (fixes #145 via #149 / @mariash and #159 / @NilsJPWerner)
  • 🧹remove tests for GOPATH, and ask people to use counterfeiter with go modules (fixes #161)
  • ⬆️ dependencies
  • 🔁 update CI to use go 1.15

Detailed changes: v6.2.3...v6.3.0

v6.2.3

20 Mar 19:08
v6.2.3
a447b66
Compare
Choose a tag to compare
  • 🐛 ensure the tool works when using go 1.14 (#157, fixes #156, via @howardjohn)
  • 🧹remove unused variable with usage information (#138, via @nkovacs)
  • ⬆️ dependencies
  • 🔁 update CI to use go 1.14

Detailed changes: v6.2.2...v6.2.3

v6.2.2

19 Jul 06:30
f85ca4b
Compare
Choose a tag to compare

Detailed changes: v6.2.1...v6.2.2

v6.2.1

08 Jul 04:36
7335eed
Compare
Choose a tag to compare
  • 🍄 commit all generated fakes so that the package is buildable without using go:generate, and for checks and balances: fail ci if fakes are modified in any way as a result of go:generate (#127, via @zikaeroh)
  • 🐛 correctly support interfaces with functions that have inline struct paramters (#129, via @chrusty)

Detailed changes: v6.2.0...v6.2.1

v6.2.0

03 Jun 23:05
982f155
Compare
Choose a tag to compare
  • ⚡️moar speed; speed up single invocations of counterfeiter (#125, via @joefitzgerald, fixes #120); on a reference package with 19 //go:generate directives:
    • 📈 counterfeiter v6.2.0 runs (0.97 seconds) about 83 times faster than v6.0.2 v6.0.2 (80.45 seconds)
    • 📉 counterfeiter v6.2.0 runs (0.97 seconds) take 1.25 times as long as v5 runs (0.78 seconds)

Detailed changes: v6.1.2...v6.2.0

v6.1.0

03 Jun 06:44
2529dc3
Compare
Choose a tag to compare
  • ⚡️moar speed; speed up multiple invocations of counterfeiter in the same package by introducing caching (#123, via @joefitzgerald, partially addresses #120); on a reference package with 19 //go:generate directives:
    • 📈 counterfeiter v6.1.0 (with caching) (3.92 seconds) runs about 20.5 times faster than v6.0.2 (without caching) (80.45 seconds)
    • 📉 counterfeiter v6.1.0 (3.92 seconds) runs about 5 times slower than v5 (0.78 seconds)
    • see the PR for more details
  • 🆕 add -generate flag and new //counterfeiter:generate directive (#124, via @joefitzgerald)
  • 🐛 allow counterfeiting unexported interface methods (#112, via @davidnewhall)
  • 📖 describe how to specify third party interfaces (#116, via @glyn)
  • 📖 fix typo (#118, via @dionysius)

Detailed changes: v6.0.2...v6.1.0

v6.0.2

03 Jun 06:26
3d5cada
Compare
Choose a tag to compare
  • 🔒 lock when resetting stubs via Returns / ReturnsOnCall (#96, partially fixes #44 and #84)
  • 🆕 add Calls function to set Stub without a race (#97, fixes #44)
  • 🐛 restore prior behavior for type assertion on unexported interfaces (#101, via @sykesm)
  • 📖 fix examples url (#105, via @beono)
  • 🔦 code cleanup (#107, via @dnephin)
  • 🔦 remove duplicate value fields (#108, via @dnephin)
  • 🔦 refactor imports (#109, via @dnephin)
  • 🔦 shrink main package (#110, via @dnephin)
  • 🔦 only add import aliases to packages when necessary (#111, via @dnephin)
  • 🐛 use v6 import path for go module v2+ compatibilty (fixes #114, via @joefitzgerald)
  • 📖 document how to use counterfeiter v6 with go modules (via @joefitzgerald)

Detailed changes: v6.0.1...v6.0.2

v6.0.1

15 Oct 22:41
2d74a21
Compare
Choose a tag to compare
  • 🐛 allow fakes to be generated for interfaces that are contained in a package named sync (fixes #95)
  • 🔬 prove that fakes can now be generated for interfaces that embed an interface in an aliased package (#18)
  • 🔬 prove that fakes can now be generated for interfaces that embed an interface in a package with a package name that is different from the final segment of the import path (#87, #88)

Detailed changes: v6.0.0...v6.0.1

v6.0.0

12 Oct 03:43
d68f4b0
Compare
Choose a tag to compare

This release is a rewrite of counterfeiter that supports go modules (#94).

  • counterfeiter is now a go module
  • counterfeiter will now be released using the semver versioning scheme
  • any regression in behavior from v5 will be considered a bug in v6, unless this regression is related to go 1.9 or earlier
  • going forward, we will support N-1 (e.g. today, go 1.11.1 is the latest version of go, so go 1.10 and go 1.11 are supported); this matches the go team's support policy and thus our use of golang.org/x/tools/go/packages

golang/go#24661