Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
Copyright (c) 2020-2025 Brian Conway <bconway@rcesoftware.com>
Copyright (c) 2020-2026 Brian Conway <bconway@rcesoftware.com>

All rights reserved.
16 changes: 8 additions & 8 deletions build/deploy/atlas/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
services:
atlas-api:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-api
restart: on-failure
ports:
Expand All @@ -22,7 +22,7 @@ services:
- API_LORA_DEV_PROF_ID=00000000-0000-0000-0000-000000000000

atlas-mqtt-ingestor:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-mqtt-ingestor
restart: on-failure
depends_on:
Expand All @@ -34,7 +34,7 @@ services:
- MQTT_INGEST_NSQ_PUB_ADDR=nsqd:4150

atlas-lora-ingestor:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-lora-ingestor
restart: on-failure
depends_on:
Expand All @@ -47,7 +47,7 @@ services:
- LORA_INGEST_NSQ_PUB_ADDR=nsqd:4150

atlas-decoder:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-decoder
restart: on-failure
depends_on:
Expand All @@ -60,7 +60,7 @@ services:
- DECODER_NSQ_LOOKUP_ADDRS=nsqlookupd:4161

atlas-validator:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-validator
restart: on-failure
depends_on:
Expand All @@ -74,7 +74,7 @@ services:
- VALIDATOR_NSQ_LOOKUP_ADDRS=nsqlookupd:4161

atlas-accumulator:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-accumulator
restart: on-failure
environment:
Expand All @@ -85,7 +85,7 @@ services:
- ACCUMULATOR_NSQ_LOOKUP_ADDRS=nsqlookupd:4161

atlas-eventer:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-eventer
restart: on-failure
depends_on:
Expand All @@ -98,7 +98,7 @@ services:
- EVENTER_NSQ_LOOKUP_ADDRS=nsqlookupd:4161

atlas-alerter:
image: ghcr.io/thingspect/atlas:996f4330
image: ghcr.io/thingspect/atlas:a614e185
command: atlas-alerter
restart: on-failure
environment:
Expand Down
10 changes: 5 additions & 5 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,15 @@ require (
github.com/thingspect/proto/go v1.1.15
go.uber.org/mock v0.6.0
golang.org/x/crypto v0.48.0
google.golang.org/grpc v1.79.1
google.golang.org/grpc v1.79.2
google.golang.org/protobuf v1.36.11
)

require (
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
github.com/envoyproxy/protoc-gen-validate v1.3.0 // indirect
github.com/envoyproxy/protoc-gen-validate v1.3.3 // indirect
github.com/golang/snappy v1.0.0 // indirect
github.com/gorilla/websocket v1.5.3 // indirect
github.com/jackc/pgpassfile v1.0.0 // indirect
Expand All @@ -38,11 +38,11 @@ require (
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/rogpeppe/go-internal v1.14.1 // indirect
go.uber.org/atomic v1.11.0 // indirect
golang.org/x/net v0.50.0 // indirect
golang.org/x/net v0.51.0 // indirect
golang.org/x/sync v0.19.0 // indirect
golang.org/x/sys v0.41.0 // indirect
golang.org/x/text v0.34.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20260209200024-4cfbd4190f57 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260209200024-4cfbd4190f57 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
20 changes: 10 additions & 10 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/r
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
github.com/eclipse/paho.mqtt.golang v1.5.1 h1:/VSOv3oDLlpqR2Epjn1Q7b2bSTplJIeV2ISgCl2W7nE=
github.com/eclipse/paho.mqtt.golang v1.5.1/go.mod h1:1/yJCneuyOoCOzKSsOTUc0AJfpsItBGWvYpBLimhArU=
github.com/envoyproxy/protoc-gen-validate v1.3.0 h1:TvGH1wof4H33rezVKWSpqKz5NXWg5VPuZ0uONDT6eb4=
github.com/envoyproxy/protoc-gen-validate v1.3.0/go.mod h1:HvYl7zwPa5mffgyeTUHA9zHIH36nmrm7oCbo4YKoSWA=
github.com/envoyproxy/protoc-gen-validate v1.3.3 h1:MVQghNeW+LZcmXe7SY1V36Z+WFMDjpqGAGacLe2T0ds=
github.com/envoyproxy/protoc-gen-validate v1.3.3/go.mod h1:TsndJ/ngyIdQRhMcVVGDDHINPLWB7C82oDArY51KfB0=
github.com/expr-lang/expr v1.17.8 h1:W1loDTT+0PQf5YteHSTpju2qfUfNoBt4yw9+wOEU9VM=
github.com/expr-lang/expr v1.17.8/go.mod h1:8/vRC7+7HBzESEqt5kKpYXxrxkr31SaO8r40VO/1IT4=
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
Expand Down Expand Up @@ -97,8 +97,8 @@ go.uber.org/mock v0.6.0 h1:hyF9dfmbgIX5EfOdasqLsWD6xqpNZlXblLB/Dbnwv3Y=
go.uber.org/mock v0.6.0/go.mod h1:KiVJ4BqZJaMj4svdfmHM0AUx4NJYO8ZNpPnZn1Z+BBU=
golang.org/x/crypto v0.48.0 h1:/VRzVqiRSggnhY7gNRxPauEQ5Drw9haKdM0jqfcCFts=
golang.org/x/crypto v0.48.0/go.mod h1:r0kV5h3qnFPlQnBSrULhlsRfryS2pmewsg+XfMgkVos=
golang.org/x/net v0.50.0 h1:ucWh9eiCGyDR3vtzso0WMQinm2Dnt8cFMuQa9K33J60=
golang.org/x/net v0.50.0/go.mod h1:UgoSli3F/pBgdJBHCTc+tp3gmrU4XswgGRgtnwWTfyM=
golang.org/x/net v0.51.0 h1:94R/GTO7mt3/4wIKpcR5gkGmRLOuE/2hNGeWq/GBIFo=
golang.org/x/net v0.51.0/go.mod h1:aamm+2QF5ogm02fjy5Bb7CQ0WMt1/WVM7FtyaTLlA9Y=
golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4=
golang.org/x/sync v0.19.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k=
Expand All @@ -109,12 +109,12 @@ gonum.org/v1/gonum v0.16.0 h1:5+ul4Swaf3ESvrOnidPp4GZbzf0mxVQpDCYUQE7OJfk=
gonum.org/v1/gonum v0.16.0/go.mod h1:fef3am4MQ93R2HHpKnLk4/Tbh/s0+wqD5nfa6Pnwy4E=
google.golang.org/genproto v0.0.0-20230202175211-008b39050e57 h1:vArvWooPH749rNHpBGgVl+U9B9dATjiEhJzcWGlovNs=
google.golang.org/genproto v0.0.0-20230202175211-008b39050e57/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM=
google.golang.org/genproto/googleapis/api v0.0.0-20260209200024-4cfbd4190f57 h1:JLQynH/LBHfCTSbDWl+py8C+Rg/k1OVH3xfcaiANuF0=
google.golang.org/genproto/googleapis/api v0.0.0-20260209200024-4cfbd4190f57/go.mod h1:kSJwQxqmFXeo79zOmbrALdflXQeAYcUbgS7PbpMknCY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260209200024-4cfbd4190f57 h1:mWPCjDEyshlQYzBpMNHaEof6UX1PmHcaUODUywQ0uac=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260209200024-4cfbd4190f57/go.mod h1:j9x/tPzZkyxcgEFkiKEEGxfvyumM01BEtsW8xzOahRQ=
google.golang.org/grpc v1.79.1 h1:zGhSi45ODB9/p3VAawt9a+O/MULLl9dpizzNNpq7flY=
google.golang.org/grpc v1.79.1/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ=
google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 h1:tu/dtnW1o3wfaxCOjSLn5IRX4YDcJrtlpzYkhHhGaC4=
google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171/go.mod h1:M5krXqk4GhBKvB596udGL3UyjL4I1+cTbK0orROM9ng=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 h1:ggcbiqK8WWh6l1dnltU4BgWGIGo+EVYxCaAPih/zQXQ=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8=
google.golang.org/grpc v1.79.2 h1:fRMD94s2tITpyJGtBBn7MkMseNpOZU8ZxgC3MMBaXRU=
google.golang.org/grpc v1.79.2/go.mod h1:KmT0Kjez+0dde/v2j9vzwoAScgEPx/Bw1CYChhHLrHQ=
google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE=
google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
Expand Down
2 changes: 1 addition & 1 deletion internal/atlas-api/api/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ const (
)

// errPWTLength is returned due to insufficient key length.
// #nosec G101 // false positive for hardcoded credentials
// #nosec G101 // False positive for hardcoded credentials.
const errPWTLength consterr.Error = "pwt key must be 32 bytes"

// API holds references to the gRPC and HTTP servers.
Expand Down
13 changes: 6 additions & 7 deletions internal/atlas-api/auth/constants.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,17 @@ package auth
// acceptable due to lookups only taking place when a password is created or
// updated.
//
// Source (1/12/2021):
// Source (3/6/2026):
// https://github.com/danielmiessler/SecLists/tree/master/Passwords/Common-Credentials
//
// Created by:
// sed '/^.\{0,9\}$/d' 10-million-password-list-top-100000.txt|tr '[:upper:]' \
// sed '/^.\{0,9\}$/d' xato-net-10-million-passwords-100000.txt|tr '[:upper:]' \
// '[:lower:]'|sort -u
//
// #nosec G101 // false positive for hardcoded credentials
// #nosec G101 // False positive for hardcoded credentials.
//
//nolint:misspell // False positive for directly imported list.
const weakPasswords = `
..qlvvcvdeero
0000000000
000000000000
0000000000d
Expand Down Expand Up @@ -113,8 +112,8 @@ const weakPasswords = `
1234567812345678
123456782000
1234567887654321
123456789*
123456789.
123456789*
1234567890
1234567890-
12345678900
Expand Down Expand Up @@ -562,9 +561,9 @@ asdf123456
asdfdsasdf
asdfg12345
asdfgh123456
asdfghjkl;
asdfghjkl1
asdfghjkl123
asdfghjkl;
ashleigh69
asshole123
astalavista
Expand Down Expand Up @@ -1125,10 +1124,10 @@ gunslinger
gunsnroses
gxlmxbewym
gy3yt2rgls
h_froeschl7
h1y4dua229
h2tmc4g358
h72sfibbnl
h_froeschl7
hakunamatata
hallelujah
hammerfall
Expand Down
2 changes: 1 addition & 1 deletion internal/atlas-api/session/web_token.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const (
// WebTokenExp represents the lifetime of a web token in seconds.
WebTokenExp = 10 * 60

//#nosec G101 // false positive for hardcoded credentials
// #nosec G101 // False positive for hardcoded credentials.
errWebTokenExp consterr.Error = "crypto: token expired"
)

Expand Down
2 changes: 1 addition & 1 deletion pkg/dao/user/crudl.go
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ func (d *DAO) Update(ctx context.Context, user *api.User) (*api.User, error) {
return user, nil
}

// #nosec G101 // false positive for hardcoded credentials
// #nosec G101 // False positive for hardcoded credentials.
const updateUserPassword = `
UPDATE users
SET password_hash = $1, updated_at = $2
Expand Down
2 changes: 2 additions & 0 deletions pkg/decode/radiobridge/link_quality.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,11 @@ func linkQuality(body []byte) ([]*decode.Point, error) {

// Parse device RSSI and SNR.
msgs = append(msgs, &decode.Point{
// #nosec G115 // False positive for signed values.
Attr: "device_rssi", Value: int32(int8(body[3])),
})
msgs = append(msgs, &decode.Point{
// #nosec G115 // False positive for signed values.
Attr: "device_snr", Value: int32(int8(body[4])),
})

Expand Down
1 change: 0 additions & 1 deletion pkg/notify/mailgun.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@ func (t *mailgun) sendEmail(

// Send request.
client := &http.Client{}
//nolint:gosec // Built from constants and configuration.
resp, err := client.Do(req)
if err != nil {
return err
Expand Down
2 changes: 0 additions & 2 deletions pkg/notify/twilio.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@ func (t *twilio) lookupCarrier(ctx context.Context, phone string) (

// Send request.
client := &http.Client{}
//nolint:gosec // Built from constants and configuration.
resp, err := client.Do(req)
if err != nil {
return nil, err
Expand Down Expand Up @@ -110,7 +109,6 @@ func (t *twilio) sendSMS(ctx context.Context, to, body string) error {

// Send request.
client := &http.Client{}
//nolint:gosec // Built from constants and configuration.
resp, err := client.Do(req)
if err != nil {
return err
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion vendor/golang.org/x/net/http2/frame.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

25 changes: 13 additions & 12 deletions vendor/google.golang.org/grpc/internal/transport/http2_client.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading