Releases: xhd2015/xgo
Xgo v1.1.3
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
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
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
iftrap.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 inxgo
env, replace the legacyxgo 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
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
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)
- allow main module snapshot trace by default by @xhd2015 in #282
- fix snapshot test by @xhd2015 in #283
- try best to reserve trace when -cover enabled by @xhd2015 in #286
Full Changelog: v1.0.51...v1.0.52
Xgo v1.0.51
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):
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
Release summary:
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
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
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
- make build cache aware of trace flags by @xhd2015 in #257
- test-explorer: integrate stack trace by @xhd2015 in #258
- allow xgo auto update via config by @xhd2015 in #259
Full Changelog: v1.0.47...v1.0.48
Xgo v1.0.47
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)
- fix cross compile by @xhd2015 in #250
- update xgo e doc by @xhd2015 in #252
- add test for go1.23rc1 by @xhd2015 in #249
- fix trace marshal by @xhd2015 in #255
- enable trace snapshot by @xhd2015 in #256
Full Changelog: v1.0.46...v1.0.47