Skip to content

Releases: xhd2015/xgo

Xgo v1.1.3

18 Apr 02:32
Compare
Choose a tag to compare

This release upgrades xgo from v1.1.2 to v1.1.3 with #327

Improvements:

  • enhance cross compile

This is a patch release, no need to explicitly upgrade unless necessary.

For documentation, see https://github.com/xhd2015/xgo.

What's Changed(Auto generated)

Full Changelog: v1.1.2...v1.1.3

Xgo v1.1.2

17 Apr 06:57
Compare
Choose a tag to compare

This release upgrades xgo from v1.1.1 to v1.1.2 with #323

Major improvements:

  • leverage compiler to instrument ir code link, to bypass directly importing runtime and unsafe

Other improvements:

  • support go's long options
  • avoid trapping unexported variable

To install xgo v1.1.2:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.1.2

# update runtime
go get github.com/xhd2015/xgo/runtime@v1.1.2

For documentation, see https://github.com/xhd2015/xgo.

What's Changed(Auto generated)

  • leverage IR Code for linking runtime functions; make xgo accept two-dash flags, fix load error by @xhd2015 in #323

Full Changelog: v1.1.1...v1.1.2

Xgo v1.1.1

15 Apr 14:11
Compare
Choose a tag to compare

Less is more.
-- the wise

This release upgrades xgo from v1.1.0 to v1.1.1 with #309

The upgrade focuses on easing the use of xgo with less surprise.

Major improvements:

  • introduced a minimal type checker to scan calls to apis like mock.Patch(fn,..), and insert trap point for them automatically, thanks to @shubham-dogra-s1
  • enhanced stdlib and arbitrary function mock and variable support
  • automatically enable --trap-all if trap.AddInterceptor() was called, thanks feedback from @crazyn2
  • fixed a go bug related to GOCACHE + -overlay combination, thanks to @PetterZhukov for pointing out this, see #311

Other improvements:

  • improved compatibility, bundle runtime definitions to runtime itself
  • enhanced xgo exec <flags> <cmd> ... to run command in xgo env, replace the legacy xgo shadow(deprecated)
  • bring back init phase interceptors and trap.ErrMocked
  • silent non .git msg
  • shorten .xgo/gen/overlay paths
  • added ./script/xgo.helper to facilitate debugging go and compiler
  • fixed edge cases like var Test = ... in test files, and type alias resolving
  • fix ctx retrieval in trap interceptors

To install xgo v1.1.1:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.1.1

# update runtime
go get github.com/xhd2015/xgo/runtime@v1.1.1

BTW, this marks the 55th release of xgo, can't imagine I've worked so long on this project and released so many times!

For documentation, see https://github.com/xhd2015/xgo.

What's Changed(Auto generated)

  • move runtime_link_template.go to xgo/runtime to ensure maximal API compatibility, introduce a minimal type checker to scan mock.Patch calls by @xhd2015 in #309

Full Changelog: v1.1.0...v1.1.1

Xgo v1.1.0

01 Apr 16:16
Compare
Choose a tag to compare

This release upgrades xgo from v1.0.53 to v1.1.0, marks a major upgrade.

The major change lays in the underlying technique when rewriting files:

  • xgo v1.1.0 is now built on top of -overlay, while legacy xgo v1.0.53 is built on top of -toolexec

This change brings the following benefits:

  • much less maintenance effort, we don't need to tackle the go compiler anymore
  • much more stable mock inherit due to enhanced goroutine instrument, without sync.Map
  • more user-friendly debugging metadata inside .xgo/gen

And the functionalities are now built into runtime/internal/trap package directly:

  • trace and mock are implemented directly inside trap package
  • keep general function interceptor
  • add recorder, a per-function flight recorder

We've successfully addressed the IDE integration issue, now user can run xgo setup first,
then add the output GOROOT to IDE settings to provide minimal-effort integration.

To install xgo v1.1.0:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.1.0

# update runtime
go get github.com/xhd2015/xgo/runtime@v1.1.0

For documentation, see https://github.com/xhd2015/xgo.

What's Changed

  • correctly recognize running from root by @xhd2015 in #291
  • update install.sh to allow INSTALL_TAG by @xhd2015 in #304
  • [v1.1.0] rewrite xgo core using -overlay instead of -toolexec by @xhd2015 in #297

Full Changelog: v1.0.52...v1.1.0

Xgo v1.0.52

10 Nov 08:15
4123ef9
Compare
Choose a tag to compare

Release summary:

  • enable -cover to co-exist with trace with best effort, see #285
  • fix CI tests, see #272
  • test-explorer: enable trace by default, see #280
  • test-explorer:trace snapshot of main module by default, see #281

To install xgo v1.0.52:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.0.52

# update runtime
go get github.com/xhd2015/xgo/runtime@v1.0.52

For documentation, see https://github.com/xhd2015/xgo.

What's Changed (Auto generated)

Full Changelog: v1.0.51...v1.0.52

Xgo v1.0.51

03 Nov 03:29
38209d9
Compare
Choose a tag to compare

Release summary:

  • test-explorer: integrate incremental coverage visualizer, see #215

This release is a milestone for the long standing coverage integration( the binary size also increases from 5M to 10M):

image

To install xgo v1.0.51:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.0.51

# there is no need to update runtime

For documentation, see https://github.com/xhd2015/xgo.

What's Changed (Auto generated)

Full Changelog: v1.0.50...v1.0.51

Xgo v1.0.50

02 Nov 03:39
403a999
Compare
Choose a tag to compare

Release summary:

  • test-explorer: fix bypass flags in debug mode, see #273
  • change build cache dir to /tmp, see #275

To install xgo v1.0.50:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.0.50

# there is no need to update runtime

For documentation, see https://github.com/xhd2015/xgo.

What's Changed (Auto generated)

Full Changelog: v1.0.49...v1.0.50

Xgo v1.0.49

20 Sep 12:56
cf201d2
Compare
Choose a tag to compare

Release summary:

  • test-explorer: allow bypass go test flag parsing, see #263

To install xgo v1.0.49:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.0.49

# update dependency
go get github.com/xhd2015/xgo/runtime@v1.0.49

For documentation, see https://github.com/xhd2015/xgo.

What's Changed (Auto generated)

Full Changelog: v1.0.48...v1.0.49

Xgo v1.0.48

05 Aug 07:46
e82e0eb
Compare
Choose a tag to compare

Release summary:

  • test-explorer: integrate stack trace, see #214
  • make build cache aware of trace flags
  • allow xgo auto update via config

To install xgo v1.0.48:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.0.48

# update dependency
go get github.com/xhd2015/xgo/runtime@v1.0.48

For documentation, see https://github.com/xhd2015/xgo.

What's Changed

Full Changelog: v1.0.47...v1.0.48

Xgo v1.0.47

26 Jul 12:26
6bd25c2
Compare
Choose a tag to compare

Release summary:

  • fix cross compile, see #250
  • support go1.23, see #249
  • fix trace marshal, see #255
  • enable trace snapshot, see #256

To install xgo v1.0.47:

# update xgo
go install github.com/xhd2015/xgo/cmd/xgo@v1.0.47

# update dependency
go get github.com/xhd2015/xgo/runtime@v1.0.47

For documentation, see https://github.com/xhd2015/xgo.

What's Changed (Autogenerated)

Full Changelog: v1.0.46...v1.0.47