summaryrefslogtreecommitdiffhomepage
path: root/go.mod
diff options
context:
space:
mode:
authorJoe Tsai <joetsai@digital-static.net>2023-08-31 13:02:58 -0700
committerJoe Tsai <joetsai@digital-static.net>2023-09-06 13:03:51 -0700
commit8841fd58c95cd335c5cf531ad08e978ca9c87c76 (patch)
tree621414b273badfcf682c85dc55b0b169bf5ada0f /go.mod
parentac7b4d62fdc6ff589d894cc2fbac3e47c9c674c6 (diff)
downloadtailscale-dsnet/viewer-jsonv2.tar.xz
tailscale-dsnet/viewer-jsonv2.zip
cmd/viewer: support v2 JSON methodsdsnet/viewer-jsonv2
This links in github.com/go-json-experiment/json into tailscaled. After this change, the tailscaled binary on GOOS=linux and GOARCH=amd64 increases by ~85KiB. The v2 marshal/unmarshal methods avoids a O(n^2) behavior with deeply nested v1 MarshalJSON and UnmarshalJSON calls, since each call requires the encoding/json package to rescan the entire JSON value. Our data structures are not so deep that the O(n^2) behavior becomes notable, but this does provide about a ~20% performance benefit. Updates tailscale/corp#14379 Signed-off-by: Joe Tsai <joetsai@digital-static.net>
Diffstat (limited to 'go.mod')
-rw-r--r--go.mod2
1 files changed, 1 insertions, 1 deletions
diff --git a/go.mod b/go.mod
index 86e202ec8..31024f61d 100644
--- a/go.mod
+++ b/go.mod
@@ -24,7 +24,7 @@ require (
github.com/evanw/esbuild v0.14.53
github.com/frankban/quicktest v1.14.5
github.com/fxamacker/cbor/v2 v2.4.0
- github.com/go-json-experiment/json v0.0.0-20230321051131-ccbac49a6929
+ github.com/go-json-experiment/json v0.0.0-20230831193458-5df0a50228ea
github.com/go-logr/zapr v1.2.4
github.com/go-ole/go-ole v1.2.6
github.com/godbus/dbus/v5 v5.1.1-0.20230522191255-76236955d466