Skip to content

Commit 45f511a

Browse files
authored
feat(launchdarkly)!: Migrate to Arrow native SDK (#10982)
Closes #10755 BEGIN_COMMIT_OVERRIDE feat: Update to use [Apache Arrow](https://arrow.apache.org/) type system (#10982) BREAKING-CHANGE: This release introduces an internal change to our type system to use [Apache Arrow](https://arrow.apache.org/). This should not have any visible breaking changes, however due to the size of the change we are introducing it under a major version bump to communicate that it might have some bugs that we weren't able to catch during our internal tests. If you encounter an issue during the upgrade, please submit a [bug report](https://github.com/cloudquery/cloudquery/issues/new/choose). You will also need to update destinations depending on which one you use: - Azure Blob Storage >= v3.2.0 - BigQuery >= v3.0.0 - ClickHouse >= v3.1.1 - DuckDB >= v1.1.6 - Elasticsearch >= v2.0.0 - File >= v3.2.0 - Firehose >= v2.0.2 - GCS >= v3.2.0 - Gremlin >= v2.1.10 - Kafka >= v3.0.1 - Meilisearch >= v2.0.1 - Microsoft SQL Server >= v4.2.0 - MongoDB >= v2.0.1 - MySQL >= v2.0.2 - Neo4j >= v3.0.0 - PostgreSQL >= v4.2.0 - S3 >= v4.4.0 - Snowflake >= v2.1.1 - SQLite >= v2.2.0 END_COMMIT_OVERRIDE
1 parent abf4c6b commit 45f511a

22 files changed

+167
-168
lines changed

plugins/source/launchdarkly/client/client.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ import (
77
"time"
88

99
"github.com/cloudquery/plugin-pb-go/specs"
10-
"github.com/cloudquery/plugin-sdk/v2/backend"
11-
"github.com/cloudquery/plugin-sdk/v2/plugins/source"
12-
"github.com/cloudquery/plugin-sdk/v2/schema"
10+
"github.com/cloudquery/plugin-sdk/v3/backend"
11+
"github.com/cloudquery/plugin-sdk/v3/plugins/source"
12+
"github.com/cloudquery/plugin-sdk/v3/schema"
1313
ldapi "github.com/launchdarkly/api-client-go/v11"
1414
"github.com/rs/zerolog"
1515
)

plugins/source/launchdarkly/client/resolvers.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import (
44
"context"
55
"time"
66

7-
"github.com/cloudquery/plugin-sdk/v2/schema"
7+
"github.com/cloudquery/plugin-sdk/v3/schema"
88
"github.com/thoas/go-funk"
99
)
1010

plugins/source/launchdarkly/client/testing.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import (
1111
"time"
1212

1313
"github.com/cloudquery/plugin-pb-go/specs"
14-
"github.com/cloudquery/plugin-sdk/v2/backend"
15-
"github.com/cloudquery/plugin-sdk/v2/plugins/source"
16-
"github.com/cloudquery/plugin-sdk/v2/schema"
14+
"github.com/cloudquery/plugin-sdk/v3/backend"
15+
"github.com/cloudquery/plugin-sdk/v3/plugins/source"
16+
"github.com/cloudquery/plugin-sdk/v3/schema"
1717
"github.com/gorilla/mux"
1818
ldapi "github.com/launchdarkly/api-client-go/v11"
1919
"github.com/rs/zerolog"

plugins/source/launchdarkly/client/transformers.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import (
44
"reflect"
55
"strings"
66

7-
"github.com/cloudquery/plugin-sdk/v2/schema"
8-
"github.com/cloudquery/plugin-sdk/v2/transformers"
7+
"github.com/cloudquery/plugin-sdk/v3/schema"
8+
"github.com/cloudquery/plugin-sdk/v3/transformers"
99
)
1010

1111
var options = []transformers.StructTransformerOption{

plugins/source/launchdarkly/go.mod

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,21 @@ module github.com/cloudquery/cloudquery/plugins/source/launchdarkly
33
go 1.19
44

55
require (
6+
github.com/apache/arrow/go/v13 v13.0.0-20230509040948-de6c3cd2b604
67
github.com/cloudquery/plugin-pb-go v1.0.8
7-
github.com/cloudquery/plugin-sdk/v2 v2.7.0
8+
github.com/cloudquery/plugin-sdk/v3 v3.6.4
89
github.com/gorilla/mux v1.8.0
910
github.com/launchdarkly/api-client-go/v11 v11.0.0
1011
github.com/rs/zerolog v1.29.0
1112
github.com/thoas/go-funk v0.9.3
1213
)
1314

14-
// TODO: remove once all updates are merged
15-
replace github.com/apache/arrow/go/v13 => github.com/cloudquery/arrow/go/v13 v13.0.0-20230509053643-898a79b1d3c8
15+
replace github.com/apache/arrow/go/v13 => github.com/cloudquery/arrow/go/v13 v13.0.0-20230525142029-2d32efeedad8
1616

1717
require (
1818
github.com/andybalholm/brotli v1.0.5 // indirect
19-
github.com/apache/arrow/go/v13 v13.0.0-20230509040948-de6c3cd2b604 // indirect
2019
github.com/apache/thrift v0.16.0 // indirect
20+
github.com/cloudquery/plugin-sdk/v2 v2.7.0 // indirect
2121
github.com/davecgh/go-spew v1.1.1 // indirect
2222
github.com/getsentry/sentry-go v0.20.0 // indirect
2323
github.com/ghodss/yaml v1.0.0 // indirect
@@ -36,6 +36,7 @@ require (
3636
github.com/mattn/go-isatty v0.0.18 // indirect
3737
github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8 // indirect
3838
github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3 // indirect
39+
github.com/pierrec/lz4/v4 v4.1.15 // indirect
3940
github.com/pmezard/go-difflib v1.0.0 // indirect
4041
github.com/spf13/cast v1.5.0 // indirect
4142
github.com/spf13/cobra v1.6.1 // indirect

plugins/source/launchdarkly/go.sum

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,14 @@ github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWR
4444
github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI=
4545
github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU=
4646
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
47-
github.com/cloudquery/arrow/go/v13 v13.0.0-20230509053643-898a79b1d3c8 h1:CmgLSEGQNLHpUQ5cU4L4aF7cuJZRnc1toIIWqC1gmPg=
48-
github.com/cloudquery/arrow/go/v13 v13.0.0-20230509053643-898a79b1d3c8/go.mod h1:/XatdE3kDIBqZKhZ7OBUHwP2jaASDFZHqF4puOWM8po=
47+
github.com/cloudquery/arrow/go/v13 v13.0.0-20230525142029-2d32efeedad8 h1:/mgK+To5HNUzuZDWdVygbfn8oaPG5c7I/8qCxwwpWO8=
48+
github.com/cloudquery/arrow/go/v13 v13.0.0-20230525142029-2d32efeedad8/go.mod h1:/XatdE3kDIBqZKhZ7OBUHwP2jaASDFZHqF4puOWM8po=
4949
github.com/cloudquery/plugin-pb-go v1.0.8 h1:wn3GXhcNItcP+6wUUZuzUFbvdL59liKBO37/izMi+FQ=
5050
github.com/cloudquery/plugin-pb-go v1.0.8/go.mod h1:vAGA27psem7ZZNAY4a3S9TKuA/JDQWstjKcHPJX91Mc=
5151
github.com/cloudquery/plugin-sdk/v2 v2.7.0 h1:hRXsdEiaOxJtsn/wZMFQC9/jPfU1MeMK3KF+gPGqm7U=
5252
github.com/cloudquery/plugin-sdk/v2 v2.7.0/go.mod h1:pAX6ojIW99b/Vg4CkhnsGkRIzNaVEceYMR+Bdit73ug=
53+
github.com/cloudquery/plugin-sdk/v3 v3.6.4 h1:P4OkS5tJYkv3OqeL60DAVqXXbFQUyPKJ5YDtAgjl9b4=
54+
github.com/cloudquery/plugin-sdk/v3 v3.6.4/go.mod h1:3JrZXEULmGXpkOukVaRIzaA63d7TJr9Ukp6hemTjbtc=
5355
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
5456
github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
5557
github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
@@ -178,6 +180,7 @@ github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3 h1:+n/aFZefKZp7spd8D
178180
github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE=
179181
github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=
180182
github.com/pierrec/lz4/v4 v4.1.15 h1:MO0/ucJhngq7299dKLwIMtgTfbkoSPF6AoMYDd8Q4q0=
183+
github.com/pierrec/lz4/v4 v4.1.15/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4=
181184
github.com/pingcap/errors v0.11.4 h1:lFuQV/oaUMGcD2tqt+01ROSmJs75VG1ToEOkZIZ4nE4=
182185
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
183186
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=

plugins/source/launchdarkly/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package main
22

33
import (
44
"github.com/cloudquery/cloudquery/plugins/source/launchdarkly/resources/plugin"
5-
"github.com/cloudquery/plugin-sdk/v2/serve"
5+
"github.com/cloudquery/plugin-sdk/v3/serve"
66
)
77

88
const sentryDSN = "https://[email protected]/4504560038838272"

plugins/source/launchdarkly/resources/plugin/plugin.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ import (
44
"github.com/cloudquery/cloudquery/plugins/source/launchdarkly/client"
55
"github.com/cloudquery/cloudquery/plugins/source/launchdarkly/resources/services/auditlog"
66
"github.com/cloudquery/cloudquery/plugins/source/launchdarkly/resources/services/projects"
7-
"github.com/cloudquery/plugin-sdk/v2/caser"
8-
"github.com/cloudquery/plugin-sdk/v2/plugins/source"
9-
"github.com/cloudquery/plugin-sdk/v2/schema"
7+
"github.com/cloudquery/plugin-sdk/v3/caser"
8+
"github.com/cloudquery/plugin-sdk/v3/plugins/source"
9+
"github.com/cloudquery/plugin-sdk/v3/schema"
1010
)
1111

1212
var (

plugins/source/launchdarkly/resources/services/auditlog/auditlog_entries.go

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@ import (
55
"fmt"
66
"strconv"
77

8+
"github.com/apache/arrow/go/v13/arrow"
89
"github.com/cloudquery/cloudquery/plugins/source/launchdarkly/client"
9-
"github.com/cloudquery/plugin-sdk/v2/schema"
10-
"github.com/cloudquery/plugin-sdk/v2/transformers"
10+
"github.com/cloudquery/plugin-sdk/v3/schema"
11+
"github.com/cloudquery/plugin-sdk/v3/transformers"
1112
ldapi "github.com/launchdarkly/api-client-go/v11"
1213
)
1314

@@ -19,12 +20,10 @@ func AuditLogEntries() *schema.Table {
1920
Transform: client.TransformWithStruct(&ldapi.AuditLogEntryListingRep{}, transformers.WithPrimaryKeys("Id"), transformers.WithSkipFields("Date", "Links")),
2021
Columns: schema.ColumnList{
2122
{
22-
Name: "date",
23-
Type: schema.TypeTimestamp,
24-
Resolver: client.UnixTimeResolver("Date"),
25-
CreationOptions: schema.ColumnCreationOptions{
26-
IncrementalKey: true,
27-
},
23+
Name: "date",
24+
Type: arrow.FixedWidthTypes.Timestamp_us,
25+
Resolver: client.UnixTimeResolver("Date"),
26+
IncrementalKey: true,
2827
},
2928
},
3029
IsIncremental: true,

plugins/source/launchdarkly/resources/services/auditlog/auditlog_entries_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"testing"
77

88
"github.com/cloudquery/cloudquery/plugins/source/launchdarkly/client"
9-
"github.com/cloudquery/plugin-sdk/v2/faker"
9+
"github.com/cloudquery/plugin-sdk/v3/faker"
1010
"github.com/gorilla/mux"
1111
ldapi "github.com/launchdarkly/api-client-go/v11"
1212
)

0 commit comments

Comments
 (0)