Skip to content

Commit 974e38b

Browse files
feat: default enable SSE connections (#31)
* chore: default enable SSE connections * fix: update tests, update go versions * update lint to latest * fix linting --------- Co-authored-by: Jamie Sinn <[email protected]>
1 parent 46c21cf commit 974e38b

File tree

9 files changed

+30
-15
lines changed

9 files changed

+30
-15
lines changed

.github/workflows/goreleaser.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
- uses: goreleaser/goreleaser-action@v4
3030
with:
3131
distribution: goreleaser
32-
version: '1.20'
32+
version: 'stable'
3333
args: release --clean
3434
env:
3535
GITHUB_TOKEN: ${{ secrets.AUTOMATION_USER_TOKEN }}

.github/workflows/lint.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ jobs:
1616
steps:
1717
- uses: actions/setup-go@v5
1818
with:
19-
go-version: '1.20'
19+
go-version: 'stable'
2020
cache: false
2121
- uses: actions/checkout@v3
2222
- name: golangci-lint
2323
uses: golangci/golangci-lint-action@v3
2424
with:
25-
version: v1.52.2
25+
version: latest
2626
args: --sort-results --disable unused
2727

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ jobs:
6666

6767
- uses: actions/setup-go@v5
6868
with:
69-
go-version: "1.20"
69+
go-version: "stable"
7070

7171
- name: Update and commit version.go file
7272
run: |

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
- name: Set up Go
1414
uses: actions/setup-go@v5
1515
with:
16-
go-version: '1.20'
16+
go-version: 'stable'
1717

1818
- name: Test
1919
run: go test -v -race ./...

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM golang:1.20-alpine
1+
FROM golang:1.21-alpine
22
LABEL org.opencontainers.image.source=https://github.com/devcyclehq/sdk-proxy
33
LABEL org.opencontainers.image.description="DevCycle SDK Proxy"
44
LABEL org.opencontainers.image.licenses=MIT

go.mod

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
module github.com/devcyclehq/sdk-proxy
22

3-
go 1.20
3+
go 1.21
44

55
require (
6-
github.com/devcyclehq/go-server-sdk/v2 v2.18.1
6+
github.com/devcyclehq/go-server-sdk/v2 v2.19.0
77
github.com/gin-gonic/gin v1.10.0
88
github.com/kelseyhightower/envconfig v1.4.0
99
github.com/kr/pretty v0.3.1
@@ -17,12 +17,12 @@ require (
1717
github.com/cloudwego/base64x v0.1.4 // indirect
1818
github.com/cloudwego/iasm v0.2.0 // indirect
1919
github.com/davecgh/go-spew v1.1.1 // indirect
20-
github.com/gabriel-vasile/mimetype v1.4.3 // indirect
20+
github.com/gabriel-vasile/mimetype v1.4.8 // indirect
2121
github.com/gin-contrib/sse v0.1.0 // indirect
2222
github.com/go-logr/logr v1.2.4 // indirect
2323
github.com/go-playground/locales v0.14.1 // indirect
2424
github.com/go-playground/universal-translator v0.18.1 // indirect
25-
github.com/go-playground/validator/v10 v10.20.0 // indirect
25+
github.com/go-playground/validator/v10 v10.24.0 // indirect
2626
github.com/goccy/go-json v0.10.2 // indirect
2727
github.com/google/uuid v1.3.0 // indirect
2828
github.com/json-iterator/go v1.1.12 // indirect
@@ -41,10 +41,10 @@ require (
4141
github.com/twmb/murmur3 v1.1.7 // indirect
4242
github.com/ugorji/go/codec v1.2.12 // indirect
4343
golang.org/x/arch v0.8.0 // indirect
44-
golang.org/x/crypto v0.31.0 // indirect
44+
golang.org/x/crypto v0.32.0 // indirect
4545
golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb // indirect
46-
golang.org/x/net v0.33.0 // indirect
47-
golang.org/x/sys v0.28.0 // indirect
46+
golang.org/x/net v0.34.0 // indirect
47+
golang.org/x/sys v0.29.0 // indirect
4848
golang.org/x/text v0.21.0 // indirect
4949
google.golang.org/protobuf v1.34.1 // indirect
5050
gopkg.in/yaml.v3 v3.0.1 // indirect

go.sum

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,12 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
1313
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
1414
github.com/devcyclehq/go-server-sdk/v2 v2.18.1 h1:4Rwxr0Sx4S56zGgSqm0C06Xj88038iYVbWZinpPx8C4=
1515
github.com/devcyclehq/go-server-sdk/v2 v2.18.1/go.mod h1:DzKrJ4s2apfphFwB/Aq8YDf7brB+NDr6IxX0TNi2c24=
16+
github.com/devcyclehq/go-server-sdk/v2 v2.19.0 h1:pNMv6fN6Y3UEKKFcPPA0HfRy8jlsQuk2rN+jO/n65ZM=
17+
github.com/devcyclehq/go-server-sdk/v2 v2.19.0/go.mod h1:Wo2nWl40oNwgzAM5q5bBdTssof9TAlmUauj0nxVHOjg=
1618
github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0=
1719
github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk=
20+
github.com/gabriel-vasile/mimetype v1.4.8 h1:FfZ3gj38NjllZIeJAmMhr+qKL8Wu+nOoI3GqacKw1NM=
21+
github.com/gabriel-vasile/mimetype v1.4.8/go.mod h1:ByKUIKGjh1ODkGM1asKUbQZOLGrPjydw3hYPU2YU9t8=
1822
github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE=
1923
github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI=
2024
github.com/gin-gonic/gin v1.10.0 h1:nTuyha1TYqgedzytsKYqna+DfLos46nTv2ygFy86HFU=
@@ -28,6 +32,8 @@ github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJn
2832
github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY=
2933
github.com/go-playground/validator/v10 v10.20.0 h1:K9ISHbSaI0lyB2eWMPJo+kOS/FBExVwjEviJTixqxL8=
3034
github.com/go-playground/validator/v10 v10.20.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM=
35+
github.com/go-playground/validator/v10 v10.24.0 h1:KHQckvo8G6hlWnrPX4NJJ+aBfWNAE/HH+qdL2cBpCmg=
36+
github.com/go-playground/validator/v10 v10.24.0/go.mod h1:GGzBIJMuE98Ic/kJsBXbz1x/7cByt++cQ+YOuDM5wus=
3137
github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU=
3238
github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
3339
github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc=
@@ -97,14 +103,20 @@ golang.org/x/arch v0.8.0 h1:3wRIsP3pM4yUptoR96otTUOXI367OS0+c9eeRi9doIc=
97103
golang.org/x/arch v0.8.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys=
98104
golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U=
99105
golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk=
106+
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
107+
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
100108
golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb h1:mIKbk8weKhSeLH2GmUTrvx8CjkyJmnU1wFmg59CUjFA=
101109
golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
102110
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
103111
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
112+
golang.org/x/net v0.34.0 h1:Mb7Mrk043xzHgnRM88suvJFwzVrRfHEHJEl5/71CKw0=
113+
golang.org/x/net v0.34.0/go.mod h1:di0qlW3YNM5oh6GqDGQr92MyTozJPmybPK4Ev/Gm31k=
104114
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
105115
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
106116
golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA=
107117
golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
118+
golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=
119+
golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
108120
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
109121
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
110122
google.golang.org/protobuf v1.34.1 h1:9ddQBjfCyZPOHPUiPxpYESBLc+T8P3E+Vo4IbKZgFWg=

options.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ type ProxyInstance struct {
3131
UnixSocketEnabled bool `json:"unixSocketEnabled" envconfig:"UNIX_SOCKET_ENABLED" default:"false" desc:"Whether to enable the Unix socket. Defaults to false."`
3232
HTTPPort int `json:"httpPort" envconfig:"HTTP_PORT" default:"8080" desc:"The port to listen on for HTTP requests. Defaults to 8080."`
3333
HTTPEnabled bool `json:"httpEnabled" envconfig:"HTTP_ENABLED" default:"true" desc:"Whether to enable the HTTP server. Defaults to true."`
34-
SSEEnabled bool `json:"sseEnabled" envconfig:"SSE_ENABLED" default:"false" desc:"Whether to enable the SSE server. Requires setting sseHostname param too. Defaults to false."`
34+
SSEEnabled bool `json:"sseEnabled" envconfig:"SSE_ENABLED" default:"true" desc:"Whether to enable the SSE server. Requires setting sseHostname param too. Defaults to true."`
3535
SSEHostname string `json:"sseHostname" envconfig:"SSE_HOSTNAME" desc:"The hostname to provide to clients to connect to for SSE requests. This must be reachable from the clients and can be either a DNS hostname or a raw IP address."`
3636
SDKKey string `json:"sdkKey" required:"true" envconfig:"SDK_KEY" desc:"The Server SDK key to use for this instance."`
3737
LogFile string `json:"logFile" default:"" envconfig:"LOG_FILE" desc:"The path to the log file."`
@@ -74,7 +74,7 @@ func (i *ProxyInstance) BuildDevCycleOptions() *devcycle.Options {
7474
FlushEventQueueSize: i.SDKConfig.FlushEventQueueSize,
7575
ConfigCDNURI: i.SDKConfig.ConfigCDNURI,
7676
EventsAPIURI: i.SDKConfig.EventsAPIURI,
77-
EnableBetaRealtimeUpdates: i.SSEEnabled,
77+
DisableRealtimeUpdates: !i.SSEEnabled,
7878
AdvancedOptions: devcycle.AdvancedOptions{
7979
OverridePlatformData: &i.PlatformData,
8080
OverrideConfigWithV1: false,

options_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ func TestParseConfig(t *testing.T) {
4040
HTTPPort: 8080,
4141
UnixSocketEnabled: false,
4242
HTTPEnabled: true,
43+
SSEEnabled: true,
4344
SDKKey: "dvc-test-key",
4445
LogFile: "",
4546
PlatformData: api.PlatformData{},
@@ -81,6 +82,7 @@ func TestParseConfig(t *testing.T) {
8182
UnixSocketEnabled: true,
8283
UnixSocketPermissions: "0755",
8384
HTTPEnabled: false,
85+
SSEEnabled: true,
8486
SDKKey: "dvc-test-key",
8587
LogFile: "",
8688
PlatformData: api.PlatformData{
@@ -123,6 +125,7 @@ func TestParseConfig(t *testing.T) {
123125
HTTPPort: 0,
124126
UnixSocketEnabled: false,
125127
HTTPEnabled: false,
128+
SSEEnabled: false,
126129
SDKKey: "dvc-sample-key",
127130
LogFile: "",
128131
PlatformData: api.PlatformData{},

0 commit comments

Comments
 (0)