Skip to content

Commit 414c986

Browse files
max retries, update core (#138)
* max retries, update core Signed-off-by: Sarah Funkhouser <147884153+golanglemonade@users.noreply.github.com> * fix koanf Signed-off-by: Sarah Funkhouser <147884153+golanglemonade@users.noreply.github.com> --------- Signed-off-by: Sarah Funkhouser <147884153+golanglemonade@users.noreply.github.com>
1 parent 53a0b7c commit 414c986

File tree

11 files changed

+95
-223
lines changed

11 files changed

+95
-223
lines changed

config/.env.example

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
RIVERBOAT_REFRESHINTERVAL="10m"
22
RIVERBOAT_RIVER_DATABASEHOST="postgres://postgres:password@0.0.0.0:5432/jobs?sslmode=disable"
33
RIVERBOAT_RIVER_QUEUES=""
4+
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_ENABLED="false"
45
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_DEVMODE="true"
56
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_TESTDIR="fixtures/email"
67
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_TOKEN=""
@@ -14,11 +15,19 @@ RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_CLOUDFLAREAPIKEY=""
1415
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPIHOST=""
1516
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPITOKEN=""
1617
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_DATABASEHOST=""
18+
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_VALIDATEINTERVAL=""
19+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_ENABLED=""
20+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_CLOUDFLAREAPIKEY=""
21+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPIHOST=""
22+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPITOKEN=""
23+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_DATABASEHOST=""
24+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_VALIDATEINTERVAL=""
1725
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_ENABLED=""
1826
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_CLOUDFLAREAPIKEY=""
1927
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPIHOST=""
2028
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPITOKEN=""
2129
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_DATABASEHOST=""
30+
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_VALIDATEINTERVAL=""
2231
RIVERBOAT_RIVER_WORKERS_EXPORTCONTENTWORKER_CONFIG_ENABLED=""
2332
RIVERBOAT_RIVER_WORKERS_EXPORTCONTENTWORKER_CONFIG_OPENLANEAPIHOST=""
2433
RIVERBOAT_RIVER_WORKERS_EXPORTCONTENTWORKER_CONFIG_OPENLANEAPITOKEN=""
@@ -27,3 +36,4 @@ RIVERBOAT_RIVER_WORKERS_DELETEEXPORTCONTENTWORKER_CONFIG_INTERVAL=""
2736
RIVERBOAT_RIVER_WORKERS_DELETEEXPORTCONTENTWORKER_CONFIG_OPENLANEAPIHOST=""
2837
RIVERBOAT_RIVER_WORKERS_DELETEEXPORTCONTENTWORKER_CONFIG_OPENLANEAPITOKEN=""
2938
RIVERBOAT_RIVER_WORKERS_DELETEEXPORTCONTENTWORKER_CONFIG_CUTOFFDURATION=""
39+
RIVERBOAT_RIVER_DEFAULTMAXRETRIES="10"

config/config.example.yaml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
refreshInterval: 600000000000
22
river:
33
databaseHost: postgres://postgres:password@0.0.0.0:5432/jobs?sslmode=disable
4+
defaultMaxRetries: 10
45
queues: null
56
workers:
67
createCustomDomainWorker:
@@ -10,6 +11,7 @@ river:
1011
enabled: false
1112
openlaneAPIHost: ""
1213
openlaneAPIToken: ""
14+
validateInterval: 0
1315
databaseWorker:
1416
config:
1517
baseUrl: http://localhost:1337
@@ -23,6 +25,7 @@ river:
2325
enabled: false
2426
openlaneAPIHost: ""
2527
openlaneAPIToken: ""
28+
validateInterval: 0
2629
deleteExportContentWorker:
2730
config:
2831
cutoffDuration: 0
@@ -33,6 +36,7 @@ river:
3336
emailWorker:
3437
config:
3538
devMode: true
39+
enabled: false
3640
fromEmail: no-reply@example.com
3741
testDir: fixtures/email
3842
token: ""
@@ -42,9 +46,10 @@ river:
4246
openlaneAPIHost: ""
4347
openlaneAPIToken: ""
4448
validateCustomDomainWorker:
45-
Config:
49+
config:
4650
cloudflareApiKey: ""
4751
databaseHost: ""
4852
enabled: false
4953
openlaneAPIHost: ""
5054
openlaneAPIToken: ""
55+
validateInterval: 0

config/configmap.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ data:
1313
RIVERBOAT_REFRESHINTERVAL: {{ .Values.riverboat.refreshInterval | default "10m" }}
1414
RIVERBOAT_RIVER_DATABASEHOST: {{ .Values.riverboat.river.databaseHost | default "postgres://postgres:password@0.0.0.0:5432/jobs?sslmode=disable" }}
1515
RIVERBOAT_RIVER_QUEUES: {{ .Values.riverboat.river.queues }}
16+
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_ENABLED: {{ .Values.riverboat.river.workers.emailWorker.config.enabled | default false }}
1617
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_DEVMODE: {{ .Values.riverboat.river.workers.emailWorker.config.devMode | default true }}
1718
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_TESTDIR: {{ .Values.riverboat.river.workers.emailWorker.config.testDir | default "fixtures/email" }}
1819
RIVERBOAT_RIVER_WORKERS_EMAILWORKER_CONFIG_TOKEN: {{ .Values.riverboat.river.workers.emailWorker.config.token }}
@@ -26,11 +27,19 @@ data:
2627
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPIHOST: {{ .Values.riverboat.river.workers.createCustomDomainWorker.config.openlaneAPIHost }}
2728
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPITOKEN: {{ .Values.riverboat.river.workers.createCustomDomainWorker.config.openlaneAPIToken }}
2829
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_DATABASEHOST: {{ .Values.riverboat.river.workers.createCustomDomainWorker.config.databaseHost }}
30+
RIVERBOAT_RIVER_WORKERS_CREATECUSTOMDOMAINWORKER_CONFIG_VALIDATEINTERVAL: {{ .Values.riverboat.river.workers.createCustomDomainWorker.config.validateInterval }}
31+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_ENABLED: {{ .Values.riverboat.river.workers.validateCustomDomainWorker.config.enabled }}
32+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_CLOUDFLAREAPIKEY: {{ .Values.riverboat.river.workers.validateCustomDomainWorker.config.cloudflareApiKey }}
33+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPIHOST: {{ .Values.riverboat.river.workers.validateCustomDomainWorker.config.openlaneAPIHost }}
34+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPITOKEN: {{ .Values.riverboat.river.workers.validateCustomDomainWorker.config.openlaneAPIToken }}
35+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_DATABASEHOST: {{ .Values.riverboat.river.workers.validateCustomDomainWorker.config.databaseHost }}
36+
RIVERBOAT_RIVER_WORKERS_VALIDATECUSTOMDOMAINWORKER_CONFIG_VALIDATEINTERVAL: {{ .Values.riverboat.river.workers.validateCustomDomainWorker.config.validateInterval }}
2937
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_ENABLED: {{ .Values.riverboat.river.workers.deleteCustomDomainWorker.config.enabled }}
3038
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_CLOUDFLAREAPIKEY: {{ .Values.riverboat.river.workers.deleteCustomDomainWorker.config.cloudflareApiKey }}
3139
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPIHOST: {{ .Values.riverboat.river.workers.deleteCustomDomainWorker.config.openlaneAPIHost }}
3240
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_OPENLANEAPITOKEN: {{ .Values.riverboat.river.workers.deleteCustomDomainWorker.config.openlaneAPIToken }}
3341
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_DATABASEHOST: {{ .Values.riverboat.river.workers.deleteCustomDomainWorker.config.databaseHost }}
42+
RIVERBOAT_RIVER_WORKERS_DELETECUSTOMDOMAINWORKER_CONFIG_VALIDATEINTERVAL: {{ .Values.riverboat.river.workers.deleteCustomDomainWorker.config.validateInterval }}
3443
RIVERBOAT_RIVER_WORKERS_EXPORTCONTENTWORKER_CONFIG_ENABLED: {{ .Values.riverboat.river.workers.exportContentWorker.config.enabled }}
3544
RIVERBOAT_RIVER_WORKERS_EXPORTCONTENTWORKER_CONFIG_OPENLANEAPIHOST: {{ .Values.riverboat.river.workers.exportContentWorker.config.openlaneAPIHost }}
3645
RIVERBOAT_RIVER_WORKERS_EXPORTCONTENTWORKER_CONFIG_OPENLANEAPITOKEN: {{ .Values.riverboat.river.workers.exportContentWorker.config.openlaneAPIToken }}
@@ -39,3 +48,4 @@ data:
3948
RIVERBOAT_RIVER_WORKERS_DELETEEXPORTCONTENTWORKER_CONFIG_OPENLANEAPIHOST: {{ .Values.riverboat.river.workers.deleteExportContentWorker.config.openlaneAPIHost }}
4049
RIVERBOAT_RIVER_WORKERS_DELETEEXPORTCONTENTWORKER_CONFIG_OPENLANEAPITOKEN: {{ .Values.riverboat.river.workers.deleteExportContentWorker.config.openlaneAPIToken }}
4150
RIVERBOAT_RIVER_WORKERS_DELETEEXPORTCONTENTWORKER_CONFIG_CUTOFFDURATION: {{ .Values.riverboat.river.workers.deleteExportContentWorker.config.cutoffDuration }}
51+
RIVERBOAT_RIVER_DEFAULTMAXRETRIES: {{ .Values.riverboat.river.defaultMaxRetries | default 10 }}

configgen/api-docs.md

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
"config": {}
2828
},
2929
"validateCustomDomainWorker": {
30-
"Config": {}
30+
"config": {}
3131
},
3232
"deleteCustomDomainWorker": {
3333
"config": {}
@@ -56,6 +56,7 @@ Config is the configuration for the river server
5656
|**databaseHost**|`string`|DatabaseHost for connecting to the postgres database<br/>||
5757
|[**queues**](#riverqueues)|`array`|||
5858
|[**workers**](#riverworkers)|`object`|Workers that will be enabled on the server<br/>||
59+
|**defaultMaxRetries**|`integer`|DefaultMaxRetries is the maximum number of retries for failed jobs, this can be set differently per job<br/>||
5960

6061
**Additional Properties:** not allowed
6162
**Example**
@@ -76,7 +77,7 @@ Config is the configuration for the river server
7677
"config": {}
7778
},
7879
"validateCustomDomainWorker": {
79-
"Config": {}
80+
"config": {}
8081
},
8182
"deleteCustomDomainWorker": {
8283
"config": {}
@@ -137,7 +138,7 @@ Workers that will be enabled on the server
137138
"config": {}
138139
},
139140
"validateCustomDomainWorker": {
140-
"Config": {}
141+
"config": {}
141142
},
142143
"deleteCustomDomainWorker": {
143144
"config": {}
@@ -182,6 +183,7 @@ EmailConfig contains the configuration for the email worker
182183

183184
|Name|Type|Description|Required|
184185
|----|----|-----------|--------|
186+
|**enabled**|`boolean`|enable or disable the email worker<br/>||
185187
|**devMode**|`boolean`|enable dev mode<br/>||
186188
|**testDir**|`string`|the directory to use for dev mode<br/>||
187189
|**token**|`string`|the token to use for the email provider<br/>||
@@ -252,6 +254,7 @@ DatabaseWorker is a worker to create a dedicated database for an organization
252254
|**openlaneAPIHost**|`string`|||
253255
|**openlaneAPIToken**|`string`|||
254256
|**databaseHost**|`string`|||
257+
|**validateInterval**|`integer`|||
255258

256259
**Additional Properties:** not allowed
257260
<a name="riverworkersvalidatecustomdomainworker"></a>
@@ -261,19 +264,19 @@ DatabaseWorker is a worker to create a dedicated database for an organization
261264

262265
|Name|Type|Description|Required|
263266
|----|----|-----------|--------|
264-
|[**Config**](#riverworkersvalidatecustomdomainworkerconfig)|`object`|||
267+
|[**config**](#riverworkersvalidatecustomdomainworkerconfig)|`object`|||
265268

266269
**Additional Properties:** not allowed
267270
**Example**
268271

269272
```json
270273
{
271-
"Config": {}
274+
"config": {}
272275
}
273276
```
274277

275278
<a name="riverworkersvalidatecustomdomainworkerconfig"></a>
276-
##### river\.workers\.validateCustomDomainWorker\.Config: object
279+
##### river\.workers\.validateCustomDomainWorker\.config: object
277280

278281
**Properties**
279282

@@ -284,6 +287,7 @@ DatabaseWorker is a worker to create a dedicated database for an organization
284287
|**openlaneAPIHost**|`string`|||
285288
|**openlaneAPIToken**|`string`|||
286289
|**databaseHost**|`string`|||
290+
|**validateInterval**|`integer`|||
287291

288292
**Additional Properties:** not allowed
289293
<a name="riverworkersdeletecustomdomainworker"></a>
@@ -316,6 +320,7 @@ DatabaseWorker is a worker to create a dedicated database for an organization
316320
|**openlaneAPIHost**|`string`|||
317321
|**openlaneAPIToken**|`string`|||
318322
|**databaseHost**|`string`|||
323+
|**validateInterval**|`integer`|||
319324

320325
**Additional Properties:** not allowed
321326
<a name="riverworkersexportcontentworker"></a>

configgen/riverboat.config.json

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@
3434
},
3535
"databaseHost": {
3636
"type": "string"
37+
},
38+
"validateInterval": {
39+
"type": "integer"
3740
}
3841
},
3942
"additionalProperties": false,
@@ -111,8 +114,9 @@
111114
},
112115
"corejobs.ValidateCustomDomainWorker": {
113116
"properties": {
114-
"Config": {
115-
"$ref": "#/$defs/corejobs.CustomDomainConfig"
117+
"config": {
118+
"$ref": "#/$defs/corejobs.CustomDomainConfig",
119+
"description": "the configuration for custom domain validation"
116120
}
117121
},
118122
"additionalProperties": false,
@@ -153,6 +157,10 @@
153157
},
154158
"jobs.EmailConfig": {
155159
"properties": {
160+
"enabled": {
161+
"type": "boolean",
162+
"description": "enable or disable the email worker"
163+
},
156164
"devMode": {
157165
"type": "boolean",
158166
"description": "enable dev mode"
@@ -198,6 +206,10 @@
198206
"workers": {
199207
"$ref": "#/$defs/river.Workers",
200208
"description": "Workers to be enabled on the server"
209+
},
210+
"defaultMaxRetries": {
211+
"type": "integer",
212+
"description": "DefaultMaxRetries is the maximum number of retries for failed jobs, this can be set differently per job"
201213
}
202214
},
203215
"additionalProperties": false,

go.mod

Lines changed: 9 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,20 @@ require (
1212
github.com/knadh/koanf/providers/posflag v1.0.1
1313
github.com/knadh/koanf/v2 v2.2.2
1414
github.com/mcuadros/go-defaults v1.2.0
15-
github.com/riverqueue/river v0.23.1
16-
github.com/riverqueue/river/riverdriver/riverpgxv5 v0.23.1
17-
github.com/riverqueue/river/rivertype v0.23.1
15+
github.com/riverqueue/river v0.24.0
16+
github.com/riverqueue/river/riverdriver/riverpgxv5 v0.24.0
17+
github.com/riverqueue/river/rivertype v0.24.0
1818
github.com/rs/zerolog v1.34.0
1919
github.com/spf13/cobra v1.9.1
20-
github.com/stretchr/testify v1.10.0
21-
github.com/theopenlane/core v0.28.1
20+
github.com/stretchr/testify v1.11.0
21+
github.com/theopenlane/core v0.29.4
2222
github.com/theopenlane/dbx v0.1.3
2323
github.com/theopenlane/newman v0.2.0
2424
github.com/theopenlane/utils v0.4.8
2525
)
2626

2727
require (
2828
ariga.io/atlas v0.35.0 // indirect
29-
atomicgo.dev/cursor v0.2.0 // indirect
30-
atomicgo.dev/keyboard v0.2.9 // indirect
31-
atomicgo.dev/schedule v0.1.0 // indirect
3229
entgo.io/contrib v0.7.0 // indirect
3330
entgo.io/ent v0.14.5 // indirect
3431
github.com/99designs/gqlgen v0.17.78 // indirect
@@ -37,21 +34,17 @@ require (
3734
github.com/agext/levenshtein v1.2.3 // indirect
3835
github.com/agnivade/levenshtein v1.2.1 // indirect
3936
github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect
40-
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
4137
github.com/aymerick/douceur v0.2.0 // indirect
4238
github.com/bahlo/generic-list-go v0.2.0 // indirect
4339
github.com/bmatcuk/doublestar v1.3.4 // indirect
4440
github.com/buger/jsonparser v1.1.1 // indirect
4541
github.com/cespare/xxhash/v2 v2.3.0 // indirect
46-
github.com/cloudflare/cloudflare-go/v4 v4.6.0 // indirect
47-
github.com/containerd/console v1.0.5 // indirect
42+
github.com/cloudflare/cloudflare-go/v5 v5.1.0 // indirect
4843
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
4944
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect
5045
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
51-
github.com/fatih/color v1.18.0 // indirect
5246
github.com/fsnotify/fsnotify v1.9.0 // indirect
5347
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
54-
github.com/gaissmai/bart v0.20.6 // indirect
5548
github.com/gertd/go-pluralize v0.2.1 // indirect
5649
github.com/go-logr/logr v1.4.3 // indirect
5750
github.com/go-logr/stdr v1.2.2 // indirect
@@ -66,7 +59,6 @@ require (
6659
github.com/google/go-querystring v1.1.0 // indirect
6760
github.com/google/go-tpm v0.9.5 // indirect
6861
github.com/google/uuid v1.6.0 // indirect
69-
github.com/gookit/color v1.5.4 // indirect
7062
github.com/gorilla/css v1.0.1 // indirect
7163
github.com/gorilla/securecookie v1.1.2 // indirect
7264
github.com/hashicorp/hcl/v2 v2.24.0 // indirect
@@ -81,45 +73,30 @@ require (
8173
github.com/lestrrat-go/jwx/v3 v3.0.10 // indirect
8274
github.com/lestrrat-go/option v1.0.1 // indirect
8375
github.com/lestrrat-go/option/v2 v2.0.0 // indirect
84-
github.com/lithammer/fuzzysearch v1.1.8 // indirect
8576
github.com/mailru/easyjson v0.9.0 // indirect
8677
github.com/mattn/go-colorable v0.1.14 // indirect
8778
github.com/mattn/go-isatty v0.0.20 // indirect
88-
github.com/mattn/go-runewidth v0.0.16 // indirect
8979
github.com/microcosm-cc/bluemonday v1.0.27 // indirect
90-
github.com/miekg/dns v1.1.68 // indirect
9180
github.com/mitchellh/copystructure v1.2.0 // indirect
9281
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
9382
github.com/mitchellh/mapstructure v1.5.0 // indirect
9483
github.com/mitchellh/reflectwalk v1.0.2 // indirect
9584
github.com/oklog/ulid/v2 v2.1.1 // indirect
96-
github.com/olekukonko/errors v1.1.0 // indirect
97-
github.com/olekukonko/ll v0.0.9 // indirect
98-
github.com/olekukonko/tablewriter v1.0.9 // indirect
9985
github.com/pkg/errors v0.9.1 // indirect
10086
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
101-
github.com/projectdiscovery/blackrock v0.0.1 // indirect
102-
github.com/projectdiscovery/cdncheck v1.1.32 // indirect
103-
github.com/projectdiscovery/dnsx v1.2.2 // indirect
104-
github.com/projectdiscovery/retryabledns v1.0.105 // indirect
105-
github.com/projectdiscovery/utils v0.4.23 // indirect
106-
github.com/projectdiscovery/wappalyzergo v0.2.42 // indirect
107-
github.com/pterm/pterm v0.12.81 // indirect
10887
github.com/redis/go-redis/v9 v9.12.1 // indirect
10988
github.com/resend/resend-go/v2 v2.21.0 // indirect
110-
github.com/riverqueue/river/riverdriver v0.23.1 // indirect
111-
github.com/riverqueue/river/rivershared v0.23.1 // indirect
112-
github.com/rivo/uniseg v0.4.7 // indirect
89+
github.com/riverqueue/river/riverdriver v0.24.0 // indirect
90+
github.com/riverqueue/river/rivershared v0.24.0 // indirect
11391
github.com/robfig/cron/v3 v3.0.1 // indirect
114-
github.com/saintfish/chardet v0.0.0-20230101081208-5e3ef4b5456d // indirect
11592
github.com/samber/lo v1.51.0 // indirect
11693
github.com/segmentio/asm v1.2.0 // indirect
11794
github.com/sosodev/duration v1.3.1 // indirect
11895
github.com/spf13/pflag v1.0.7 // indirect
11996
github.com/stoewer/go-strcase v1.3.1 // indirect
12097
github.com/stretchr/objx v0.5.2 // indirect
12198
github.com/theopenlane/echox v0.2.4 // indirect
122-
github.com/theopenlane/entx v0.12.1 // indirect
99+
github.com/theopenlane/entx v0.13.2 // indirect
123100
github.com/theopenlane/httpsling v0.2.2 // indirect
124101
github.com/theopenlane/iam v0.15.4 // indirect
125102
github.com/tidwall/gjson v1.18.0 // indirect
@@ -131,18 +108,15 @@ require (
131108
github.com/vektah/gqlparser/v2 v2.5.30 // indirect
132109
github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect
133110
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
134-
github.com/weppos/publicsuffix-go v0.40.3-0.20250710122833-cbec4cbedf45 // indirect
135111
github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
136112
github.com/x448/float16 v0.8.4 // indirect
137-
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
138113
github.com/zclconf/go-cty v1.16.3 // indirect
139114
github.com/zclconf/go-cty-yaml v1.1.0 // indirect
140115
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
141116
go.opentelemetry.io/otel v1.37.0 // indirect
142117
go.opentelemetry.io/otel/metric v1.37.0 // indirect
143118
go.opentelemetry.io/otel/trace v1.37.0 // indirect
144119
go.uber.org/goleak v1.3.0 // indirect
145-
go.uber.org/multierr v1.11.0 // indirect
146120
go.yaml.in/yaml/v3 v3.0.4 // indirect
147121
golang.org/x/crypto v0.41.0 // indirect
148122
golang.org/x/exp v0.0.0-20250718183923-645b1fa84792 // indirect
@@ -151,10 +125,8 @@ require (
151125
golang.org/x/oauth2 v0.30.0 // indirect
152126
golang.org/x/sync v0.16.0 // indirect
153127
golang.org/x/sys v0.35.0 // indirect
154-
golang.org/x/term v0.34.0 // indirect
155128
golang.org/x/text v0.28.0 // indirect
156129
golang.org/x/time v0.12.0 // indirect
157130
golang.org/x/tools v0.36.0 // indirect
158131
gopkg.in/yaml.v3 v3.0.1 // indirect
159-
modernc.org/sqlite v1.38.0 // indirect
160132
)

0 commit comments

Comments
 (0)