funnel_http 0.5.13 → 0.5.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -1
- data/ext/funnel_http/funnel_http.go +28 -16
- data/ext/funnel_http/go.mod +4 -4
- data/ext/funnel_http/go.sum +6 -9
- data/lib/funnel_http/version.rb +1 -1
- data/rbs_collection.lock.yaml +6 -6
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: df00f14e6751da1f0fe37842b544e49176a90af2f006cdd64e84c3bd9d1cfed4
|
|
4
|
+
data.tar.gz: 359f884cd8adebad4951d9637df6224ffbc568d19185a60a316ecdc3303c20a2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: aa86b0f85dc8f8299833e38de624a2f75a3c356e1ad952f4adc8d7d5f6d6c4a2c70ba9a33fd3b3b290bff6d4aec243ad5bf67a6dc92e26b76be0ddc0b6e71edd
|
|
7
|
+
data.tar.gz: 546d32453819bf0d834cf12d7d2c4b1bd46279fac0daedd6965861f85e9c83466f60fad39f96e5c0587cb65afb753972221ef8bff5fc464767e557d9f79a9d03
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
|
-
[full changelog](http://github.com/sue445/funnel_http/compare/v0.5.
|
|
2
|
+
[full changelog](http://github.com/sue445/funnel_http/compare/v0.5.15...main)
|
|
3
|
+
|
|
4
|
+
## [0.5.15](https://github.com/sue445/funnel_http/releases/tag/v0.5.15) - 2026-09-12
|
|
5
|
+
[full changelog](http://github.com/sue445/funnel_http/compare/v0.5.14...v0.5.15)
|
|
6
|
+
|
|
7
|
+
* Fix SEGV
|
|
8
|
+
* https://github.com/sue445/funnel_http/pull/214
|
|
9
|
+
* Update Go dependencies
|
|
10
|
+
|
|
11
|
+
## [0.5.14](https://github.com/sue445/funnel_http/releases/tag/v0.5.14) - 2026-09-12
|
|
12
|
+
[full changelog](http://github.com/sue445/funnel_http/compare/v0.5.13...v0.5.14)
|
|
13
|
+
|
|
14
|
+
* [CVE-2026-56862] Requires Go 1.26.6+
|
|
15
|
+
* https://github.com/sue445/funnel_http/pull/211
|
|
16
|
+
* Update Go dependencies
|
|
3
17
|
|
|
4
18
|
## [0.5.13](https://github.com/sue445/funnel_http/releases/tag/v0.5.13) - 2026-08-23
|
|
5
19
|
[full changelog](http://github.com/sue445/funnel_http/compare/v0.5.12...v0.5.13)
|
|
@@ -38,9 +38,10 @@ func rb_funnel_http_run_requests(self C.VALUE, rbAry C.VALUE) C.VALUE {
|
|
|
38
38
|
ruby.RbRaise(rb_cFunnelHttpError, "%s", err.Error())
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
|
|
42
|
-
for
|
|
41
|
+
rbHashSlice := make([]ruby.VALUE, len(responses))
|
|
42
|
+
for i, response := range responses {
|
|
43
43
|
rbHash := ruby.RbHashNew()
|
|
44
|
+
ruby.RbGcRegisterAddress(&rbHash)
|
|
44
45
|
|
|
45
46
|
ruby.RbHashAset(rbHash, ruby.RbId2Sym(ruby.RbIntern("status_code")), ruby.INT2NUM(response.StatusCode))
|
|
46
47
|
ruby.RbHashAset(rbHash, ruby.RbId2Sym(ruby.RbIntern("body")), ruby.String2Value(string(response.Body)))
|
|
@@ -48,33 +49,45 @@ func rb_funnel_http_run_requests(self C.VALUE, rbAry C.VALUE) C.VALUE {
|
|
|
48
49
|
|
|
49
50
|
rbHashHeader := ruby.RbHashNew()
|
|
50
51
|
ruby.RbGcRegisterAddress(&rbHashHeader)
|
|
51
|
-
defer ruby.RbGcUnregisterAddress(&rbHashHeader)
|
|
52
52
|
|
|
53
53
|
for key, values := range response.Header {
|
|
54
|
-
|
|
55
|
-
for
|
|
56
|
-
|
|
57
|
-
ruby.RbGcRegisterAddress(&
|
|
58
|
-
defer ruby.RbGcUnregisterAddress(&v)
|
|
59
|
-
|
|
60
|
-
headerValues = append(headerValues, v)
|
|
54
|
+
headerValues := make([]ruby.VALUE, len(values))
|
|
55
|
+
for j, value := range values {
|
|
56
|
+
headerValues[j] = ruby.String2Value(value)
|
|
57
|
+
ruby.RbGcRegisterAddress(&headerValues[j])
|
|
61
58
|
}
|
|
59
|
+
|
|
62
60
|
k := ruby.String2Value(key)
|
|
63
61
|
ruby.RbGcRegisterAddress(&k)
|
|
64
|
-
defer ruby.RbGcUnregisterAddress(&k)
|
|
65
62
|
|
|
66
63
|
v := ruby.Slice2rbAry(headerValues)
|
|
67
64
|
ruby.RbGcRegisterAddress(&v)
|
|
68
|
-
defer ruby.RbGcUnregisterAddress(&v)
|
|
69
65
|
|
|
70
66
|
ruby.RbHashAset(rbHashHeader, k, v)
|
|
67
|
+
|
|
68
|
+
ruby.RbGcUnregisterAddress(&v)
|
|
69
|
+
ruby.RbGcUnregisterAddress(&k)
|
|
70
|
+
|
|
71
|
+
for j := range headerValues {
|
|
72
|
+
ruby.RbGcUnregisterAddress(&headerValues[j])
|
|
73
|
+
}
|
|
71
74
|
}
|
|
75
|
+
|
|
72
76
|
ruby.RbHashAset(rbHash, ruby.RbId2Sym(ruby.RbIntern("header")), rbHashHeader)
|
|
77
|
+
ruby.RbGcUnregisterAddress(&rbHashHeader)
|
|
78
|
+
|
|
79
|
+
rbHashSlice[i] = rbHash
|
|
80
|
+
ruby.RbGcRegisterAddress(&rbHashSlice[i])
|
|
81
|
+
ruby.RbGcUnregisterAddress(&rbHash)
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
rbResponseAry := ruby.Slice2rbAry(rbHashSlice)
|
|
73
85
|
|
|
74
|
-
|
|
86
|
+
for i := range rbHashSlice {
|
|
87
|
+
ruby.RbGcUnregisterAddress(&rbHashSlice[i])
|
|
75
88
|
}
|
|
76
89
|
|
|
77
|
-
return C.VALUE(
|
|
90
|
+
return C.VALUE(rbResponseAry)
|
|
78
91
|
}
|
|
79
92
|
|
|
80
93
|
func getHttpClientFromInstanceVariable(self ruby.VALUE) http.Client {
|
|
@@ -92,8 +105,7 @@ func getHttpClientFromInstanceVariable(self ruby.VALUE) http.Client {
|
|
|
92
105
|
data := ruby.GetGoStruct(obj)
|
|
93
106
|
|
|
94
107
|
// Save FunnelHttp::Ext::GoData to instance variable of FunnelHttp::Ext::Client
|
|
95
|
-
|
|
96
|
-
ruby.RbIvarSet(self, id, *dataValue)
|
|
108
|
+
ruby.RbIvarSet(self, id, obj)
|
|
97
109
|
|
|
98
110
|
return ((*goData)(data)).httpClient
|
|
99
111
|
}
|
data/ext/funnel_http/go.mod
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
module github.com/sue445/funnel_http
|
|
2
2
|
|
|
3
|
-
go 1.
|
|
3
|
+
go 1.26.6
|
|
4
4
|
|
|
5
5
|
require (
|
|
6
6
|
github.com/cockroachdb/errors v1.14.0
|
|
7
7
|
github.com/jarcoal/httpmock v1.4.2
|
|
8
8
|
github.com/ruby-go-gem/go-gem-wrapper v0.11.0
|
|
9
|
-
github.com/stretchr/testify v1.12.
|
|
10
|
-
golang.org/x/sync v0.
|
|
9
|
+
github.com/stretchr/testify v1.12.1
|
|
10
|
+
golang.org/x/sync v0.23.0
|
|
11
11
|
)
|
|
12
12
|
|
|
13
13
|
require (
|
|
@@ -19,7 +19,7 @@ require (
|
|
|
19
19
|
github.com/kr/text v0.2.0 // indirect
|
|
20
20
|
github.com/pkg/errors v0.9.1 // indirect
|
|
21
21
|
github.com/rogpeppe/go-internal v1.9.0 // indirect
|
|
22
|
+
go.yaml.in/yaml/v3 v3.0.5 // indirect
|
|
22
23
|
golang.org/x/sys v0.39.0 // indirect
|
|
23
24
|
golang.org/x/text v0.32.0 // indirect
|
|
24
|
-
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
25
25
|
)
|
data/ext/funnel_http/go.sum
CHANGED
|
@@ -34,12 +34,14 @@ github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZV
|
|
|
34
34
|
github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
|
|
35
35
|
github.com/ruby-go-gem/go-gem-wrapper v0.11.0 h1:n3GXZUm3ZJvjTEB3A3qySeJyMJYHRPeNYo3FyxKZVek=
|
|
36
36
|
github.com/ruby-go-gem/go-gem-wrapper v0.11.0/go.mod h1:kD/v4YP0nCzAKo5RpMvZki8f8xTi1VKqGiuA+DTXHBM=
|
|
37
|
-
github.com/stretchr/testify v1.12.
|
|
38
|
-
github.com/stretchr/testify v1.12.
|
|
37
|
+
github.com/stretchr/testify v1.12.1 h1:EuwCh5fleGS7H32xRwO3wRGT7DxrDhLAT6FF8MpWDWE=
|
|
38
|
+
github.com/stretchr/testify v1.12.1/go.mod h1:MDEgiDPPsNp5cuIrHPPCyornHKgEVbtFUmoNlxoYthg=
|
|
39
39
|
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
|
40
40
|
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
|
41
41
|
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
|
42
42
|
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
|
|
43
|
+
go.yaml.in/yaml/v3 v3.0.5 h1:N6y/pJk8buWs9NY5ERU2HSMfm+IuD/OtfdAnq6kESPw=
|
|
44
|
+
go.yaml.in/yaml/v3 v3.0.5/go.mod h1:HVTZu1O7/Vkt2N+BFy8Zza+lnLsABggaTM2ZpNIGuKg=
|
|
43
45
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
|
44
46
|
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
|
45
47
|
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
|
@@ -52,8 +54,8 @@ golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwY
|
|
|
52
54
|
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
|
53
55
|
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
|
54
56
|
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
|
55
|
-
golang.org/x/sync v0.
|
|
56
|
-
golang.org/x/sync v0.
|
|
57
|
+
golang.org/x/sync v0.23.0 h1:KameEIfc1IkluZyXWLn39Wd4tURc6GbCiISGiZm2bQk=
|
|
58
|
+
golang.org/x/sync v0.23.0/go.mod h1:sUUOizhqBxiL6pEWpqNLUiaJn1ShEbZ6BBqskPbjZm0=
|
|
57
59
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
|
58
60
|
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
59
61
|
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
@@ -71,8 +73,3 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T
|
|
|
71
73
|
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
|
72
74
|
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
|
73
75
|
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
|
74
|
-
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
|
75
|
-
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
|
76
|
-
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
|
77
|
-
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
|
78
|
-
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
data/lib/funnel_http/version.rb
CHANGED
data/rbs_collection.lock.yaml
CHANGED
|
@@ -10,7 +10,7 @@ gems:
|
|
|
10
10
|
source:
|
|
11
11
|
type: git
|
|
12
12
|
name: ruby/gem_rbs_collection
|
|
13
|
-
revision:
|
|
13
|
+
revision: fab0baffe7dc4c7306137372fe9f0e2a53c14e12
|
|
14
14
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
15
15
|
repo_dir: gems
|
|
16
16
|
- name: delegate
|
|
@@ -22,7 +22,7 @@ gems:
|
|
|
22
22
|
source:
|
|
23
23
|
type: git
|
|
24
24
|
name: ruby/gem_rbs_collection
|
|
25
|
-
revision:
|
|
25
|
+
revision: fab0baffe7dc4c7306137372fe9f0e2a53c14e12
|
|
26
26
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
27
27
|
repo_dir: gems
|
|
28
28
|
- name: fileutils
|
|
@@ -38,7 +38,7 @@ gems:
|
|
|
38
38
|
source:
|
|
39
39
|
type: git
|
|
40
40
|
name: ruby/gem_rbs_collection
|
|
41
|
-
revision:
|
|
41
|
+
revision: fab0baffe7dc4c7306137372fe9f0e2a53c14e12
|
|
42
42
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
43
43
|
repo_dir: gems
|
|
44
44
|
- name: monitor
|
|
@@ -62,7 +62,7 @@ gems:
|
|
|
62
62
|
source:
|
|
63
63
|
type: git
|
|
64
64
|
name: ruby/gem_rbs_collection
|
|
65
|
-
revision:
|
|
65
|
+
revision: fab0baffe7dc4c7306137372fe9f0e2a53c14e12
|
|
66
66
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
67
67
|
repo_dir: gems
|
|
68
68
|
- name: rake
|
|
@@ -70,7 +70,7 @@ gems:
|
|
|
70
70
|
source:
|
|
71
71
|
type: git
|
|
72
72
|
name: ruby/gem_rbs_collection
|
|
73
|
-
revision:
|
|
73
|
+
revision: fab0baffe7dc4c7306137372fe9f0e2a53c14e12
|
|
74
74
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
75
75
|
repo_dir: gems
|
|
76
76
|
- name: rdoc
|
|
@@ -82,7 +82,7 @@ gems:
|
|
|
82
82
|
source:
|
|
83
83
|
type: git
|
|
84
84
|
name: ruby/gem_rbs_collection
|
|
85
|
-
revision:
|
|
85
|
+
revision: fab0baffe7dc4c7306137372fe9f0e2a53c14e12
|
|
86
86
|
remote: https://github.com/ruby/gem_rbs_collection.git
|
|
87
87
|
repo_dir: gems
|
|
88
88
|
- name: stringio
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: funnel_http
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.15
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- sue445
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-09-13 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: go_gem
|