From db5308375c1d07203cfdac66cb4a5d48b2523718 Mon Sep 17 00:00:00 2001 From: Kyle Unverferth Date: Sun, 24 Nov 2024 16:16:23 -0700 Subject: [PATCH] Removing JSONiter for binary size --- app/util/json.go | 13 +++++-------- go.mod | 3 --- go.sum | 8 -------- 3 files changed, 5 insertions(+), 19 deletions(-) diff --git a/app/util/json.go b/app/util/json.go index 83bc2ed9..598a8545 100644 --- a/app/util/json.go +++ b/app/util/json.go @@ -4,12 +4,9 @@ import ( "bytes" "encoding/json" "io" - - jsoniter "github.com/json-iterator/go" ) var ( - jsoniterParser = jsoniter.Config{EscapeHTML: false, SortMapKeys: true, ValidateJsonRawMessage: true}.Froze() trailingNewline = []byte{'\n'} ) @@ -38,18 +35,18 @@ func ToJSONBytes(x any, indent bool) []byte { } func FromJSON(msg json.RawMessage, tgt any) error { - return jsoniterParser.Unmarshal(msg, tgt) + return json.NewDecoder(bytes.NewReader(msg)).Decode(tgt) } func FromJSONString(msg json.RawMessage) (string, error) { var tgt string - err := jsoniterParser.Unmarshal(msg, &tgt) + err := json.NewDecoder(bytes.NewReader(msg)).Decode(&tgt) return tgt, err } func FromJSONMap(msg json.RawMessage) (ValueMap, error) { var tgt ValueMap - err := jsoniterParser.Unmarshal(msg, &tgt) + err := json.NewDecoder(bytes.NewReader(msg)).Decode(&tgt) return tgt, err } @@ -83,13 +80,13 @@ func FromJSONReader(r io.Reader, tgt any) error { } func FromJSONStrict(msg json.RawMessage, tgt any) error { - dec := jsoniterParser.NewDecoder(bytes.NewReader(msg)) + dec := json.NewDecoder(bytes.NewReader(msg)) dec.DisallowUnknownFields() return dec.Decode(tgt) } func CycleJSON(src any, tgt any) error { - b, _ := jsoniterParser.Marshal(src) + b := ToJSONBytes(src, false) return FromJSON(b, tgt) } diff --git a/go.mod b/go.mod index 929a1325..f2eeb2ab 100644 --- a/go.mod +++ b/go.mod @@ -20,7 +20,6 @@ require ( github.com/gorilla/websocket v1.5.3 github.com/jackc/pgx/v4 v4.18.3 github.com/jmoiron/sqlx v1.4.0 - github.com/json-iterator/go v1.1.12 github.com/kirsle/configdir v0.0.0-20170128060238-e45d2f54772f github.com/markbates/going v1.0.3 github.com/markbates/goth v1.80.0 @@ -81,8 +80,6 @@ require ( github.com/lestrrat-go/iter v1.0.2 // indirect github.com/lestrrat-go/jwx v1.2.30 // indirect github.com/lestrrat-go/option v1.0.1 // indirect - github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect - github.com/modern-go/reflect2 v1.0.2 // indirect github.com/mrjones/oauth v0.0.0-20190623134757-126b35219450 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/prometheus/client_model v0.6.1 // indirect diff --git a/go.sum b/go.sum index 8ee403fb..6e3b6ca0 100644 --- a/go.sum +++ b/go.sum @@ -108,7 +108,6 @@ github.com/google/go-github/v39 v39.2.0 h1:rNNM311XtPOz5rDdsJXAp2o8F67X9FnROXTvt github.com/google/go-github/v39 v39.2.0/go.mod h1:C1s8C5aCC9L+JXIYpJM5GYytdX52vC1bLvHEF1IhBrE= github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= -github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -185,8 +184,6 @@ github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJS github.com/jessevdk/go-flags v1.5.0/go.mod h1:Fw0T6WPc1dYxT4mKEZRfG5kJhaTDP9pj1c2EWnYs/m4= github.com/jmoiron/sqlx v1.4.0 h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o= github.com/jmoiron/sqlx v1.4.0/go.mod h1:ZrZ7UsYB/weZdl2Bxg6jCRO9c3YHl8r3ahlKmRT4JLY= -github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= -github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/kirsle/configdir v0.0.0-20170128060238-e45d2f54772f h1:dKccXx7xA56UNqOcFIbuqFjAWPVtP688j5QMgmo6OHU= github.com/kirsle/configdir v0.0.0-20170128060238-e45d2f54772f/go.mod h1:4rEELDSfUAlBSyUjPG0JnaNGjf13JySHFeRdD/3dLP0= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= @@ -241,11 +238,6 @@ github.com/microcosm-cc/bluemonday v1.0.26 h1:xbqSvqzQMeEHCqMi64VAs4d8uy6Mequs3r github.com/microcosm-cc/bluemonday v1.0.26/go.mod h1:JyzOCs9gkyQyjs+6h10UEVSe02CGwkhd72Xdqh78TWs= github.com/mileusna/useragent v1.3.5 h1:SJM5NzBmh/hO+4LGeATKpaEX9+b4vcGg2qXGLiNGDws= github.com/mileusna/useragent v1.3.5/go.mod h1:3d8TOmwL/5I8pJjyVDteHtgDGcefrFUX4ccGOMKNYYc= -github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= -github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= -github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/mrjones/oauth v0.0.0-20190623134757-126b35219450 h1:j2kD3MT1z4PXCiUllUJF9mWUESr9TWKS7iEKsQ/IipM= github.com/mrjones/oauth v0.0.0-20190623134757-126b35219450/go.mod h1:skjdDftzkFALcuGzYSklqYd8gvat6F1gZJ4YPVbkZpM= github.com/muesli/coral v1.0.0 h1:odyqkoEg4aJAINOzvnjN4tUsdp+Zleccs7tRIAkkYzU=