diff --git a/cmd/llar/internal/install.go b/cmd/llar/internal/install.go index a9d1a17..9c294a2 100644 --- a/cmd/llar/internal/install.go +++ b/cmd/llar/internal/install.go @@ -3,8 +3,6 @@ package internal import ( "bufio" "context" - "encoding/json" - "errors" "fmt" "io" "mime" @@ -20,6 +18,7 @@ import ( buildcache "github.com/goplus/llar/internal/build/cache" "github.com/goplus/llar/internal/metadata" "github.com/goplus/llar/mod/module" + "github.com/qiniu/x/cmdjsonl" "github.com/spf13/cobra" ) @@ -222,60 +221,33 @@ func requestInstallArtifacts(ctx context.Context, progress io.Writer, client *ht } var artifacts []installArtifactMessage - // TODO: Upgrade ixgo and replace this parser with github.com/qiniu/x/cmdjsonl. - // - // Dependency constraint: - // - ixgo v0.61.0 ships generated bindings for qiniu/x packages such as - // gsh, osx, stringutil, and xgo/ng. - // - Its stringutil binding references Builder, NewBuilder, and - // NewBuilderSize. - // - cmdjsonl first appears in qiniu/x v1.17.1, which removed those - // stringutil APIs, so upgrading qiniu/x alone breaks the build. - // - // Migration: - // - Upgrade ixgo to bindings compatible with qiniu/x v1.17.1 or newer. - // - Replace this temporary parser with cmdjsonl.Parser. - reader := bufio.NewReader(resp.Body) - for lineNo := 1; ; lineNo++ { - line, readErr := reader.ReadString('\n') - line = strings.TrimSuffix(strings.TrimSuffix(line, "\n"), "\r") - if line != "" { - command, data, ok := strings.Cut(line, " ") - if !ok { - return nil, fmt.Errorf("invalid llard response line %d", lineNo) - } - switch command { - case "info": - var message string - if err := json.Unmarshal([]byte(data), &message); err != nil { - return nil, fmt.Errorf("decode llard info line %d: %w", lineNo, err) - } - fmt.Fprintln(progress, message) - case "error": - var message string - if err := json.Unmarshal([]byte(data), &message); err != nil { - return nil, fmt.Errorf("decode llard error line %d: %w", lineNo, err) - } - return nil, fmt.Errorf("llard: %s", message) - case "artifact": - var artifact installArtifactMessage - if err := json.Unmarshal([]byte(data), &artifact); err != nil { - return nil, fmt.Errorf("decode llard artifact line %d: %w", lineNo, err) - } - if artifact.ID == "" || artifact.Type == "" || artifact.URL == "" { - return nil, fmt.Errorf("invalid llard artifact line %d", lineNo) - } - artifacts = append(artifacts, artifact) - default: - return nil, fmt.Errorf("unsupported llard response command %q", command) - } + var responseErr error + var parser cmdjsonl.Parser + if err := parser.HandleFunc("info", func(message string) { + fmt.Fprintln(progress, message) + }); err != nil { + return nil, err + } + if err := parser.HandleFunc("error", func(message string) error { + responseErr = fmt.Errorf("llard: %s", message) + return responseErr + }); err != nil { + return nil, err + } + if err := parser.HandleFunc("artifact", func(artifact installArtifactMessage) error { + if artifact.ID == "" || artifact.Type == "" || artifact.URL == "" { + return fmt.Errorf("invalid llard artifact") } - if readErr != nil { - if errors.Is(readErr, io.EOF) { - break - } - return nil, readErr + artifacts = append(artifacts, artifact) + return nil + }); err != nil { + return nil, err + } + if err := parser.Parse(resp.Body, bufio.MaxScanTokenSize); err != nil { + if responseErr != nil { + return nil, responseErr } + return nil, err } if len(artifacts) == 0 { return nil, fmt.Errorf("llard returned no artifacts") diff --git a/cmd/llar/internal/install_test.go b/cmd/llar/internal/install_test.go index 7b965e3..114c274 100644 --- a/cmd/llar/internal/install_test.go +++ b/cmd/llar/internal/install_test.go @@ -569,12 +569,12 @@ func TestRequestInstallArtifactsRejectsInvalidResponses(t *testing.T) { }{ {name: "status", status: http.StatusServiceUnavailable, contentType: "application/x-cmdjsonl", want: "llard returned 503 Service Unavailable"}, {name: "content type", contentType: "text/plain", body: "artifact {}\n", want: `llard returned content type "text/plain", want application/x-cmdjsonl`}, - {name: "line", contentType: "application/x-cmdjsonl", body: "invalid\n", want: "invalid llard response line 1"}, - {name: "info JSON", contentType: "application/x-cmdjsonl", body: "info {\n", want: "decode llard info line 1"}, - {name: "error JSON", contentType: "application/x-cmdjsonl", body: "error {\n", want: "decode llard error line 1"}, - {name: "artifact JSON", contentType: "application/x-cmdjsonl", body: "artifact {\n", want: "decode llard artifact line 1"}, - {name: "artifact fields", contentType: "application/x-cmdjsonl", body: "artifact {\"id\":\"test/root@v1?os=linux\"}\n", want: "invalid llard artifact line 1"}, - {name: "command", contentType: "application/x-cmdjsonl", body: "done {}\n", want: `unsupported llard response command "done"`}, + {name: "line", contentType: "application/x-cmdjsonl", body: "invalid\n", want: "1: parse error when ParseCommand: no space found"}, + {name: "info JSON", contentType: "application/x-cmdjsonl", body: "info {\n", want: "1: parse error when UnmarshalParam: unexpected end of JSON input"}, + {name: "error JSON", contentType: "application/x-cmdjsonl", body: "error {\n", want: "1: parse error when UnmarshalParam: unexpected end of JSON input"}, + {name: "artifact JSON", contentType: "application/x-cmdjsonl", body: "artifact {\n", want: "1: parse error when UnmarshalParam: unexpected end of JSON input"}, + {name: "artifact fields", contentType: "application/x-cmdjsonl", body: "artifact {\"id\":\"test/root@v1?os=linux\"}\n", want: "1: parse error when CallHandler artifact: invalid llard artifact"}, + {name: "command", contentType: "application/x-cmdjsonl", body: "done {}\n", want: "1: parse error when ParseCommand: unknown command 'done'"}, {name: "no artifacts", contentType: "application/x-cmdjsonl", body: "info \"checking\"\n", want: "llard returned no artifacts"}, } for _, tt := range tests { diff --git a/go.mod b/go.mod index 73da115..b0e9807 100644 --- a/go.mod +++ b/go.mod @@ -4,19 +4,19 @@ go 1.24.0 require ( github.com/google/go-containerregistry v0.20.7 - github.com/goplus/ixgo v0.61.0 - github.com/goplus/mod v0.19.0 - github.com/goplus/xgo v1.6.1 + github.com/goplus/ixgo v1.1.1 + github.com/goplus/mod v0.21.1 + github.com/goplus/xgo v1.7.5 github.com/jessevdk/go-flags v1.6.1 github.com/joho/godotenv v1.5.1 github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 github.com/petermattis/goid v0.0.0-20260713073324-57ed88f34a0a github.com/qiniu/go-sdk/v7 v7.26.14 - github.com/qiniu/x v1.16.0 + github.com/qiniu/x v1.18.0 github.com/spf13/cobra v1.10.2 golang.org/x/mod v0.32.0 golang.org/x/sync v0.19.0 - golang.org/x/sys v0.40.0 + golang.org/x/sys v0.41.0 ) require ( @@ -28,9 +28,8 @@ require ( github.com/docker/docker-credential-helpers v0.9.3 // indirect github.com/gammazero/toposort v0.1.1 // indirect github.com/gofrs/flock v0.8.1 // indirect - github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00 // indirect - github.com/goplus/gogen v1.20.6 // indirect - github.com/goplus/reflectx v1.5.0 // indirect + github.com/goplus/gogen v1.23.5 // indirect + github.com/goplus/reflectx v1.7.2 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/klauspost/compress v1.18.1 // indirect github.com/kr/text v0.2.0 // indirect @@ -39,13 +38,13 @@ require ( github.com/opencontainers/image-spec v1.1.1 // indirect github.com/sirupsen/logrus v1.9.3 // indirect github.com/spf13/pflag v1.0.9 // indirect - github.com/timandy/routine v1.1.5 // indirect + github.com/timandy/routine v1.1.6 // indirect github.com/vbatts/tar-split v0.12.2 // indirect - github.com/visualfc/funcval v0.1.4 // indirect - github.com/visualfc/gid v0.3.0 // indirect - github.com/visualfc/goembed v0.3.2 // indirect - github.com/visualfc/xtype v0.2.0 // indirect - golang.org/x/tools v0.40.0 // indirect + github.com/visualfc/funcval v0.1.5 // indirect + github.com/visualfc/gid v0.3.1 // indirect + github.com/visualfc/goembed v0.3.4 // indirect + github.com/visualfc/xtype v0.3.2 // indirect + golang.org/x/tools v0.41.0 // indirect gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect modernc.org/fileutil v1.0.0 // indirect ) diff --git a/go.sum b/go.sum index bbca9d9..79365d0 100644 --- a/go.sum +++ b/go.sum @@ -17,25 +17,24 @@ github.com/docker/docker-credential-helpers v0.9.3 h1:gAm/VtF9wgqJMoxzT3Gj5p4AqI github.com/docker/docker-credential-helpers v0.9.3/go.mod h1:x+4Gbw9aGmChi3qTLZj8Dfn0TD20M/fuWy0E5+WDeCo= github.com/gammazero/toposort v0.1.1 h1:OivGxsWxF3U3+U80VoLJ+f50HcPU1MIqE1JlKzoJ2Eg= github.com/gammazero/toposort v0.1.1/go.mod h1:H2cozTnNpMw0hg2VHAYsAxmkHXBYroNangj2NTBQDvw= +github.com/goccy/go-yaml v1.19.2 h1:PmFC1S6h8ljIz6gMRBopkjP1TVT7xuwrButHID66PoM= +github.com/goccy/go-yaml v1.19.2/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA= github.com/gofrs/flock v0.8.1 h1:+gYjHKf32LDeiEEFhQaotPbLuUXjY5ZqxKgXy7n59aw= github.com/gofrs/flock v0.8.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/go-containerregistry v0.20.7 h1:24VGNpS0IwrOZ2ms2P1QE3Xa5X9p4phx0aUgzYzHW6I= github.com/google/go-containerregistry v0.20.7/go.mod h1:Lx5LCZQjLH1QBaMPeGwsME9biPeo1lPx6lbGj/UmzgM= -github.com/gopherjs/gopherjs v0.0.0-20180708170036-38b413be4187/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00 h1:l5lAOZEym3oK3SQ2HBHWsJUfbNBiTXJDeW2QDxw9AQ0= -github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/goplus/gogen v1.20.6 h1:pYc+dImJ+9QsmMiz0fd4KaTdQFfgTKsKjtho4lBqQeU= -github.com/goplus/gogen v1.20.6/go.mod h1:87ZJD1mdljXx2pkvBrMGynGUz6m08brj9p6xhb5aq2Y= -github.com/goplus/ixgo v0.61.0 h1:mJtCRLpkZ/wgDIc+FCi/geNnllkZwep+AUVttyhZwAY= -github.com/goplus/ixgo v0.61.0/go.mod h1:T15sC7HRVpZw1bTTE0/JTySsZ840AGMZ071sRhKKM0w= -github.com/goplus/mod v0.19.0 h1:VwTawpScUFXozTEhtA4WsdhG/5pa12gJeAK4EGOgM/I= -github.com/goplus/mod v0.19.0/go.mod h1:4HcnqpUHXFHWRTJXQgiHrFbvy0j3K/OEzpFh5KFYLRM= -github.com/goplus/reflectx v1.5.0 h1:d6THLWzrQJCIAnNzyXJDA7J1sxj8ELzKH+Wj17X/dtE= -github.com/goplus/reflectx v1.5.0/go.mod h1:wHOS9ilbB4zrecI0W1dMmkW9JMcpXV7VjALVbNU9xfM= -github.com/goplus/xgo v1.6.1 h1:xe4ezrXkBvK5317inkPIqsKVZR3/J0oyT4lcvT9mYPc= -github.com/goplus/xgo v1.6.1/go.mod h1:vEnp8PO5JCJBNXYjnsSTJ1hgAEvbP/IUWzC17pVz4R8= +github.com/goplus/gogen v1.23.5 h1:76w3zmAHI+ECI7bPr0enUd0du9+t1IYyXmp43CbIpSs= +github.com/goplus/gogen v1.23.5/go.mod h1:Y7ulYW3wonQ3d9er00b0uGFEV/IUZa6okWJZh892ACQ= +github.com/goplus/ixgo v1.1.1 h1:fwrz6xRxdBd0TVsi/ySMtooolH6gvGpL6PVNPLFu84Q= +github.com/goplus/ixgo v1.1.1/go.mod h1:mjgTDzNVDpu1B7zp/Oo3pBsOneEfzJzFQPR7CKeY2wk= +github.com/goplus/mod v0.21.1 h1:thTyYvCVFEQr8bilNW2DvgI6UwuCYqCWF7DaA/dhf/c= +github.com/goplus/mod v0.21.1/go.mod h1:VTyNmzzePgy99A2VQnxIBfoG1x097xilag/t0F0zuTg= +github.com/goplus/reflectx v1.7.2 h1:NXpQ7SzEQKaTdivP3HsHpfLJQC3avhvyYg9ziyR8jPU= +github.com/goplus/reflectx v1.7.2/go.mod h1:EXX8KSPTmnb2W1PfyVkDC0Qwet0lYX2h2/S06Vhwrhw= +github.com/goplus/xgo v1.7.5 h1:biSNkiyWe3e+YmOmDRSs1Z6K4RLkLpzN6mTp1WbryAw= +github.com/goplus/xgo v1.7.5/go.mod h1:TRIPQ1bRVkq1x0+Ve/gWGS+qcb3ACPIZHNcmuiKzYkE= github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= @@ -69,8 +68,8 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/qiniu/go-sdk/v7 v7.26.14 h1:kV9zdvTOM0w9/lgeYffDDw0Fj8FH14/XgCjk4Wb80k8= github.com/qiniu/go-sdk/v7 v7.26.14/go.mod h1:ri7fGwbio0pRDFr8EK5TUpx0DbnpIMJ2bMSDxGWfCbk= -github.com/qiniu/x v1.16.0 h1:W2VOecyIT3Uxwjm6vJinUR7G3gpwgUgHZA9OpeHArdE= -github.com/qiniu/x v1.16.0/go.mod h1:AiovSOCaRijaf3fj+0CBOpR1457pn24b0Vdb1JpwhII= +github.com/qiniu/x v1.18.0 h1:iMfc7Gqy1au+akr+Tl5Z40px7TR8VBLLkJsIeajKIbc= +github.com/qiniu/x v1.18.0/go.mod h1:Sx3Wy+0GI9OsX4a53mYj6A0o7mHJ94PUvraqGYb4EIs= github.com/rogpeppe/go-internal v1.8.0 h1:FCbCCtXNOY3UtUuHUYaghJg4y7Fd14rXifAYUAtL9R8= github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= @@ -90,28 +89,30 @@ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -github.com/timandy/routine v1.1.5 h1:LSpm7Iijwb9imIPlucl4krpr2EeCeAUvifiQ9Uf5X+M= -github.com/timandy/routine v1.1.5/go.mod h1:kXslgIosdY8LW0byTyPnenDgn4/azt2euufAq9rK51w= +github.com/timandy/routine v1.1.6 h1:cueNRVPutK8O6387LL7dmYPLNyS6aKlPCPi5qWCLdc8= +github.com/timandy/routine v1.1.6/go.mod h1:kXslgIosdY8LW0byTyPnenDgn4/azt2euufAq9rK51w= github.com/vbatts/tar-split v0.12.2 h1:w/Y6tjxpeiFMR47yzZPlPj/FcPLpXbTUi/9H7d3CPa4= github.com/vbatts/tar-split v0.12.2/go.mod h1:eF6B6i6ftWQcDqEn3/iGFRFRo8cBIMSJVOpnNdfTMFA= -github.com/visualfc/funcval v0.1.4 h1:lAI88zQYfRzmC7mKF4+swXeCZvb8wb1f3lMSDRAY2mQ= -github.com/visualfc/funcval v0.1.4/go.mod h1:3Izv+irhArmrTvy+lmL6pIq16gSOzx73CIka51J9eR0= -github.com/visualfc/gid v0.3.0 h1:TloAZslV/S7CosoWjSyqaXUtoCKlZ8Fc+MhRIH9seU8= -github.com/visualfc/gid v0.3.0/go.mod h1:nzdGt/X2YXpNJjn03QS8P+Z9peCDxF1FWrekfl+nBUE= -github.com/visualfc/goembed v0.3.2 h1:a9m6o9VTzNk3mEF98C8cHp8f8P8BblyjsjajXGfTp8w= -github.com/visualfc/goembed v0.3.2/go.mod h1:jCVCz/yTJGyslo6Hta+pYxWWBuq9ADCcIVZBTQ0/iVI= -github.com/visualfc/xtype v0.2.0 h1:0ESNXyWHtK01kaOzOyqHsR1ZjEPdNu/IWPZkf0VOHl8= -github.com/visualfc/xtype v0.2.0/go.mod h1:183MDtzLqyDkCm5zCH42vJGq/aQE5W25k3Z6UOZxLF0= +github.com/visualfc/funcval v0.1.5 h1:jR21zdx0pFk4nUzmutrFZL6EiRuMYR/ZaD+KOzTwyEk= +github.com/visualfc/funcval v0.1.5/go.mod h1:3Izv+irhArmrTvy+lmL6pIq16gSOzx73CIka51J9eR0= +github.com/visualfc/gid v0.3.1 h1:wWnU17tIBISc7sbbfRxNIg0rdfJUqANZYeX04KbbhlU= +github.com/visualfc/gid v0.3.1/go.mod h1:vpt7mMzO6Mst8v6T4vCSTPKzrNwfVsaDZQ12T4eQT8o= +github.com/visualfc/goembed v0.3.4 h1:foORJ0KT/pKwA23dStPFOtxaW7F96PnNSiLXHVXrfVk= +github.com/visualfc/goembed v0.3.4/go.mod h1:jCVCz/yTJGyslo6Hta+pYxWWBuq9ADCcIVZBTQ0/iVI= +github.com/visualfc/xtype v0.3.2 h1:VUyIQhYhOlwYfiRCraEYYQoSsUnKNc6EUpD+ZwFFhJ4= +github.com/visualfc/xtype v0.3.2/go.mod h1:VYIH9S2bmdWKlBb7c725ES6yKF9+pyHBU2SFNqGVMGM= go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= golang.org/x/mod v0.32.0 h1:9F4d3PHLljb6x//jOyokMv3eX+YDeepZSEo3mFJy93c= golang.org/x/mod v0.32.0/go.mod h1:SgipZ/3h2Ci89DlEtEXWUk/HteuRin+HHhN+WbNhguU= +golang.org/x/net v0.50.0 h1:ucWh9eiCGyDR3vtzso0WMQinm2Dnt8cFMuQa9K33J60= +golang.org/x/net v0.50.0/go.mod h1:UgoSli3F/pBgdJBHCTc+tp3gmrU4XswgGRgtnwWTfyM= golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4= golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ= -golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= -golang.org/x/tools v0.40.0 h1:yLkxfA+Qnul4cs9QA3KnlFu0lVmd8JJfoq+E41uSutA= -golang.org/x/tools v0.40.0/go.mod h1:Ik/tzLRlbscWpqqMRjyWYDisX8bG13FrdXp3o4Sr9lc= +golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k= +golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= +golang.org/x/tools v0.41.0 h1:a9b8iMweWG+S0OBnlU36rzLp20z1Rp10w+IY2czHTQc= +golang.org/x/tools v0.41.0/go.mod h1:XSY6eDqxVNiYgezAVqqCeihT4j1U2CCsqvH3WhQpnlg= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= diff --git a/internal/ixgo/pkgs.go b/internal/ixgo/pkgs.go index d7d8040..aa89f43 100644 --- a/internal/ixgo/pkgs.go +++ b/internal/ixgo/pkgs.go @@ -13,171 +13,10 @@ package ixgo //go:generate qexp -outdir pkg github.com/goplus/llar/mod/module //go:generate qexp -outdir pkg github.com/qiniu/x/gsh import ( - _ "github.com/goplus/ixgo/pkg/archive/tar" - _ "github.com/goplus/ixgo/pkg/archive/zip" - _ "github.com/goplus/ixgo/pkg/bufio" - _ "github.com/goplus/ixgo/pkg/bytes" - _ "github.com/goplus/ixgo/pkg/cmp" - _ "github.com/goplus/ixgo/pkg/compress/bzip2" - _ "github.com/goplus/ixgo/pkg/compress/flate" - _ "github.com/goplus/ixgo/pkg/compress/gzip" - _ "github.com/goplus/ixgo/pkg/compress/lzw" - _ "github.com/goplus/ixgo/pkg/compress/zlib" - _ "github.com/goplus/ixgo/pkg/context" - _ "github.com/goplus/ixgo/pkg/crypto" - _ "github.com/goplus/ixgo/pkg/crypto/aes" - _ "github.com/goplus/ixgo/pkg/crypto/cipher" - _ "github.com/goplus/ixgo/pkg/crypto/des" - _ "github.com/goplus/ixgo/pkg/crypto/dsa" - _ "github.com/goplus/ixgo/pkg/crypto/ecdh" - _ "github.com/goplus/ixgo/pkg/crypto/ecdsa" - _ "github.com/goplus/ixgo/pkg/crypto/ed25519" - _ "github.com/goplus/ixgo/pkg/crypto/elliptic" - _ "github.com/goplus/ixgo/pkg/crypto/hmac" - _ "github.com/goplus/ixgo/pkg/crypto/md5" - _ "github.com/goplus/ixgo/pkg/crypto/rand" - _ "github.com/goplus/ixgo/pkg/crypto/rc4" - _ "github.com/goplus/ixgo/pkg/crypto/rsa" - _ "github.com/goplus/ixgo/pkg/crypto/sha1" - _ "github.com/goplus/ixgo/pkg/crypto/sha256" - _ "github.com/goplus/ixgo/pkg/crypto/sha512" - _ "github.com/goplus/ixgo/pkg/crypto/subtle" - _ "github.com/goplus/ixgo/pkg/encoding" - _ "github.com/goplus/ixgo/pkg/encoding/asn1" - _ "github.com/goplus/ixgo/pkg/encoding/base32" - _ "github.com/goplus/ixgo/pkg/encoding/base64" - _ "github.com/goplus/ixgo/pkg/encoding/binary" - _ "github.com/goplus/ixgo/pkg/encoding/csv" - _ "github.com/goplus/ixgo/pkg/encoding/gob" - _ "github.com/goplus/ixgo/pkg/encoding/hex" - _ "github.com/goplus/ixgo/pkg/encoding/json" - _ "github.com/goplus/ixgo/pkg/encoding/pem" - _ "github.com/goplus/ixgo/pkg/encoding/xml" - _ "github.com/goplus/ixgo/pkg/errors" - _ "github.com/goplus/ixgo/pkg/fmt" - _ "github.com/goplus/ixgo/pkg/hash" - _ "github.com/goplus/ixgo/pkg/hash/adler32" - _ "github.com/goplus/ixgo/pkg/hash/crc32" - _ "github.com/goplus/ixgo/pkg/hash/crc64" - _ "github.com/goplus/ixgo/pkg/hash/fnv" - _ "github.com/goplus/ixgo/pkg/hash/maphash" - _ "github.com/goplus/ixgo/pkg/html" - _ "github.com/goplus/ixgo/pkg/html/template" - _ "github.com/goplus/ixgo/pkg/image" - _ "github.com/goplus/ixgo/pkg/image/color" - _ "github.com/goplus/ixgo/pkg/image/color/palette" - _ "github.com/goplus/ixgo/pkg/image/draw" - _ "github.com/goplus/ixgo/pkg/image/gif" - _ "github.com/goplus/ixgo/pkg/image/jpeg" - _ "github.com/goplus/ixgo/pkg/image/png" - _ "github.com/goplus/ixgo/pkg/io" - _ "github.com/goplus/ixgo/pkg/io/fs" - _ "github.com/goplus/ixgo/pkg/io/ioutil" - _ "github.com/goplus/ixgo/pkg/iter" - _ "github.com/goplus/ixgo/pkg/log" - _ "github.com/goplus/ixgo/pkg/log/slog" - _ "github.com/goplus/ixgo/pkg/maps" - _ "github.com/goplus/ixgo/pkg/math" - _ "github.com/goplus/ixgo/pkg/math/big" - _ "github.com/goplus/ixgo/pkg/math/bits" - _ "github.com/goplus/ixgo/pkg/math/cmplx" - _ "github.com/goplus/ixgo/pkg/math/rand" - _ "github.com/goplus/ixgo/pkg/math/rand/v2" - _ "github.com/goplus/ixgo/pkg/mime" - _ "github.com/goplus/ixgo/pkg/net/http" - _ "github.com/goplus/ixgo/pkg/net/netip" - _ "github.com/goplus/ixgo/pkg/net/url" - _ "github.com/goplus/ixgo/pkg/os" - _ "github.com/goplus/ixgo/pkg/path" - _ "github.com/goplus/ixgo/pkg/path/filepath" - _ "github.com/goplus/ixgo/pkg/reflect" - _ "github.com/goplus/ixgo/pkg/regexp" - _ "github.com/goplus/ixgo/pkg/regexp/syntax" - _ "github.com/goplus/ixgo/pkg/runtime" - _ "github.com/goplus/ixgo/pkg/slices" - _ "github.com/goplus/ixgo/pkg/sort" - _ "github.com/goplus/ixgo/pkg/strconv" - _ "github.com/goplus/ixgo/pkg/strings" - _ "github.com/goplus/ixgo/pkg/sync" - _ "github.com/goplus/ixgo/pkg/sync/atomic" - _ "github.com/goplus/ixgo/pkg/text/scanner" - _ "github.com/goplus/ixgo/pkg/text/tabwriter" - _ "github.com/goplus/ixgo/pkg/text/template" - _ "github.com/goplus/ixgo/pkg/text/template/parse" - _ "github.com/goplus/ixgo/pkg/time" - _ "github.com/goplus/ixgo/pkg/time/tzdata" - _ "github.com/goplus/ixgo/pkg/unicode" - _ "github.com/goplus/ixgo/pkg/unicode/utf16" - _ "github.com/goplus/ixgo/pkg/unicode/utf8" - _ "github.com/goplus/ixgo/pkg/unique" - - _ "github.com/goplus/ixgo/pkg/container/heap" - _ "github.com/goplus/ixgo/pkg/container/list" - _ "github.com/goplus/ixgo/pkg/container/ring" - _ "github.com/goplus/ixgo/pkg/crypto/tls" - _ "github.com/goplus/ixgo/pkg/crypto/x509" - _ "github.com/goplus/ixgo/pkg/crypto/x509/pkix" - _ "github.com/goplus/ixgo/pkg/database/sql" - _ "github.com/goplus/ixgo/pkg/database/sql/driver" - - // _ "github.com/goplus/ixgo/pkg/debug/buildinfo" - // _ "github.com/goplus/ixgo/pkg/debug/dwarf" - // _ "github.com/goplus/ixgo/pkg/debug/elf" - // _ "github.com/goplus/ixgo/pkg/debug/gosym" - // _ "github.com/goplus/ixgo/pkg/debug/macho" - // _ "github.com/goplus/ixgo/pkg/debug/pe" - // _ "github.com/goplus/ixgo/pkg/debug/plan9obj" - _ "github.com/goplus/ixgo/pkg/embed" - _ "github.com/goplus/ixgo/pkg/encoding/ascii85" - _ "github.com/goplus/ixgo/pkg/expvar" - _ "github.com/goplus/ixgo/pkg/flag" - _ "github.com/goplus/ixgo/pkg/go/ast" - _ "github.com/goplus/ixgo/pkg/go/build" - _ "github.com/goplus/ixgo/pkg/go/build/constraint" - _ "github.com/goplus/ixgo/pkg/go/constant" - _ "github.com/goplus/ixgo/pkg/go/doc" - _ "github.com/goplus/ixgo/pkg/go/doc/comment" - _ "github.com/goplus/ixgo/pkg/go/format" - _ "github.com/goplus/ixgo/pkg/go/importer" - _ "github.com/goplus/ixgo/pkg/go/parser" - _ "github.com/goplus/ixgo/pkg/go/printer" - _ "github.com/goplus/ixgo/pkg/go/scanner" - _ "github.com/goplus/ixgo/pkg/go/token" - _ "github.com/goplus/ixgo/pkg/go/types" - _ "github.com/goplus/ixgo/pkg/go/version" - _ "github.com/goplus/ixgo/pkg/index/suffixarray" - _ "github.com/goplus/ixgo/pkg/log/syslog" - _ "github.com/goplus/ixgo/pkg/mime/multipart" - _ "github.com/goplus/ixgo/pkg/mime/quotedprintable" - _ "github.com/goplus/ixgo/pkg/net" - _ "github.com/goplus/ixgo/pkg/net/http/cgi" - _ "github.com/goplus/ixgo/pkg/net/http/cookiejar" - _ "github.com/goplus/ixgo/pkg/net/http/fcgi" - _ "github.com/goplus/ixgo/pkg/net/http/httptest" - _ "github.com/goplus/ixgo/pkg/net/http/httptrace" - _ "github.com/goplus/ixgo/pkg/net/http/httputil" - _ "github.com/goplus/ixgo/pkg/net/http/pprof" - _ "github.com/goplus/ixgo/pkg/net/mail" + _ "github.com/goplus/ixgo/pkg" _ "github.com/goplus/ixgo/pkg/net/rpc" _ "github.com/goplus/ixgo/pkg/net/rpc/jsonrpc" - _ "github.com/goplus/ixgo/pkg/net/smtp" - _ "github.com/goplus/ixgo/pkg/net/textproto" - _ "github.com/goplus/ixgo/pkg/os/exec" - _ "github.com/goplus/ixgo/pkg/os/signal" - _ "github.com/goplus/ixgo/pkg/os/user" - _ "github.com/goplus/ixgo/pkg/runtime/coverage" - _ "github.com/goplus/ixgo/pkg/runtime/debug" - _ "github.com/goplus/ixgo/pkg/runtime/metrics" - _ "github.com/goplus/ixgo/pkg/runtime/pprof" - _ "github.com/goplus/ixgo/pkg/runtime/trace" - _ "github.com/goplus/ixgo/pkg/structs" - _ "github.com/goplus/ixgo/pkg/syscall" - // _ "github.com/goplus/ixgo/pkg/testing" - // _ "github.com/goplus/ixgo/pkg/testing/fstest" - // _ "github.com/goplus/ixgo/pkg/testing/iotest" - // _ "github.com/goplus/ixgo/pkg/testing/quick" - // _ "github.com/goplus/ixgo/pkg/testing/slogtest" _ "github.com/goplus/llar/internal/ixgo/pkg/github.com/goplus/llar/formula" _ "github.com/goplus/llar/internal/ixgo/pkg/github.com/goplus/llar/mod/module" _ "github.com/goplus/llar/internal/ixgo/pkg/github.com/goplus/llar/mod/versions"