Skip to content

Commit f7c1403

Browse files
authored
Add support for sdk v4, allowing a single plugin instance to host multiple connections. Closes #226
1 parent 679afc0 commit f7c1403

23 files changed

+1018
-1119
lines changed

fdw.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import (
1919
"github.com/turbot/steampipe-postgres-fdw/version"
2020

2121
"github.com/hashicorp/go-hclog"
22-
"github.com/turbot/steampipe-plugin-sdk/v3/logging"
22+
"github.com/turbot/steampipe-plugin-sdk/v4/logging"
2323
"github.com/turbot/steampipe-postgres-fdw/hub"
2424
"github.com/turbot/steampipe-postgres-fdw/types"
2525
"github.com/turbot/steampipe/pkg/constants"
@@ -333,7 +333,6 @@ func goFdwEndForeignScan(node *C.ForeignScanState) {
333333
if s != nil && pluginHub != nil {
334334
log.Printf("[TRACE] goFdwEndForeignScan, iterator: %p", s.Iter)
335335
pluginHub.EndScan(s.Iter, int64(s.State.limit))
336-
337336
}
338337
ClearExecState(node.fdw_state)
339338
node.fdw_state = nil

go.mod

Lines changed: 40 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,59 @@
11
module github.com/turbot/steampipe-postgres-fdw
22

3-
go 1.18
3+
go 1.19
44

55
require (
6-
github.com/dgraph-io/ristretto v0.1.0
6+
github.com/dgraph-io/ristretto v0.1.0 // indirect
77
github.com/golang/protobuf v1.5.2
88
github.com/hashicorp/go-hclog v1.2.2
9-
github.com/hashicorp/go-version v1.6.0
9+
github.com/hashicorp/go-version v1.6.0 // indirect
1010
github.com/turbot/go-kit v0.4.0
11-
// main
12-
github.com/turbot/steampipe v1.7.0-rc.0.0.20220627103827-5c71612f5753
13-
github.com/turbot/steampipe-plugin-sdk/v3 v3.3.0
14-
go.opentelemetry.io/otel v1.8.0
11+
github.com/turbot/steampipe v0.16.0-rc.6
12+
github.com/turbot/steampipe-plugin-sdk/v4 v4.0.1-alpha.0
13+
go.opentelemetry.io/otel v1.9.0
1514
google.golang.org/protobuf v1.28.1
1615
)
1716

1817
require (
1918
github.com/Masterminds/semver v1.5.0
20-
go.opentelemetry.io/otel/metric v0.31.0
19+
go.opentelemetry.io/otel/metric v0.30.0
2120
)
2221

2322
require (
2423
github.com/Machiel/slugify v1.0.1 // indirect
2524
github.com/Microsoft/go-winio v0.5.0 // indirect
2625
github.com/Microsoft/hcsshim v0.8.22 // indirect
26+
github.com/XiaoMi/pegasus-go-client v0.0.0-20210427083443-f3b6b08bc4c2 // indirect
2727
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // indirect
2828
github.com/agext/levenshtein v1.2.2 // indirect
29+
github.com/allegro/bigcache/v3 v3.0.2 // indirect
2930
github.com/apparentlymart/go-cidr v1.1.0 // indirect
3031
github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect
3132
github.com/apparentlymart/go-versions v1.0.1 // indirect
33+
github.com/beorn7/perks v1.0.1 // indirect
3234
github.com/bgentry/speakeasy v0.1.0 // indirect
3335
github.com/bmatcuk/doublestar v1.3.4 // indirect
34-
github.com/briandowns/spinner v1.18.1 // indirect
36+
github.com/bradfitz/gomemcache v0.0.0-20220106215444-fb4bf637b56d // indirect
37+
github.com/briandowns/spinner v1.19.0 // indirect
3538
github.com/btubbs/datetime v0.1.1 // indirect
3639
github.com/cenkalti/backoff/v4 v4.1.3 // indirect
3740
github.com/cespare/xxhash/v2 v2.1.2 // indirect
3841
github.com/containerd/cgroups v1.0.1 // indirect
39-
github.com/containerd/containerd v1.4.12 // indirect
42+
github.com/containerd/containerd v1.4.13 // indirect
4043
github.com/danwakefield/fnmatch v0.0.0-20160403171240-cbb64ac3d964 // indirect
41-
github.com/deislabs/oras v0.8.1 // indirect
44+
github.com/deislabs/oras v0.9.0 // indirect
45+
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
4246
github.com/dustin/go-humanize v1.0.0 // indirect
47+
github.com/eko/gocache/v3 v3.1.1 // indirect
4348
github.com/fatih/color v1.13.0 // indirect
49+
github.com/felixge/httpsnoop v1.0.3 // indirect
4450
github.com/fsnotify/fsnotify v1.5.4 // indirect
4551
github.com/gertd/go-pluralize v0.2.1 // indirect
4652
github.com/ghodss/yaml v1.0.0 // indirect
4753
github.com/go-logr/logr v1.2.3 // indirect
4854
github.com/go-logr/stdr v1.2.2 // indirect
4955
github.com/go-ole/go-ole v1.2.6 // indirect
56+
github.com/go-redis/redis/v8 v8.11.5 // indirect
5057
github.com/gogo/protobuf v1.3.2 // indirect
5158
github.com/golang/glog v1.0.0 // indirect
5259
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
@@ -79,6 +86,7 @@ require (
7986
github.com/mattn/go-colorable v0.1.12 // indirect
8087
github.com/mattn/go-isatty v0.0.14 // indirect
8188
github.com/mattn/go-runewidth v0.0.13 // indirect
89+
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
8290
github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db // indirect
8391
github.com/mitchellh/go-homedir v1.1.0 // indirect
8492
github.com/mitchellh/go-testing-interface v1.0.0 // indirect
@@ -89,14 +97,19 @@ require (
8997
github.com/olekukonko/tablewriter v0.0.5 // indirect
9098
github.com/opencontainers/go-digest v1.0.0 // indirect
9199
github.com/opencontainers/image-spec v1.0.2 // indirect
100+
github.com/pegasus-kv/thrift v0.13.0 // indirect
92101
github.com/pelletier/go-toml v1.9.5 // indirect
93102
github.com/pelletier/go-toml/v2 v2.0.1 // indirect
94103
github.com/pkg/errors v0.9.1 // indirect
104+
github.com/prometheus/client_golang v1.12.2 // indirect
105+
github.com/prometheus/client_model v0.2.0 // indirect
106+
github.com/prometheus/common v0.33.0 // indirect
107+
github.com/prometheus/procfs v0.7.3 // indirect
95108
github.com/rivo/uniseg v0.2.0 // indirect
96109
github.com/sethvargo/go-retry v0.1.0 // indirect
97110
github.com/shiena/ansicolor v0.0.0-20200904210342-c7312218db18 // indirect
98111
github.com/shirou/gopsutil v3.21.11+incompatible // indirect
99-
github.com/sirupsen/logrus v1.8.1 // indirect
112+
github.com/sirupsen/logrus v1.9.0 // indirect
100113
github.com/spf13/afero v1.8.2 // indirect
101114
github.com/spf13/cast v1.5.0 // indirect
102115
github.com/spf13/jwalterweatherman v1.1.0 // indirect
@@ -121,20 +134,30 @@ require (
121134
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.7.0 // indirect
122135
go.opentelemetry.io/otel/sdk v1.7.0 // indirect
123136
go.opentelemetry.io/otel/sdk/metric v0.30.0 // indirect
124-
go.opentelemetry.io/otel/trace v1.8.0 // indirect
137+
go.opentelemetry.io/otel/trace v1.9.0 // indirect
125138
go.opentelemetry.io/proto/otlp v0.16.0 // indirect
126139
golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167 // indirect
127-
golang.org/x/mod v0.5.1 // indirect
140+
golang.org/x/exp v0.0.0-20220518171630-0b5c67f07fdf // indirect
141+
golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3 // indirect
128142
golang.org/x/net v0.0.0-20220520000938-2e3eb7b945c2 // indirect
129143
golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 // indirect
130144
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect
131-
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a // indirect
145+
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8 // indirect
132146
golang.org/x/text v0.3.7 // indirect
133147
google.golang.org/appengine v1.6.7 // indirect
134-
google.golang.org/genproto v0.0.0-20220519153652-3a47de7e79bd // indirect
135-
google.golang.org/grpc v1.47.0 // indirect
148+
google.golang.org/genproto v0.0.0-20220720214146-176da50484ac // indirect
149+
google.golang.org/grpc v1.48.0 // indirect
136150
gopkg.in/ini.v1 v1.66.4 // indirect
151+
gopkg.in/natefinch/lumberjack.v2 v2.0.0 // indirect
152+
gopkg.in/tomb.v2 v2.0.0-20161208151619-d5d1b5820637 // indirect
137153
gopkg.in/yaml.v2 v2.4.0 // indirect
138154
gopkg.in/yaml.v3 v3.0.1 // indirect
155+
k8s.io/apimachinery v0.23.5 // indirect
139156
sigs.k8s.io/yaml v1.3.0 // indirect
140157
)
158+
159+
replace github.com/docker/distribution => github.com/distribution/distribution v2.7.1+incompatible
160+
161+
replace github.com/deislabs/oras => github.com/oras-project/oras v0.9.0
162+
163+
replace github.com/docker/docker => github.com/moby/moby v20.10.17+incompatible

0 commit comments

Comments
 (0)