Skip to content

Commit 7ad53d2

Browse files
authored
Merge pull request #196 from arangodb-helper/vendor-updates
Updated go-certificates & go-driver
2 parents badd1a9 + df2754a commit 7ad53d2

File tree

13 files changed

+255
-27
lines changed

13 files changed

+255
-27
lines changed

deps/github.com/arangodb-helper/go-certificates/keyfile.go

Lines changed: 64 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,13 @@ import (
3838
"strings"
3939
)
4040

41-
// LoadKeyFile loads a SSL keyfile formatted for the arangod server.
42-
func LoadKeyFile(keyFile string) (tls.Certificate, error) {
43-
raw, err := ioutil.ReadFile(keyFile)
44-
if err != nil {
45-
return tls.Certificate{}, maskAny(err)
46-
}
41+
// Keyfile contains 1 or more certificates and a private key.
42+
type Keyfile tls.Certificate
4743

48-
result := tls.Certificate{}
44+
// NewKeyfile creates a keyfile from given content.
45+
func NewKeyfile(content string) (Keyfile, error) {
46+
raw := []byte(content)
47+
result := Keyfile{}
4948
for {
5049
var derBlock *pem.Block
5150
derBlock, raw = pem.Decode(raw)
@@ -56,22 +55,74 @@ func LoadKeyFile(keyFile string) (tls.Certificate, error) {
5655
result.Certificate = append(result.Certificate, derBlock.Bytes)
5756
} else if derBlock.Type == "PRIVATE KEY" || strings.HasSuffix(derBlock.Type, " PRIVATE KEY") {
5857
if result.PrivateKey == nil {
58+
var err error
5959
result.PrivateKey, err = parsePrivateKey(derBlock.Bytes)
6060
if err != nil {
61-
return tls.Certificate{}, maskAny(err)
61+
return Keyfile{}, maskAny(err)
6262
}
6363
}
6464
}
6565
}
66+
return result, nil
67+
}
6668

67-
if len(result.Certificate) == 0 {
68-
return tls.Certificate{}, maskAny(fmt.Errorf("No certificates found in %s", keyFile))
69+
// Validate the contents of the keyfile
70+
func (kf Keyfile) Validate() error {
71+
if len(kf.Certificate) == 0 {
72+
return maskAny(fmt.Errorf("No certificates found in keyfile"))
6973
}
70-
if result.PrivateKey == nil {
71-
return tls.Certificate{}, maskAny(fmt.Errorf("No private key found in %s", keyFile))
74+
if kf.PrivateKey == nil {
75+
return maskAny(fmt.Errorf("No private key found in keyfile"))
7276
}
7377

74-
return result, nil
78+
return nil
79+
}
80+
81+
// EncodeCACertificates extracts the CA certificate(s) from the given keyfile (if any).
82+
func (kf Keyfile) EncodeCACertificates() (string, error) {
83+
buf := &bytes.Buffer{}
84+
for _, derBytes := range kf.Certificate {
85+
c, err := x509.ParseCertificate(derBytes)
86+
if err != nil {
87+
return "", maskAny(err)
88+
}
89+
if c.IsCA {
90+
pem.Encode(buf, &pem.Block{Type: "CERTIFICATE", Bytes: derBytes})
91+
}
92+
}
93+
94+
return buf.String(), nil
95+
}
96+
97+
// EncodeCertificates extracts all certificates from the given keyfile and encodes them as PEM blocks.
98+
func (kf Keyfile) EncodeCertificates() string {
99+
buf := &bytes.Buffer{}
100+
for _, derBytes := range kf.Certificate {
101+
pem.Encode(buf, &pem.Block{Type: "CERTIFICATE", Bytes: derBytes})
102+
}
103+
104+
return buf.String()
105+
}
106+
107+
// EncodePrivateKey extract the private key from the given keyfile and encodes is as PEM block.
108+
func (kf Keyfile) EncodePrivateKey() string {
109+
buf := &bytes.Buffer{}
110+
pem.Encode(buf, pemBlockForKey(kf.PrivateKey))
111+
return buf.String()
112+
}
113+
114+
// LoadKeyFile loads a SSL keyfile formatted for the arangod server.
115+
func LoadKeyFile(keyFile string) (tls.Certificate, error) {
116+
raw, err := ioutil.ReadFile(keyFile)
117+
if err != nil {
118+
return tls.Certificate{}, maskAny(err)
119+
}
120+
121+
kf, err := NewKeyfile(string(raw))
122+
if err != nil {
123+
return tls.Certificate{}, maskAny(err)
124+
}
125+
return tls.Certificate(kf), nil
75126
}
76127

77128
// ExtractCACertificateFromKeyFile loads a SSL keyfile formatted for the arangod server and
Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
# Change Log
2+
3+
## [Master](https://github.com/arangodb/go-driver/tree/HEAD)
4+
5+
**Closed issues:**
6+
7+
- Structs with key specified don't read the key [\#138](https://github.com/arangodb/go-driver/issues/138)
8+
- Edge document with user provided key is inserted as many times as the number of shards [\#137](https://github.com/arangodb/go-driver/issues/137)
9+
- Query "return null" make the panic: runtime error [\#117](https://github.com/arangodb/go-driver/issues/117)
10+
- driver does not seem to decode numeric timestamps to time.Time [\#102](https://github.com/arangodb/go-driver/issues/102)
11+
- stable and full feature? [\#100](https://github.com/arangodb/go-driver/issues/100)
12+
- collection with "Wait for sync:" setting, Create-/UpdateDocument return: ArangoError: Code 0, ErrorNum 0 [\#96](https://github.com/arangodb/go-driver/issues/96)
13+
- Error when connecting to ArangoDB with SSL enabled [\#95](https://github.com/arangodb/go-driver/issues/95)
14+
- Possible concurrency issues, using VST connection [\#86](https://github.com/arangodb/go-driver/issues/86)
15+
- An example of a transactional request [\#84](https://github.com/arangodb/go-driver/issues/84)
16+
- Multi-tenancy connection management [\#83](https://github.com/arangodb/go-driver/issues/83)
17+
- Cursor returned from a query with empty Count [\#82](https://github.com/arangodb/go-driver/issues/82)
18+
- CONTRIBUTING.md [\#79](https://github.com/arangodb/go-driver/issues/79)
19+
- Querying documents + [\#76](https://github.com/arangodb/go-driver/issues/76)
20+
- Is there an ArangoDB-Object on Struct? [\#75](https://github.com/arangodb/go-driver/issues/75)
21+
- DB Session [\#73](https://github.com/arangodb/go-driver/issues/73)
22+
- correct way to get multiple documents ? [\#70](https://github.com/arangodb/go-driver/issues/70)
23+
- Revalidate whether workaround can be removed [\#68](https://github.com/arangodb/go-driver/issues/68)
24+
- Makefile `SWTSECRET` vs `JWTSECRET` [\#66](https://github.com/arangodb/go-driver/issues/66)
25+
- Implement transactions [\#56](https://github.com/arangodb/go-driver/issues/56)
26+
- bulk import API [\#55](https://github.com/arangodb/go-driver/issues/55)
27+
- Question: how to write auto-inc feild? [\#51](https://github.com/arangodb/go-driver/issues/51)
28+
- add index attribute for new feature in arangodb3.2 [\#48](https://github.com/arangodb/go-driver/issues/48)
29+
- Unable to connect to server in macos [\#41](https://github.com/arangodb/go-driver/issues/41)
30+
- Handle 401 status code before checking content type. [\#38](https://github.com/arangodb/go-driver/issues/38)
31+
- Support for raw string in query return [\#37](https://github.com/arangodb/go-driver/issues/37)
32+
- \[ArangoDB Server 3.1.6\] Unsupported content type: client.DatabaseExists when Database already exists [\#36](https://github.com/arangodb/go-driver/issues/36)
33+
- Can't connect because of 'Unsupported content type'? [\#35](https://github.com/arangodb/go-driver/issues/35)
34+
- cursor implementation when running queries with non-Document return values [\#20](https://github.com/arangodb/go-driver/issues/20)
35+
- Make failover with cursors more explicit [\#16](https://github.com/arangodb/go-driver/issues/16)
36+
- Add non-context version of method calls [\#7](https://github.com/arangodb/go-driver/issues/7)
37+
38+
**Merged pull requests:**
39+
40+
- Properly closing idle VST connections [\#139](https://github.com/arangodb/go-driver/pull/139)
41+
- Improving performance of reading the body of large responses [\#134](https://github.com/arangodb/go-driver/pull/134)
42+
- Added Collection.ReadDocuments [\#133](https://github.com/arangodb/go-driver/pull/133)
43+
- Added support for fetching job ID in CleanoutServer [\#131](https://github.com/arangodb/go-driver/pull/131)
44+
- Exclude high load test on VST+3.2 [\#129](https://github.com/arangodb/go-driver/pull/129)
45+
- Test/prevent concurrent vst read write [\#128](https://github.com/arangodb/go-driver/pull/128)
46+
- Added single+ssl tests. All tests now use starter [\#127](https://github.com/arangodb/go-driver/pull/127)
47+
- Bugfix/read chunk loop [\#126](https://github.com/arangodb/go-driver/pull/126)
48+
- Prevent possible endless read chunk look in in VST connection [\#125](https://github.com/arangodb/go-driver/pull/125)
49+
- Fixing Query\(return nul\) resulting in panic [\#124](https://github.com/arangodb/go-driver/pull/124)
50+
- Added WithAllowNoLeader [\#123](https://github.com/arangodb/go-driver/pull/123)
51+
- Added Cluster.RemoveServer [\#122](https://github.com/arangodb/go-driver/pull/122)
52+
- Added mutex guarding message chunks. [\#121](https://github.com/arangodb/go-driver/pull/121)
53+
- Documentation/go refactor [\#120](https://github.com/arangodb/go-driver/pull/120)
54+
- VST stream cursor test fixes & VST fail-quick fix [\#119](https://github.com/arangodb/go-driver/pull/119)
55+
- Prevent a VST connection from being used before its configuration callback has finished [\#118](https://github.com/arangodb/go-driver/pull/118)
56+
- Fixed AgencyConnection in the context of authentication [\#116](https://github.com/arangodb/go-driver/pull/116)
57+
- Adding timeout for streaming cursor test [\#115](https://github.com/arangodb/go-driver/pull/115)
58+
- Added package level docs [\#114](https://github.com/arangodb/go-driver/pull/114)
59+
- Close the connection when the initial onCreatedCallback fails [\#113](https://github.com/arangodb/go-driver/pull/113)
60+
- Adding extra concurrency-safety for VST [\#112](https://github.com/arangodb/go-driver/pull/112)
61+
- Added upper limit to the number of concurrent requests to a single server. [\#111](https://github.com/arangodb/go-driver/pull/111)
62+
- Added support for multiple VST connections per server [\#110](https://github.com/arangodb/go-driver/pull/110)
63+
- Fixed expected status code for operations on collections that have waitForSync enabled [\#109](https://github.com/arangodb/go-driver/pull/109)
64+
- Added helper to determine agency health [\#108](https://github.com/arangodb/go-driver/pull/108)
65+
- Added ServerID function [\#107](https://github.com/arangodb/go-driver/pull/107)
66+
- Added exclusive lock using agency [\#106](https://github.com/arangodb/go-driver/pull/106)
67+
- Added helper for JWT secret based authentication [\#105](https://github.com/arangodb/go-driver/pull/105)
68+
- Added Agency API [\#104](https://github.com/arangodb/go-driver/pull/104)
69+
- Added option to not follow redirects and return the original response [\#103](https://github.com/arangodb/go-driver/pull/103)
70+
- Add support for stream query cursor [\#101](https://github.com/arangodb/go-driver/pull/101)
71+
- Active-Failover with Velocystream [\#99](https://github.com/arangodb/go-driver/pull/99)
72+
- Added API functions for shutting down a server and cleaning it out [\#98](https://github.com/arangodb/go-driver/pull/98)
73+
- Skip replication test on cluster [\#94](https://github.com/arangodb/go-driver/pull/94)
74+
- Documented behavior for custom http.Transport wrt MaxIdleConnsPerHost field [\#93](https://github.com/arangodb/go-driver/pull/93)
75+
- Fix ReturnOld/New for edge/vertex operations. [\#92](https://github.com/arangodb/go-driver/pull/92)
76+
- Database.Info\(\) added [\#91](https://github.com/arangodb/go-driver/pull/91)
77+
- Replication interface added. [\#90](https://github.com/arangodb/go-driver/pull/90)
78+
- Grouping server specific info calls in ClientServerInfo, exposing ServerRole API [\#89](https://github.com/arangodb/go-driver/pull/89)
79+
- Added `ReplicationFactor` to `SetCollectionPropertiesOptions` [\#88](https://github.com/arangodb/go-driver/pull/88)
80+
- Allow for some time to reach intended status [\#87](https://github.com/arangodb/go-driver/pull/87)
81+
- Fixing SWTSECRET -\> JWTSECRET [\#85](https://github.com/arangodb/go-driver/pull/85)
82+
- Added CONTRIBUTING.md [\#80](https://github.com/arangodb/go-driver/pull/80)
83+
- Resilientsingle support [\#77](https://github.com/arangodb/go-driver/pull/77)
84+
- Adding cluster specific operations [\#72](https://github.com/arangodb/go-driver/pull/72)
85+
- Added IsSmart, SmartGraphAttribute attributes to CreateCollectionOptions [\#71](https://github.com/arangodb/go-driver/pull/71)
86+
- Adding Response.Header\(string\) & tests [\#69](https://github.com/arangodb/go-driver/pull/69)
87+
- Server mode \(get/set\) [\#65](https://github.com/arangodb/go-driver/pull/65)
88+
- Adding `WithConfigured` [\#64](https://github.com/arangodb/go-driver/pull/64)
89+
- Added DistributeShardsLike field to CreateCollectionOptions [\#62](https://github.com/arangodb/go-driver/pull/62)
90+
- Added WithEnforceReplicationFactor [\#61](https://github.com/arangodb/go-driver/pull/61)
91+
- Added `WithIsSystem` [\#60](https://github.com/arangodb/go-driver/pull/60)
92+
- Support synchronising endpoints on resilient single server mode [\#59](https://github.com/arangodb/go-driver/pull/59)
93+
- Added `WithIgnoreRevisions` [\#58](https://github.com/arangodb/go-driver/pull/58)
94+
- Basic transaction implementation [\#57](https://github.com/arangodb/go-driver/pull/57)
95+
- Support `x-arango-dump` content type [\#54](https://github.com/arangodb/go-driver/pull/54)
96+
- Added WithIsRestore \(not internal for normal client use!!!!\) [\#53](https://github.com/arangodb/go-driver/pull/53)
97+
- Raw authentication [\#52](https://github.com/arangodb/go-driver/pull/52)
98+
- Include travis tests for arangodb 3.1 [\#50](https://github.com/arangodb/go-driver/pull/50)
99+
- Added NoDeduplicate field for hash & skiplist index options [\#49](https://github.com/arangodb/go-driver/pull/49)
100+
- Supporting additional user access functions [\#47](https://github.com/arangodb/go-driver/pull/47)
101+
- ftKnox - fix sprintf conversions [\#42](https://github.com/arangodb/go-driver/pull/42)
102+
- Convert 401 text/plain response to proper ArangoError [\#39](https://github.com/arangodb/go-driver/pull/39)
103+
- Adding Storage engine detection [\#34](https://github.com/arangodb/go-driver/pull/34)
104+
- Starter update [\#33](https://github.com/arangodb/go-driver/pull/33)
105+
- Fix reading the response body to ensure keep-alive [\#32](https://github.com/arangodb/go-driver/pull/32)
106+
- Velocy stream support \(wip\) [\#31](https://github.com/arangodb/go-driver/pull/31)
107+
- Supporting Velocypack content-type \(instead of JSON\) \(wip\) [\#29](https://github.com/arangodb/go-driver/pull/29)
108+
- Fixed Cursor.ReadDocument for queries returning non-documents [\#27](https://github.com/arangodb/go-driver/pull/27)
109+
- Added Collection.Statistics [\#25](https://github.com/arangodb/go-driver/pull/25)
110+
- Adding Database.ValidateQuery [\#24](https://github.com/arangodb/go-driver/pull/24)
111+
- Added Collection.DocumentExists [\#23](https://github.com/arangodb/go-driver/pull/23)
112+
- Added `Database.Remove\(\)` [\#22](https://github.com/arangodb/go-driver/pull/22)
113+
- Changing graph API to introduce VertexConstraints [\#21](https://github.com/arangodb/go-driver/pull/21)
114+
- Endpoint reconfiguration [\#19](https://github.com/arangodb/go-driver/pull/19)
115+
- Allow custom http.RoundTripper [\#18](https://github.com/arangodb/go-driver/pull/18)
116+
- Added WithEndpoint, used to force a specific endpoint for a request. [\#17](https://github.com/arangodb/go-driver/pull/17)
117+
- Adding failover tests [\#15](https://github.com/arangodb/go-driver/pull/15)
118+
- Adding simple performance benchmarks [\#14](https://github.com/arangodb/go-driver/pull/14)
119+
- Cluster tests [\#12](https://github.com/arangodb/go-driver/pull/12)
120+
- ImportDocuments [\#11](https://github.com/arangodb/go-driver/pull/11)
121+
- Adding Graph support \(wip\) [\#10](https://github.com/arangodb/go-driver/pull/10)
122+
- Added collection status,count,rename,load,unload,truncate,properties [\#9](https://github.com/arangodb/go-driver/pull/9)
123+
- Adding user API [\#8](https://github.com/arangodb/go-driver/pull/8)
124+
- Adding index support [\#6](https://github.com/arangodb/go-driver/pull/6)
125+
- Added Cursor support [\#5](https://github.com/arangodb/go-driver/pull/5)
126+
- Adding multi document requests [\#4](https://github.com/arangodb/go-driver/pull/4)
127+
- Creating interface. \(WIP\) [\#3](https://github.com/arangodb/go-driver/pull/3)
128+
- Revert "Creating interface" [\#2](https://github.com/arangodb/go-driver/pull/2)
129+
- Creating interface [\#1](https://github.com/arangodb/go-driver/pull/1)
130+
131+
132+
133+
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Maintainer Instructions
2+
3+
- Always preserve backward compatibility
4+
- Build using `make clean && make`
5+
- After merging PR, alway run `make changelog` and commit changes
6+
- Set ArangoDB docker container (used for testing) using `export ARANGODB=<image-name>`
7+
- Run tests using:
8+
- `make run-tests-single`
9+
- `make run-tests-resilientsingle`
10+
- `make run-tests-cluster`.
11+
- Always create changes in a PR

deps/github.com/arangodb/go-driver/Makefile

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,17 @@ $(GOBUILDDIR):
113113
GOPATH=$(GOBUILDDIR) go get github.com/arangodb/go-velocypack
114114
GOPATH=$(GOBUILDDIR) go get github.com/dgrijalva/jwt-go
115115

116+
.PHONY: changelog
117+
changelog:
118+
@docker run --rm \
119+
-e CHANGELOG_GITHUB_TOKEN=$(shell cat ~/.arangodb/github-token) \
120+
-v "$(ROOTDIR)":/usr/local/src/your-app \
121+
ferrarimarco/github-changelog-generator \
122+
--user arangodb \
123+
--project go-driver \
124+
--no-author \
125+
--unreleased-label "Master"
126+
116127
run-tests: run-tests-http run-tests-single run-tests-resilientsingle run-tests-cluster
117128

118129
# Tests of HTTP package

deps/github.com/arangodb/go-driver/database_collections.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,11 @@ type CreateCollectionOptions struct {
8989
// This field is used for internal purposes only. DO NOT USE.
9090
DistributeShardsLike string `json:"distributeShardsLike,omitempty"`
9191
// Set to create a smart edge or vertex collection.
92-
// This requires ArangoDB enterprise.
92+
// This requires ArangoDB Enterprise Edition.
9393
IsSmart bool `json:"isSmart,omitempty"`
9494
// This field must be set to the attribute that will be used for sharding or smart graphs.
9595
// All vertices are required to have this attribute set. Edges derive the attribute from their connected vertices.
96-
// This requires ArangoDB enterprise.
96+
// This requires ArangoDB Enterprise Edition.
9797
SmartGraphAttribute string `json:"smartGraphAttribute,omitempty"`
9898
}
9999

deps/github.com/arangodb/go-driver/database_graphs.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ type CreateGraphOptions struct {
4949
// EdgeDefinitions is an array of edge definitions for the graph.
5050
EdgeDefinitions []EdgeDefinition
5151
// IsSmart defines if the created graph should be smart.
52-
// This only has effect in Enterprise version.
52+
// This only has effect in Enterprise Edition.
5353
IsSmart bool
5454
// SmartGraphAttribute is the attribute name that is used to smartly shard the vertices of a graph.
5555
// Every vertex in this Graph has to have this attribute.

deps/github.com/arangodb/go-driver/http/connection.go

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
package http
2424

2525
import (
26+
"bytes"
2627
"context"
2728
"crypto/tls"
2829
"encoding/json"
@@ -273,8 +274,7 @@ func (c *httpConnection) Do(ctx context.Context, req driver.Request) (driver.Res
273274
}
274275

275276
// Read response body
276-
defer resp.Body.Close()
277-
body, err := ioutil.ReadAll(resp.Body)
277+
body, err := readBody(resp)
278278
if err != nil {
279279
return nil, driver.WithStack(err)
280280
}
@@ -319,6 +319,29 @@ func (c *httpConnection) Do(ctx context.Context, req driver.Request) (driver.Res
319319
return httpResp, nil
320320
}
321321

322+
// readBody reads the body of the given response into a byte slice.
323+
func readBody(resp *http.Response) ([]byte, error) {
324+
defer resp.Body.Close()
325+
contentLength := resp.ContentLength
326+
if contentLength < 0 {
327+
// Don't know the content length, do it the slowest way
328+
result, err := ioutil.ReadAll(resp.Body)
329+
if err != nil {
330+
return nil, driver.WithStack(err)
331+
}
332+
return result, nil
333+
}
334+
buf := &bytes.Buffer{}
335+
if int64(int(contentLength)) == contentLength {
336+
// contentLength is an int64. If we can safely cast to int, use Grow.
337+
buf.Grow(int(contentLength))
338+
}
339+
if _, err := buf.ReadFrom(resp.Body); err != nil {
340+
return nil, driver.WithStack(err)
341+
}
342+
return buf.Bytes(), nil
343+
}
344+
322345
// Unmarshal unmarshals the given raw object into the given result interface.
323346
func (c *httpConnection) Unmarshal(data driver.RawObject, result interface{}) error {
324347
ct := c.contentType

deps/github.com/arangodb/go-driver/query.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ type queryRequest struct {
131131
// A list of to-be-included or to-be-excluded optimizer rules can be put into this attribute, telling the optimizer to include or exclude specific rules.
132132
// To disable a rule, prefix its name with a -, to enable a rule, prefix it with a +. There is also a pseudo-rule all, which will match all optimizer rules.
133133
OptimizerRules string `json:"optimizer.rules,omitempty"`
134-
// This enterprise parameter allows to configure how long a DBServer will have time to bring the satellite collections
134+
// This Enterprise Edition parameter allows to configure how long a DBServer will have time to bring the satellite collections
135135
// involved in the query into sync. The default value is 60.0 (seconds). When the max time has been reached the query will be stopped.
136136
SatelliteSyncWait float64 `json:"satelliteSyncWait,omitempty"`
137137
// if set to true and the query contains a LIMIT clause, then the result will have an extra attribute with the sub-attributes

deps/github.com/arangodb/go-driver/vst/authentication.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ func (a *vstAuthenticationImpl) PrepareFunc(vstConn *vstConnection) func(ctx con
141141

142142
// Wait for response
143143
m := <-respChan
144-
resp, err := newResponse(m, "", nil)
144+
resp, err := newResponse(m.Data, "", nil)
145145
if err != nil {
146146
return driver.WithStack(err)
147147
}

0 commit comments

Comments
 (0)