Skip to content

Commit 05236d1

Browse files
committed
Changing to cobra for command-line parsing
1 parent d55a292 commit 05236d1

File tree

12 files changed

+598
-459
lines changed

12 files changed

+598
-459
lines changed

args.go

-153
This file was deleted.

contrib/config.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
connections:
2+
postg: postgres://postgres:P4ssw0rd@localhost
3+
init: |
4+
\echo welcome to the jungle `date`
5+
\set SYNTAX_HL_STYLE paraiso-dark

env/env.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -201,13 +201,13 @@ func Shell(s string) error {
201201
}
202202

203203
// Pipe starts a command and returns its input for writing.
204-
func Pipe(c string) (io.WriteCloser, *exec.Cmd, error) {
204+
func Pipe(stdout, stderr io.Writer, c string) (io.WriteCloser, *exec.Cmd, error) {
205205
shell, param := Getshell()
206206
if shell == "" {
207207
return nil, nil, text.ErrNoShellAvailable
208208
}
209209
cmd := exec.Command(shell, param, c)
210-
cmd.Stdout, cmd.Stderr = os.Stdout, os.Stderr
210+
cmd.Stdout, cmd.Stderr = stdout, stderr
211211
out, err := cmd.StdinPipe()
212212
if err != nil {
213213
return nil, nil, err

env/types.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -536,8 +536,8 @@ func Pset(name, value string) (string, error) {
536536
return pvars[name], nil
537537
}
538538

539-
// timeConstMap is the time const name to value map.
540-
var timeConstMap = map[string]string{
539+
// timeConsts are well known time consts.
540+
var timeConsts = map[string]string{
541541
"ANSIC": time.ANSIC,
542542
"UnixDate": time.UnixDate,
543543
"RubyDate": time.RubyDate,
@@ -558,7 +558,7 @@ var timeConstMap = map[string]string{
558558
// GoTime returns the user's time format converted to Go's time.Format value.
559559
func GoTime() string {
560560
tfmt := pvars["time"]
561-
if s, ok := timeConstMap[tfmt]; ok {
561+
if s, ok := timeConsts[tfmt]; ok {
562562
return s
563563
}
564564
return tfmt

go.mod

+39-26
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ require (
1111
github.com/SAP/go-hdb v1.8.11
1212
github.com/VoltDB/voltdb-client-go v1.0.15
1313
github.com/alecthomas/chroma/v2 v2.13.0
14-
github.com/alecthomas/kingpin/v2 v2.4.0
1514
github.com/alexbrainman/odbc v0.0.0-20230814102256-1421b829acc9
1615
github.com/aliyun/aliyun-tablestore-go-sql-driver v0.0.0-20220418015234-4d337cb3eed9
1716
github.com/amsokol/ignite-go-client v0.12.2
@@ -50,13 +49,16 @@ require (
5049
github.com/prestodb/presto-go-client v0.0.0-20240306155610-a3fe4b3d5b66
5150
github.com/proullon/ramsql v0.1.3
5251
github.com/sijms/go-ora/v2 v2.8.10
53-
github.com/snowflakedb/gosnowflake v1.8.0
52+
github.com/snowflakedb/gosnowflake v1.9.0
53+
github.com/spf13/cobra v1.8.0
54+
github.com/spf13/pflag v1.0.5
55+
github.com/spf13/viper v1.18.2
5456
github.com/thda/tds v0.1.7
5557
github.com/trinodb/trino-go-client v0.313.0
5658
github.com/uber/athenadriver v1.1.15
5759
github.com/vertica/vertica-sql-go v1.3.3
5860
github.com/xo/dburl v0.22.0
59-
github.com/xo/tblfmt v0.12.0
61+
github.com/xo/tblfmt v0.12.1
6062
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e
6163
github.com/ydb-platform/ydb-go-sdk/v3 v3.61.2
6264
github.com/yookoala/realpath v1.0.0
@@ -69,6 +71,7 @@ require (
6971
)
7072

7173
require (
74+
cel.dev/expr v0.15.0 // indirect
7275
cloud.google.com/go v0.112.2 // indirect
7376
cloud.google.com/go/bigquery v1.60.0 // indirect
7477
cloud.google.com/go/compute v1.25.1 // indirect
@@ -94,30 +97,30 @@ require (
9497
github.com/Masterminds/semver v1.5.0 // indirect
9598
github.com/Microsoft/go-winio v0.6.1 // indirect
9699
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
97-
github.com/alecthomas/units v0.0.0-20231202071711-9a357b53e9c9 // indirect
98100
github.com/aliyun/aliyun-tablestore-go-sdk v1.7.14 // indirect
99101
github.com/andybalholm/brotli v1.1.0 // indirect
100102
github.com/apache/arrow/go/v14 v14.0.2 // indirect
103+
github.com/apache/arrow/go/v15 v15.0.2 // indirect
101104
github.com/apache/thrift v0.20.0 // indirect
102105
github.com/avast/retry-go v3.0.0+incompatible // indirect
103-
github.com/aws/aws-sdk-go v1.51.9 // indirect
104-
github.com/aws/aws-sdk-go-v2 v1.26.0 // indirect
105-
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 // indirect
106-
github.com/aws/aws-sdk-go-v2/credentials v1.17.9 // indirect
107-
github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.13.12 // indirect
108-
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.13 // indirect
109-
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.4 // indirect
110-
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.4 // indirect
111-
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.4 // indirect
112-
github.com/aws/aws-sdk-go-v2/service/dynamodb v1.31.0 // indirect
113-
github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.20.3 // indirect
114-
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 // indirect
115-
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.6 // indirect
116-
github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.5 // indirect
117-
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.6 // indirect
118-
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.4 // indirect
119-
github.com/aws/aws-sdk-go-v2/service/s3 v1.53.0 // indirect
120-
github.com/aws/smithy-go v1.20.1 // indirect
106+
github.com/aws/aws-sdk-go v1.51.11 // indirect
107+
github.com/aws/aws-sdk-go-v2 v1.26.1 // indirect
108+
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.2 // indirect
109+
github.com/aws/aws-sdk-go-v2/credentials v1.17.10 // indirect
110+
github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue v1.13.13 // indirect
111+
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.14 // indirect
112+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.5 // indirect
113+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.5 // indirect
114+
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.5 // indirect
115+
github.com/aws/aws-sdk-go-v2/service/dynamodb v1.31.1 // indirect
116+
github.com/aws/aws-sdk-go-v2/service/dynamodbstreams v1.20.4 // indirect
117+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.2 // indirect
118+
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.7 // indirect
119+
github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.6 // indirect
120+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.7 // indirect
121+
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.5 // indirect
122+
github.com/aws/aws-sdk-go-v2/service/s3 v1.53.1 // indirect
123+
github.com/aws/smithy-go v1.20.2 // indirect
121124
github.com/beltran/gohive v1.7.0 // indirect
122125
github.com/beltran/gosasl v0.0.0-20240210185013-36d7ba6de436 // indirect
123126
github.com/beltran/gssapi v0.0.0-20200324152954-d86554db4bab // indirect
@@ -134,7 +137,7 @@ require (
134137
github.com/census-instrumentation/opencensus-proto v0.4.1 // indirect
135138
github.com/cespare/xxhash/v2 v2.2.0 // indirect
136139
github.com/cncf/udpa/go v0.0.0-20220112060539-c52dc94e7fbe // indirect
137-
github.com/cncf/xds/go v0.0.0-20240325133356-033564927e4a // indirect
140+
github.com/cncf/xds/go v0.0.0-20240329184929-0c46c01016dc // indirect
138141
github.com/cockroachdb/errors v1.11.1 // indirect
139142
github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect
140143
github.com/cockroachdb/pebble v1.1.0 // indirect
@@ -148,7 +151,7 @@ require (
148151
github.com/couchbase/gomemcached v0.3.1 // indirect
149152
github.com/couchbase/goutils v0.1.2 // indirect
150153
github.com/danieljoos/wincred v1.2.1 // indirect
151-
github.com/davecgh/go-spew v1.1.1 // indirect
154+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
152155
github.com/distribution/reference v0.5.0 // indirect
153156
github.com/dlclark/regexp2 v1.11.0 // indirect
154157
github.com/dnephin/pflag v1.0.7 // indirect
@@ -205,8 +208,10 @@ require (
205208
github.com/hashicorp/go-uuid v1.0.3 // indirect
206209
github.com/hashicorp/golang-lru v1.0.2 // indirect
207210
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
211+
github.com/hashicorp/hcl v1.0.0 // indirect
208212
github.com/icholy/digest v0.1.22 // indirect
209213
github.com/imdario/mergo v0.3.13 // indirect
214+
github.com/inconshreveable/mousetrap v1.1.0 // indirect
210215
github.com/jackc/pgpassfile v1.0.0 // indirect
211216
github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9 // indirect
212217
github.com/jackc/puddle/v2 v2.2.1 // indirect
@@ -228,6 +233,7 @@ require (
228233
github.com/kr/pretty v0.3.1 // indirect
229234
github.com/kr/text v0.2.0 // indirect
230235
github.com/kylelemons/godebug v1.1.0 // indirect
236+
github.com/magiconair/properties v1.8.7 // indirect
231237
github.com/mattn/go-colorable v0.1.13 // indirect
232238
github.com/mattn/go-runewidth v0.0.15 // indirect
233239
github.com/mattn/go-sixel v0.0.5 // indirect
@@ -251,10 +257,11 @@ require (
251257
github.com/opencontainers/image-spec v1.1.0-rc5 // indirect
252258
github.com/opencontainers/runc v1.1.5 // indirect
253259
github.com/paulmach/orb v0.11.1 // indirect
260+
github.com/pelletier/go-toml/v2 v2.1.0 // indirect
254261
github.com/pierrec/lz4/v4 v4.1.21 // indirect
255262
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
256263
github.com/pkg/errors v0.9.1 // indirect
257-
github.com/pmezard/go-difflib v1.0.0 // indirect
264+
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
258265
github.com/prometheus/client_golang v1.19.0 // indirect
259266
github.com/prometheus/client_model v0.6.0 // indirect
260267
github.com/prometheus/common v0.51.1 // indirect
@@ -263,19 +270,24 @@ require (
263270
github.com/rivo/uniseg v0.4.7 // indirect
264271
github.com/rogpeppe/go-internal v1.12.0 // indirect
265272
github.com/rs/zerolog v1.32.0 // indirect
273+
github.com/sagikazarmark/locafero v0.4.0 // indirect
274+
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
266275
github.com/segmentio/asm v1.2.0 // indirect
267276
github.com/shopspring/decimal v1.3.1 // indirect
268277
github.com/sirupsen/logrus v1.9.3 // indirect
269278
github.com/soniakeys/quant v1.0.0 // indirect
279+
github.com/sourcegraph/conc v0.3.0 // indirect
270280
github.com/spaolacci/murmur3 v1.1.0 // indirect
281+
github.com/spf13/afero v1.11.0 // indirect
282+
github.com/spf13/cast v1.6.0 // indirect
271283
github.com/stretchr/objx v0.5.2 // indirect
272284
github.com/stretchr/testify v1.9.0 // indirect
285+
github.com/subosito/gotenv v1.6.0 // indirect
273286
github.com/twmb/murmur3 v1.1.8 // indirect
274287
github.com/uber-go/tally v3.5.10+incompatible // indirect
275288
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
276289
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
277290
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
278-
github.com/xhit/go-str2duration/v2 v2.1.0 // indirect
279291
github.com/xwb1989/sqlparser v0.0.0-20180606152119-120387863bf2 // indirect
280292
github.com/ydb-platform/ydb-go-genproto v0.0.0-20240316140903-4a47abca1cca // indirect
281293
github.com/zeebo/xxh3 v1.0.2 // indirect
@@ -309,6 +321,7 @@ require (
309321
google.golang.org/grpc v1.62.1 // indirect
310322
google.golang.org/protobuf v1.33.0 // indirect
311323
gopkg.in/inf.v0 v0.9.1 // indirect
324+
gopkg.in/ini.v1 v1.67.0 // indirect
312325
gopkg.in/jcmturner/aescts.v1 v1.0.1 // indirect
313326
gopkg.in/jcmturner/dnsutils.v1 v1.0.1 // indirect
314327
gopkg.in/jcmturner/gokrb5.v6 v6.1.1 // indirect

0 commit comments

Comments
 (0)