Compare commits

...

91 Commits

Author SHA1 Message Date
Joel Wetzell 34527d7fc2 Merge pull request #233 from jwetzell/processor-id
add id getter for processors
2026-08-28 15:08:31 -05:00
Joel Wetzell adf649fac8 test for test processor 2026-08-28 15:06:40 -05:00
Joel Wetzell 54ada59f6e add id getter for processors 2026-08-28 14:55:19 -05:00
Joel Wetzell f9287cc87e add test for route id 2026-08-28 14:22:48 -05:00
Joel Wetzell 5574b73c78 switch coverage badge to codecov 2026-08-28 14:13:58 -05:00
Joel Wetzell 2491353860 Merge pull request #232 from jwetzell/renovate/github.com-nats-io-nats-server-v2-2.x
Update module github.com/nats-io/nats-server/v2 to v2.14.6
2026-08-28 14:07:32 -05:00
Joel Wetzell 252662db9f go back to filtering tests 2026-08-28 14:07:09 -05:00
Joel Wetzell 6f71797ac8 enable go mod tidy for renovate 2026-08-28 13:57:41 -05:00
Joel Wetzell 11df8f8a4b don't filter out tests 2026-08-28 13:57:35 -05:00
Joel Wetzell f0f074950e Merge pull request #231 from jwetzell/renovate/github.com-emiago-sipgo-1.x
Update module github.com/emiago/sipgo to v1.6.0
2026-08-28 13:52:19 -05:00
renovate[bot] 79ab05adb4 Update module github.com/nats-io/nats-server/v2 to v2.14.6 2026-08-28 18:52:06 +00:00
Joel Wetzell 70e1251391 switch to uploading coverage to codecov 2026-08-28 13:50:32 -05:00
Joel Wetzell 0b3d04d6db go mod tidy 2026-08-28 13:47:58 -05:00
renovate[bot] 35ca05404e Update module github.com/emiago/sipgo to v1.6.0 2026-08-27 11:49:08 +00:00
Joel Wetzell c40a4bbc02 Merge pull request #230 from jwetzell/renovate/modernc.org-quickjs-0.x
Update module modernc.org/quickjs to v0.24.2
2026-08-26 09:14:15 -05:00
renovate[bot] 3ac470f66f Update module modernc.org/quickjs to v0.24.2 2026-08-25 17:34:17 +00:00
Joel Wetzell 5ab77f16c7 Merge pull request #227 from jwetzell/renovate/docker-setup-buildx-action-4.x
Update docker/setup-buildx-action action to v4.3.0
2026-08-19 10:21:57 -05:00
Joel Wetzell 48e5abf1ac Merge pull request #228 from jwetzell/renovate/modernc.org-sqlite-1.x
Update module modernc.org/sqlite to v1.57.0
2026-08-19 10:19:34 -05:00
Joel Wetzell cade810137 Merge pull request #229 from jwetzell/feat/route-processor-ids
add id field to route and processor
2026-08-19 10:01:03 -05:00
Joel Wetzell 848e644a9f add id field to route and processor 2026-08-19 09:30:20 -05:00
renovate[bot] 2c29e743a4 Update module modernc.org/sqlite to v1.57.0 2026-08-19 13:09:45 +00:00
renovate[bot] 627bd12a5f Update docker/setup-buildx-action action to v4.3.0 2026-08-19 13:09:16 +00:00
Joel Wetzell a3926d980b Merge pull request #226 from jwetzell/renovate/github.com-emiago-sipgo-1.x
Update module github.com/emiago/sipgo to v1.5.0
2026-08-19 08:08:30 -05:00
renovate[bot] 88d4f2665f Update module github.com/emiago/sipgo to v1.5.0 2026-08-19 02:49:59 +00:00
Joel Wetzell 0713d665bb Merge pull request #225 from jwetzell/renovate/modernc.org-quickjs-0.x
Update module modernc.org/quickjs to v0.24.0
2026-08-17 13:57:48 -05:00
Joel Wetzell 9991e44549 Merge pull request #224 from jwetzell/renovate/github.com-urfave-cli-v3-3.x
Update module github.com/urfave/cli/v3 to v3.11.0
2026-08-17 13:57:36 -05:00
Joel Wetzell d895c117dd Merge pull request #223 from jwetzell/renovate/github.com-emiago-diago-0.x
Update module github.com/emiago/diago to v0.32.0
2026-08-17 13:57:24 -05:00
renovate[bot] 5b4b91769a Update module modernc.org/quickjs to v0.24.0 2026-08-17 18:54:39 +00:00
renovate[bot] c1925a1056 Update module github.com/urfave/cli/v3 to v3.11.0 2026-08-17 18:54:32 +00:00
renovate[bot] 2fa95b35c7 Update module github.com/emiago/diago to v0.32.0 2026-08-17 18:54:26 +00:00
Joel Wetzell 58a4217469 Merge pull request #222 from jwetzell/renovate/github.com-nats-io-nats.go-1.x
Update module github.com/nats-io/nats.go to v1.53.1
2026-08-17 13:53:30 -05:00
renovate[bot] c6bc30791c Update module github.com/nats-io/nats.go to v1.53.1 2026-08-17 18:45:05 +00:00
Joel Wetzell 117e5cedab Merge pull request #220 from jwetzell/renovate/github.com-nats-io-nats-server-v2-2.x
Update module github.com/nats-io/nats-server/v2 to v2.14.5
2026-08-17 13:43:13 -05:00
Joel Wetzell e727509522 Merge pull request #219 from jwetzell/renovate/actions-checkout-7.x
Update actions/checkout action to v7.0.1
2026-08-17 13:41:49 -05:00
renovate[bot] 663b595f40 Update module github.com/nats-io/nats-server/v2 to v2.14.5 2026-08-17 18:40:50 +00:00
Joel Wetzell 762bf816d7 remove dependabot config 2026-08-17 13:40:25 -05:00
renovate[bot] d200966212 Update actions/checkout action to v7.0.1 2026-08-17 18:40:20 +00:00
Joel Wetzell 7e721dc263 Merge pull request #218 from jwetzell/renovate/configure
Add renovate.json
2026-08-17 13:39:42 -05:00
renovate[bot] e6a42c81d6 Add renovate.json 2026-08-17 18:20:30 +00:00
Joel Wetzell c07ce2de73 Merge pull request #214 from jwetzell/dependabot/go_modules/modernc.org/quickjs-0.23.0
Bump modernc.org/quickjs from 0.22.0 to 0.23.0
2026-08-11 20:07:38 -05:00
dependabot[bot] 2a2fd04b78 Bump modernc.org/quickjs from 0.22.0 to 0.23.0
Bumps [modernc.org/quickjs](https://gitlab.com/cznic/quickjs) from 0.22.0 to 0.23.0.
- [Commits](https://gitlab.com/cznic/quickjs/compare/v0.22.0...v0.23.0)

---
updated-dependencies:
- dependency-name: modernc.org/quickjs
  dependency-version: 0.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-12 01:05:15 +00:00
Joel Wetzell ad01ba62bb Merge pull request #215 from jwetzell/dependabot/go_modules/github.com/redis/go-redis/v9-9.22.0
Bump github.com/redis/go-redis/v9 from 9.21.0 to 9.22.0
2026-08-11 20:03:38 -05:00
Joel Wetzell c20bd9d448 Merge pull request #216 from jwetzell/dependabot/go_modules/modernc.org/sqlite-1.56.0
Bump modernc.org/sqlite from 1.55.0 to 1.56.0
2026-08-11 20:03:27 -05:00
Joel Wetzell 8f681b0cb6 Merge pull request #217 from jwetzell/fix/mqtt-client-locking
fix lock releasing in mqtt client on error
2026-08-11 20:02:58 -05:00
Joel Wetzell 7c0a504616 fix lock releasing in mqtt client on error 2026-08-11 19:58:33 -05:00
dependabot[bot] 9af0991a0d Bump modernc.org/sqlite from 1.55.0 to 1.56.0
Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.55.0 to 1.56.0.
- [Changelog](https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/cznic/sqlite/compare/v1.55.0...v1.56.0)

---
updated-dependencies:
- dependency-name: modernc.org/sqlite
  dependency-version: 1.56.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-11 17:23:58 +00:00
dependabot[bot] b22fdbe6ef Bump github.com/redis/go-redis/v9 from 9.21.0 to 9.22.0
Bumps [github.com/redis/go-redis/v9](https://github.com/redis/go-redis) from 9.21.0 to 9.22.0.
- [Release notes](https://github.com/redis/go-redis/releases)
- [Changelog](https://github.com/redis/go-redis/blob/master/RELEASE-NOTES.md)
- [Commits](https://github.com/redis/go-redis/compare/v9.21.0...v9.22.0)

---
updated-dependencies:
- dependency-name: github.com/redis/go-redis/v9
  dependency-version: 9.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-11 17:23:51 +00:00
Joel Wetzell a1f7bca743 Merge pull request #212 from jwetzell/dependabot/github_actions/docker/login-action-4.6.0
Bump docker/login-action from 4.5.2 to 4.6.0
2026-08-04 14:28:35 -05:00
Joel Wetzell dbb1fed79f Merge pull request #213 from jwetzell/dependabot/go_modules/github.com/nats-io/nats-server/v2-2.14.4
Bump github.com/nats-io/nats-server/v2 from 2.14.3 to 2.14.4
2026-08-04 14:28:25 -05:00
dependabot[bot] c4e338a517 Bump github.com/nats-io/nats-server/v2 from 2.14.3 to 2.14.4
Bumps [github.com/nats-io/nats-server/v2](https://github.com/nats-io/nats-server) from 2.14.3 to 2.14.4.
- [Release notes](https://github.com/nats-io/nats-server/releases)
- [Changelog](https://github.com/nats-io/nats-server/blob/main/RELEASES.md)
- [Commits](https://github.com/nats-io/nats-server/compare/v2.14.3...v2.14.4)

---
updated-dependencies:
- dependency-name: github.com/nats-io/nats-server/v2
  dependency-version: 2.14.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-04 17:23:29 +00:00
dependabot[bot] eddeb4655b Bump docker/login-action from 4.5.2 to 4.6.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.5.2 to 4.6.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/371161bbe7024a29a25c5e19bfcbc0804fe9ad2c...dbcb813823bdd20940b903addbd779551569679f)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-08-04 17:23:20 +00:00
Joel Wetzell 4f34de7fa8 Merge pull request #207 from jwetzell/dependabot/go_modules/go.bug.st/serial-1.8.0
Bump go.bug.st/serial from 1.7.1 to 1.8.0
2026-07-29 08:32:53 -05:00
dependabot[bot] e47a5fff5f Bump go.bug.st/serial from 1.7.1 to 1.8.0
Bumps [go.bug.st/serial](https://github.com/bugst/go-serial) from 1.7.1 to 1.8.0.
- [Release notes](https://github.com/bugst/go-serial/releases)
- [Commits](https://github.com/bugst/go-serial/compare/v1.7.1...v1.8.0)

---
updated-dependencies:
- dependency-name: go.bug.st/serial
  dependency-version: 1.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-29 13:17:39 +00:00
Joel Wetzell a1aa80c9ee Merge pull request #208 from jwetzell/dependabot/go_modules/modernc.org/sqlite-1.54.0
Bump modernc.org/sqlite from 1.53.0 to 1.55.0
2026-07-29 08:15:27 -05:00
Joel Wetzell d926bd3f7d Merge pull request #206 from jwetzell/dependabot/github_actions/actions/setup-go-7
Bump actions/setup-go from 6 to 7
2026-07-29 08:02:54 -05:00
Joel Wetzell aee67547cf Merge pull request #209 from jwetzell/dependabot/github_actions/docker/login-action-4.5.2
Bump docker/login-action from 4.4.0 to 4.5.2
2026-07-29 08:02:30 -05:00
dependabot[bot] 5e2c85244f Bump modernc.org/sqlite from 1.53.0 to 1.55.0
Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.53.0 to 1.55.0.
- [Changelog](https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/cznic/sqlite/compare/v1.53.0...v1.55.0)

---
updated-dependencies:
- dependency-name: modernc.org/sqlite
  dependency-version: 1.54.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-29 13:02:20 +00:00
Joel Wetzell f314fed2d9 Merge pull request #210 from jwetzell/dependabot/go_modules/github.com/emiago/diago-0.31.0
Bump github.com/emiago/diago from 0.30.0 to 0.31.0
2026-07-29 08:02:04 -05:00
Joel Wetzell 32deb2032b Merge pull request #211 from jwetzell/dependabot/go_modules/modernc.org/quickjs-0.22.0
Bump modernc.org/quickjs from 0.21.0 to 0.22.0
2026-07-29 08:00:24 -05:00
dependabot[bot] 6852a3e917 Bump modernc.org/quickjs from 0.21.0 to 0.22.0
Bumps [modernc.org/quickjs](https://gitlab.com/cznic/quickjs) from 0.21.0 to 0.22.0.
- [Commits](https://gitlab.com/cznic/quickjs/compare/v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: modernc.org/quickjs
  dependency-version: 0.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-28 17:23:41 +00:00
dependabot[bot] 2874f2c7ff Bump github.com/emiago/diago from 0.30.0 to 0.31.0
Bumps [github.com/emiago/diago](https://github.com/emiago/diago) from 0.30.0 to 0.31.0.
- [Release notes](https://github.com/emiago/diago/releases)
- [Commits](https://github.com/emiago/diago/compare/v0.30.0...v0.31.0)

---
updated-dependencies:
- dependency-name: github.com/emiago/diago
  dependency-version: 0.31.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-28 17:23:33 +00:00
dependabot[bot] a9f35fa4f7 Bump docker/login-action from 4.4.0 to 4.5.2
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.4.0 to 4.5.2.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/af1e73f918a031802d376d3c8bbc3fe56130a9b0...371161bbe7024a29a25c5e19bfcbc0804fe9ad2c)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.5.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-28 17:23:28 +00:00
dependabot[bot] 5aa9961742 Bump actions/setup-go from 6 to 7
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6 to 7.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-21 17:23:15 +00:00
Joel Wetzell 4914db403e Merge pull request #205 from jwetzell/dependabot/go_modules/github.com/emiago/diago-0.30.0
Bump github.com/emiago/diago from 0.29.0 to 0.30.0
2026-07-18 13:16:27 -05:00
dependabot[bot] fd49fa2795 Bump github.com/emiago/diago from 0.29.0 to 0.30.0
Bumps [github.com/emiago/diago](https://github.com/emiago/diago) from 0.29.0 to 0.30.0.
- [Release notes](https://github.com/emiago/diago/releases)
- [Commits](https://github.com/emiago/diago/compare/v0.29.0...v0.30.0)

---
updated-dependencies:
- dependency-name: github.com/emiago/diago
  dependency-version: 0.30.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-14 17:23:39 +00:00
Joel Wetzell b86ca20592 syntax cleanup 2026-07-09 22:22:22 -05:00
Joel Wetzell 777f9c43de Merge pull request #196 from jwetzell/dependabot/go_modules/github.com/nats-io/nats-server/v2-2.14.3
Bump github.com/nats-io/nats-server/v2 from 2.14.2 to 2.14.3
2026-07-07 14:55:03 -05:00
dependabot[bot] 8ebbed482d Bump github.com/nats-io/nats-server/v2 from 2.14.2 to 2.14.3
Bumps [github.com/nats-io/nats-server/v2](https://github.com/nats-io/nats-server) from 2.14.2 to 2.14.3.
- [Release notes](https://github.com/nats-io/nats-server/releases)
- [Changelog](https://github.com/nats-io/nats-server/blob/main/RELEASES.md)
- [Commits](https://github.com/nats-io/nats-server/compare/v2.14.2...v2.14.3)

---
updated-dependencies:
- dependency-name: github.com/nats-io/nats-server/v2
  dependency-version: 2.14.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 19:28:50 +00:00
Joel Wetzell 27ef3f7766 Merge pull request #201 from jwetzell/dependabot/go_modules/github.com/emiago/sipgo-1.4.3
Bump github.com/emiago/sipgo from 1.4.0 to 1.4.3
2026-07-07 14:28:46 -05:00
Joel Wetzell 2b71829d47 Merge pull request #198 from jwetzell/dependabot/github_actions/docker/setup-buildx-action-4.2.0
Bump docker/setup-buildx-action from 4.1.0 to 4.2.0
2026-07-07 14:28:29 -05:00
Joel Wetzell cf1dcd305f Merge pull request #197 from jwetzell/dependabot/github_actions/docker/setup-qemu-action-4.2.0
Bump docker/setup-qemu-action from 4.1.0 to 4.2.0
2026-07-07 14:27:35 -05:00
Joel Wetzell 2c05549edb Merge pull request #194 from jwetzell/dependabot/go_modules/github.com/urfave/cli/v3-3.10.1
Bump github.com/urfave/cli/v3 from 3.10.0 to 3.10.1
2026-07-07 14:27:19 -05:00
Joel Wetzell 10fc3584e1 Merge pull request #199 from jwetzell/dependabot/github_actions/docker/metadata-action-6.2.0
Bump docker/metadata-action from 6.1.0 to 6.2.0
2026-07-07 14:27:02 -05:00
Joel Wetzell 0b26835eb6 Merge pull request #200 from jwetzell/dependabot/github_actions/docker/build-push-action-7.3.0
Bump docker/build-push-action from 7.2.0 to 7.3.0
2026-07-07 14:26:40 -05:00
Joel Wetzell c47f6fedff Merge pull request #202 from jwetzell/dependabot/github_actions/docker/login-action-4.4.0
Bump docker/login-action from 4.2.0 to 4.4.0
2026-07-07 14:26:27 -05:00
Joel Wetzell 250e0f2b0b Merge pull request #203 from jwetzell/dependabot/go_modules/modernc.org/quickjs-0.21.0
Bump modernc.org/quickjs from 0.18.2 to 0.21.0
2026-07-07 14:26:17 -05:00
dependabot[bot] e02ddf4255 Bump modernc.org/quickjs from 0.18.2 to 0.21.0
Bumps [modernc.org/quickjs](https://gitlab.com/cznic/quickjs) from 0.18.2 to 0.21.0.
- [Commits](https://gitlab.com/cznic/quickjs/compare/v0.18.2...v0.21.0)

---
updated-dependencies:
- dependency-name: modernc.org/quickjs
  dependency-version: 0.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 17:23:54 +00:00
dependabot[bot] 5c8ab7a2db Bump github.com/emiago/sipgo from 1.4.0 to 1.4.3
Bumps [github.com/emiago/sipgo](https://github.com/emiago/sipgo) from 1.4.0 to 1.4.3.
- [Release notes](https://github.com/emiago/sipgo/releases)
- [Commits](https://github.com/emiago/sipgo/compare/v1.4.0...v1.4.3)

---
updated-dependencies:
- dependency-name: github.com/emiago/sipgo
  dependency-version: 1.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 17:23:46 +00:00
dependabot[bot] 58edcff9b4 Bump docker/login-action from 4.2.0 to 4.4.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.2.0 to 4.4.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/650006c6eb7dba73a995cc03b0b2d7f5ca915bee...af1e73f918a031802d376d3c8bbc3fe56130a9b0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 17:23:46 +00:00
dependabot[bot] 74dbb26911 Bump docker/build-push-action from 7.2.0 to 7.3.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 7.2.0 to 7.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/f9f3042f7e2789586610d6e8b85c8f03e5195baf...53b7df96c91f9c12dcc8a07bcb9ccacbed38856a)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-version: 7.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 17:23:42 +00:00
dependabot[bot] ccc1b4ac34 Bump docker/metadata-action from 6.1.0 to 6.2.0
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9...dc802804100637a589fabce1cb79ff13a1411302)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 17:23:36 +00:00
dependabot[bot] 7e95b52774 Bump docker/setup-buildx-action from 4.1.0 to 4.2.0
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5...bb05f3f5519dd87d3ba754cc423b652a5edd6d2c)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 17:23:32 +00:00
dependabot[bot] 4eb78fa719 Bump docker/setup-qemu-action from 4.1.0 to 4.2.0
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/06116385d9baf250c9f4dcb4858b16962ea869c3...96fe6ef7f33517b61c61be40b68a1882f3264fb8)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-07 17:23:29 +00:00
dependabot[bot] 66d30e9faf Bump github.com/urfave/cli/v3 from 3.10.0 to 3.10.1
Bumps [github.com/urfave/cli/v3](https://github.com/urfave/cli) from 3.10.0 to 3.10.1.
- [Release notes](https://github.com/urfave/cli/releases)
- [Changelog](https://github.com/urfave/cli/blob/main/docs/CHANGELOG.md)
- [Commits](https://github.com/urfave/cli/compare/v3.10.0...v3.10.1)

---
updated-dependencies:
- dependency-name: github.com/urfave/cli/v3
  dependency-version: 3.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-30 17:23:18 +00:00
Joel Wetzell 04ba102768 Merge pull request #191 from jwetzell/dependabot/github_actions/actions/checkout-7
Bump actions/checkout from 6 to 7
2026-06-29 10:26:10 -05:00
Joel Wetzell 49c1f90912 Merge pull request #192 from jwetzell/dependabot/go_modules/modernc.org/sqlite-1.53.0
Bump modernc.org/sqlite from 1.52.0 to 1.53.0
2026-06-29 10:25:23 -05:00
Joel Wetzell 80c145a541 Merge pull request #193 from jwetzell/dependabot/go_modules/github.com/redis/go-redis/v9-9.21.0
Bump github.com/redis/go-redis/v9 from 9.20.1 to 9.21.0
2026-06-29 10:24:53 -05:00
dependabot[bot] 4119312e9d Bump github.com/redis/go-redis/v9 from 9.20.1 to 9.21.0
Bumps [github.com/redis/go-redis/v9](https://github.com/redis/go-redis) from 9.20.1 to 9.21.0.
- [Release notes](https://github.com/redis/go-redis/releases)
- [Changelog](https://github.com/redis/go-redis/blob/master/RELEASE-NOTES.md)
- [Commits](https://github.com/redis/go-redis/compare/v9.20.1...v9.21.0)

---
updated-dependencies:
- dependency-name: github.com/redis/go-redis/v9
  dependency-version: 9.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-23 17:23:52 +00:00
dependabot[bot] 5b6cfc6849 Bump modernc.org/sqlite from 1.52.0 to 1.53.0
Bumps [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) from 1.52.0 to 1.53.0.
- [Changelog](https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/cznic/sqlite/compare/v1.52.0...v1.53.0)

---
updated-dependencies:
- dependency-name: modernc.org/sqlite
  dependency-version: 1.53.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-23 17:23:44 +00:00
dependabot[bot] c48ca01b6d Bump actions/checkout from 6 to 7
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-23 17:23:16 +00:00
Joel Wetzell c551499fc6 add test for common events 2026-06-21 13:09:09 -05:00
120 changed files with 675 additions and 174 deletions
-10
View File
@@ -1,10 +0,0 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: gomod
directory: /
schedule:
interval: "weekly"
+17 -17
View File
@@ -17,7 +17,7 @@ jobs:
short_commit: ${{ steps.set_commit.outputs.short_commit }}
steps:
- name: checkout
uses: actions/checkout@v6
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: set environment variables
@@ -45,11 +45,11 @@ jobs:
SHORT_COMMIT: ${{ needs.setup_release.outputs.short_commit }}
steps:
- name: checkout
uses: actions/checkout@v6
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: setup go
uses: actions/setup-go@v6
uses: actions/setup-go@v7
with:
go-version-file: "go.mod"
- name: install alsa lib
@@ -79,11 +79,11 @@ jobs:
SHORT_COMMIT: ${{ needs.setup_release.outputs.short_commit }}
steps:
- name: checkout
uses: actions/checkout@v6
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: setup go
uses: actions/setup-go@v6
uses: actions/setup-go@v7
with:
go-version-file: "go.mod"
- name: install alsa lib
@@ -113,11 +113,11 @@ jobs:
SHORT_COMMIT: ${{ needs.setup_release.outputs.short_commit }}
steps:
- name: checkout
uses: actions/checkout@v6
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: setup go
uses: actions/setup-go@v6
uses: actions/setup-go@v7
with:
go-version-file: "go.mod"
- name: setup zig
@@ -153,11 +153,11 @@ jobs:
SHORT_COMMIT: ${{ needs.setup_release.outputs.short_commit }}
steps:
- name: checkout
uses: actions/checkout@v6
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: setup go
uses: actions/setup-go@v6
uses: actions/setup-go@v7
with:
go-version-file: "go.mod"
- name: build
@@ -185,11 +185,11 @@ jobs:
SHORT_COMMIT: ${{ needs.setup_release.outputs.short_commit }}
steps:
- name: checkout
uses: actions/checkout@v6
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: setup go
uses: actions/setup-go@v6
uses: actions/setup-go@v7
with:
go-version-file: "go.mod"
- name: build
@@ -215,29 +215,29 @@ jobs:
if: github.ref_type == 'tag' && github.event_name != 'workflow_dispatch'
steps:
- name: Check out repository
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Set up QEMU
uses: docker/setup-qemu-action@06116385d9baf250c9f4dcb4858b16962ea869c3 # v4.1.0
uses: docker/setup-qemu-action@96fe6ef7f33517b61c61be40b68a1882f3264fb8 # v4.2.0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4.1.0
uses: docker/setup-buildx-action@37fe631027851001ddb9b187196cc803df7f5f0e # v4.3.0
- name: Login to Docker Hub
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Setup Docker metadata
id: meta
uses: docker/metadata-action@80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9 # v6.1.0
uses: docker/metadata-action@dc802804100637a589fabce1cb79ff13a1411302 # v6.2.0
with:
images: |
jwetzell/showbridge
- name: Build and push
uses: docker/build-push-action@f9f3042f7e2789586610d6e8b85c8f03e5195baf # v7.2.0
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7.3.0
with:
push: true
context: ./
+7 -10
View File
@@ -26,8 +26,8 @@ jobs:
- name: Install alsa
run: sudo apt-get install -y libasound2-dev
- uses: actions/checkout@v6
- uses: actions/setup-go@v6
- uses: actions/checkout@v7
- uses: actions/setup-go@v7
with:
go-version-file: "go.mod"
- name: mod tidy
@@ -38,12 +38,9 @@ jobs:
- name: clean up coverage report
run: cat coverage.out | grep -v "github.com/jwetzell/showbridge-go/cmd" > coverage.nocmd.out
- name: Update coverage report
uses: ncruces/go-coverage-report@v0.3.2
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v7
with:
coverage-file: coverage.nocmd.out
report: true
chart: true
amend: true
if: github.event_name == 'push'
continue-on-error: true
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage.nocmd.out
+2 -1
View File
@@ -2,7 +2,8 @@
# showbridge (go edition)
[![Coverage](https://github.com/jwetzell/showbridge-go/wiki/coverage.svg)](https://raw.githack.com/wiki/jwetzell/showbridge-go/coverage.html)
[![codecov](https://codecov.io/gh/jwetzell/showbridge-go/graph/badge.svg?token=T4XAAKZN14)](https://codecov.io/gh/jwetzell/showbridge-go)
Simple protocol router _/s_
</div>
+7 -3
View File
@@ -13,11 +13,15 @@ modules:
port: 8000
routes:
- input: http
id: http-to-osc
processors:
- type: osc.message.create
- id: create-osc
type: osc.message.create
params:
address: "{{.Payload.URL.Path}}"
- type: osc.message.encode
- type: module.output
- id: encode-osc
type: osc.message.encode
- id: output-osc
type: module.output
params:
module: udp
+19 -20
View File
@@ -4,8 +4,8 @@ go 1.26.3
require (
github.com/eclipse/paho.mqtt.golang v1.5.1
github.com/emiago/diago v0.29.0
github.com/emiago/sipgo v1.4.0
github.com/emiago/diago v0.32.0
github.com/emiago/sipgo v1.6.0
github.com/expr-lang/expr v1.17.8
github.com/extism/go-sdk v1.7.1
github.com/google/jsonschema-go v0.4.3
@@ -14,20 +14,20 @@ require (
github.com/jwetzell/free-d-go v0.2.0
github.com/jwetzell/osc-go v0.3.0
github.com/jwetzell/psn-go v0.3.0
github.com/nats-io/nats-server/v2 v2.14.2
github.com/nats-io/nats.go v1.52.0
github.com/redis/go-redis/v9 v9.20.1
github.com/urfave/cli/v3 v3.10.0
github.com/nats-io/nats-server/v2 v2.14.6
github.com/nats-io/nats.go v1.53.1
github.com/redis/go-redis/v9 v9.22.0
github.com/urfave/cli/v3 v3.11.0
gitlab.com/gomidi/midi/v2 v2.3.24
go.bug.st/serial v1.7.1
go.bug.st/serial v1.8.0
golang.org/x/time v0.15.0
modernc.org/quickjs v0.18.2
modernc.org/sqlite v1.52.0
modernc.org/quickjs v0.24.2
modernc.org/sqlite v1.57.0
sigs.k8s.io/yaml v1.6.0
)
require (
github.com/antithesishq/antithesis-sdk-go v0.7.0 // indirect
github.com/antithesishq/antithesis-sdk-go v0.7.2-default-no-op // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/dustin/go-humanize v1.0.1 // indirect
github.com/dylibso/observe-sdk/go v0.0.0-20240828172851-9145d8ad07e1 // indirect
@@ -41,8 +41,8 @@ require (
github.com/google/uuid v1.6.0 // indirect
github.com/ianlancetaylor/demangle v0.0.0-20260505044615-1ff4bf46051f // indirect
github.com/icholy/digest v1.1.0 // indirect
github.com/klauspost/compress v1.18.6 // indirect
github.com/mattn/go-isatty v0.0.22 // indirect
github.com/klauspost/compress v1.19.2 // indirect
github.com/mattn/go-isatty v0.0.24 // indirect
github.com/minio/highwayhash v1.0.4 // indirect
github.com/nats-io/jwt/v2 v2.8.2 // indirect
github.com/nats-io/nkeys v0.4.16 // indirect
@@ -63,15 +63,14 @@ require (
go.uber.org/atomic v1.11.0 // indirect
go.yaml.in/yaml/v2 v2.4.2 // indirect
go.yaml.in/yaml/v3 v3.0.4 // indirect
golang.org/x/crypto v0.52.0 // indirect
golang.org/x/net v0.54.0 // indirect
golang.org/x/sync v0.20.0 // indirect
golang.org/x/sys v0.45.0 // indirect
golang.org/x/tools v0.44.0 // indirect
golang.org/x/crypto v0.55.0 // indirect
golang.org/x/net v0.57.0 // indirect
golang.org/x/sync v0.22.0 // indirect
golang.org/x/sys v0.47.0 // indirect
google.golang.org/protobuf v1.36.11 // indirect
gopkg.in/hraban/opus.v2 v2.0.0-20230925203106-0188a62cb302 // indirect
modernc.org/libc v1.72.3 // indirect
modernc.org/libquickjs v0.12.8 // indirect
modernc.org/libc v1.75.4 // indirect
modernc.org/libquickjs v0.13.1 // indirect
modernc.org/mathutil v1.7.1 // indirect
modernc.org/memory v1.11.0 // indirect
modernc.org/memory v1.12.1 // indirect
)
+52 -50
View File
@@ -1,5 +1,5 @@
github.com/antithesishq/antithesis-sdk-go v0.7.0 h1:uWDG8BqLD1lI2ps38WDz2vXflrTX2+vLX0SvZtztJtE=
github.com/antithesishq/antithesis-sdk-go v0.7.0/go.mod h1:FQyySiasQQM8735Ddel3MRojmy4dA1IqCeyJ5jmPMbI=
github.com/antithesishq/antithesis-sdk-go v0.7.2-default-no-op h1:p2zFsAzvhIpFya8AIOHIbWf7NGvO34QpLGclyf7nXj8=
github.com/antithesishq/antithesis-sdk-go v0.7.2-default-no-op/go.mod h1:FQyySiasQQM8735Ddel3MRojmy4dA1IqCeyJ5jmPMbI=
github.com/bsm/ginkgo/v2 v2.12.0 h1:Ny8MWAHyOepLGlLKYmXG4IEkioBysk6GpaRTLC8zwWs=
github.com/bsm/ginkgo/v2 v2.12.0/go.mod h1:SwYbGRRDovPVboqFv0tPTcG1sN61LM1Z4ARdbAV9g4c=
github.com/bsm/gomega v1.27.10 h1:yeMWxP2pV2fG3FgAODIY8EiRE3dy0aeFYt4l7wh6yKA=
@@ -14,12 +14,12 @@ github.com/dylibso/observe-sdk/go v0.0.0-20240828172851-9145d8ad07e1 h1:idfl8M8r
github.com/dylibso/observe-sdk/go v0.0.0-20240828172851-9145d8ad07e1/go.mod h1:C8DzXehI4zAbrdlbtOByKX6pfivJTBiV9Jjqv56Yd9Q=
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/emiago/diago v0.29.0 h1:9hy8DDY0vkZgsxq4hD+EmcP2Uc/jhUnEbLI8ArgjlyE=
github.com/emiago/diago v0.29.0/go.mod h1:UDLuthSV96A0Qf/fUluhBAAAWj0NWHsMZMHPkBy46Y8=
github.com/emiago/diago v0.32.0 h1:U6urbJc/LD2HwrHVe1d/yT0lMgyDMRUFle7gMqJe0Jg=
github.com/emiago/diago v0.32.0/go.mod h1:CP7p9/aBZG/fQEYdtGdQkCblr1jLr1zbxODcu8MryVU=
github.com/emiago/dtls/v3 v3.0.0-20260122183559-8b8d23e359c0 h1:o4LxpUnZ1zxiQ+Qjc9kLwXcjz31NGAHmnZ7xoJto3VM=
github.com/emiago/dtls/v3 v3.0.0-20260122183559-8b8d23e359c0/go.mod h1:ydcZ977eS1I6uOWodzMuw30BwvNAzT9su/xcNYSJqjA=
github.com/emiago/sipgo v1.4.0 h1:IRiwIUu4H97gC+vq2zsm3iWe/j08LPExFZRe3kfY0f0=
github.com/emiago/sipgo v1.4.0/go.mod h1:DuwAxBZhKMqIzQFPGZb1MVAGU6Wuxj64oTOhd5dx/FY=
github.com/emiago/sipgo v1.6.0 h1:6EuOP7c6f0VRatKYTPEYNezt4hslBEsaCzZZOhT2n3s=
github.com/emiago/sipgo v1.6.0/go.mod h1:DuwAxBZhKMqIzQFPGZb1MVAGU6Wuxj64oTOhd5dx/FY=
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/extism/go-sdk v1.7.1 h1:lWJos6uY+tRFdlIHR+SJjwFDApY7OypS/2nMhiVQ9Sw=
@@ -40,8 +40,8 @@ github.com/google/go-tpm v0.9.8 h1:slArAR9Ft+1ybZu0lBwpSmpwhRXaa85hWtMinMyRAWo=
github.com/google/go-tpm v0.9.8/go.mod h1:h9jEsEECg7gtLis0upRBQU+GhYVH6jMjrFxI8u6bVUY=
github.com/google/jsonschema-go v0.4.3 h1:/DBOLZTfDow7pe2GmaJNhltueGTtDKICi8V8p+DQPd0=
github.com/google/jsonschema-go v0.4.3/go.mod h1:r5quNTdLOYEz95Ru18zA0ydNbBuYoo9tgaYcxEYhJVE=
github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e h1:ijClszYn+mADRFY17kjQEVQ1XRhq2/JR1M3sGqeJoxs=
github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA=
github.com/google/pprof v0.0.0-20260802141513-ef3492d7dac3 h1:LMLX+LgTNWpfvCBdFebv6EsYotImrt/Ppc5cXIriCSo=
github.com/google/pprof v0.0.0-20260802141513-ef3492d7dac3/go.mod h1:jl5iWTm0/hd5PjEYEOuwAJ57L/CibdZfrqZ5XA5GrCk=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg=
@@ -60,24 +60,26 @@ github.com/jwetzell/osc-go v0.3.0 h1:z75TxuQSEmdcmZ56OAepkDa3m88SdZh//3m4nBb/XZI
github.com/jwetzell/osc-go v0.3.0/go.mod h1:kCs329JxY6Qjga08tRQ/Gl0PqhgQzLIMpOhm6uszvIc=
github.com/jwetzell/psn-go v0.3.0 h1:WVpCEmExYE8a+I5hQak5jNJJp2x35VdGX/VuMUKPmhY=
github.com/jwetzell/psn-go v0.3.0/go.mod h1:bcEAeti4sQM375buujb3mIfmUstD4Aby18gq3ENb6+o=
github.com/klauspost/compress v1.18.6 h1:2jupLlAwFm95+YDR+NwD2MEfFO9d4z4Prjl1XXDjuao=
github.com/klauspost/compress v1.18.6/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ=
github.com/klauspost/compress v1.19.2 h1:hMRETovs/pu/dVWN7zIT1PGG8t509MwT6bO7XSi26R8=
github.com/klauspost/compress v1.19.2/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ=
github.com/klauspost/cpuid/v2 v2.2.10 h1:tBs3QSyvjDyFTq3uoc/9xFpCuOsJQFNPiAhYdw2skhE=
github.com/klauspost/cpuid/v2 v2.2.10/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/mattn/go-isatty v0.0.22 h1:j8l17JJ9i6VGPUFUYoTUKPSgKe/83EYU2zBC7YNKMw4=
github.com/mattn/go-isatty v0.0.22/go.mod h1:ZXfXG4SQHsB/w3ZeOYbR0PrPwLy+n6xiMrJlRFqopa4=
github.com/mattn/go-isatty v0.0.24 h1:tGZZoVgT/KiqK1c8ocVLeDS8BSWMRd47J3Lbz7vsReI=
github.com/mattn/go-isatty v0.0.24/go.mod h1:nMCL3Zebbrt45jsMDgnfIwz6ydEQApk5oEI3HqDio6A=
github.com/minio/highwayhash v1.0.4 h1:asJizugGgchQod2ja9NJlGOWq4s7KsAWr5XUc9Clgl4=
github.com/minio/highwayhash v1.0.4/go.mod h1:GGYsuwP/fPD6Y9hMiXuapVvlIUEhFhMTh0rxU3ik1LQ=
github.com/nats-io/jwt/v2 v2.8.2 h1:XXRgB60MSTnqsRwejQurVDs/hcv2dkt+86GjI+I/bMc=
github.com/nats-io/jwt/v2 v2.8.2/go.mod h1:Ag/56sq9OblL4JgdYufDd16Egb17Kr/8WwwuO/forVc=
github.com/nats-io/nats-server/v2 v2.14.2 h1:Q7dRhCY03Y00rETFW3KV+KGaCIajlDfWgWUVgbMxyuk=
github.com/nats-io/nats-server/v2 v2.14.2/go.mod h1:lWpb1bSpRELZfRdlMkdz8E7lbXKKyNe8RIn0vvepIHs=
github.com/nats-io/nats.go v1.52.0 h1:n3avV4VBsCgsdwh71TppsTwtv+QdPs7ntSKM8qJLGsc=
github.com/nats-io/nats.go v1.52.0/go.mod h1:26HypzazeOkyO3/mqd1zZd53STJN0EjCYF9Uy2ZOBno=
github.com/nats-io/nats-server/v2 v2.14.5 h1:M6yeo/Xb7khi97RSEVELof3DForDqmYza3P4tHCPFWw=
github.com/nats-io/nats-server/v2 v2.14.5/go.mod h1:1D3iocrisKvWaD1B/imqarTqmaGrWMqALMLbEDo3v7Q=
github.com/nats-io/nats-server/v2 v2.14.6 h1:dHjEHa49lUTxIb5jrsk5kz/AmOyOQ4T9ti8djcBumDQ=
github.com/nats-io/nats-server/v2 v2.14.6/go.mod h1:u/0bNBzN/m5orQGz7q2NNzxCQ6PWdwaOSwPNDADZn/A=
github.com/nats-io/nats.go v1.53.1 h1:Otsq3uLc/kLdjmkNHkXH0jBqwUquwdKFoe3fq6/3/Xo=
github.com/nats-io/nats.go v1.53.1/go.mod h1:26HypzazeOkyO3/mqd1zZd53STJN0EjCYF9Uy2ZOBno=
github.com/nats-io/nkeys v0.4.16 h1:rd5oAuLOb8mnAycB0xleuEBNS1pVVnN0fv/FF34Eypg=
github.com/nats-io/nkeys v0.4.16/go.mod h1:llLgWoI0o4z/Q57q2R1kHfmocyhGV6VG/U18Glg1Afs=
github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw=
@@ -98,8 +100,8 @@ github.com/pion/transport/v4 v4.0.1 h1:sdROELU6BZ63Ab7FrOLn13M6YdJLY20wldXW2Cu2k
github.com/pion/transport/v4 v4.0.1/go.mod h1:nEuEA4AD5lPdcIegQDpVLgNoDGreqM/YqmEx3ovP4jM=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/redis/go-redis/v9 v9.20.1 h1:sfCU6A8P3dXbKyWes02uxA2baehGux9dZHfEKtsTB1w=
github.com/redis/go-redis/v9 v9.20.1/go.mod h1:v/M13XI1PVCDcm01VtPFOADfZtHf8YW3baQf57KlIkA=
github.com/redis/go-redis/v9 v9.22.0 h1:laDvpYXTJtZLloinw1fA5Kqd6HAEH2XKxOkG/PDq2F0=
github.com/redis/go-redis/v9 v9.22.0/go.mod h1:y2g0Wj8rQvuK0ELM+oxSudcLtC09JScs98I/X9gRWY4=
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE=
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
@@ -110,16 +112,16 @@ github.com/tetratelabs/wabin v0.0.0-20230304001439-f6f874872834 h1:ZF+QBjOI+tILZ
github.com/tetratelabs/wabin v0.0.0-20230304001439-f6f874872834/go.mod h1:m9ymHTgNSEjuxvw8E7WWe4Pl4hZQHXONY8wE6dMLaRk=
github.com/tetratelabs/wazero v1.11.0 h1:+gKemEuKCTevU4d7ZTzlsvgd1uaToIDtlQlmNbwqYhA=
github.com/tetratelabs/wazero v1.11.0/go.mod h1:eV28rsN8Q+xwjogd7f4/Pp4xFxO7uOGbLcD/LzB1wiU=
github.com/urfave/cli/v3 v3.10.0 h1:0aU8yOObVDMkM13Cj4G+zb4P0PdeJMec65f81Ak1ioM=
github.com/urfave/cli/v3 v3.10.0/go.mod h1:ysVLtOEmg2tOy6PknnYVhDoouyC/6N42TMeoMzskhso=
github.com/urfave/cli/v3 v3.11.0 h1:P/euJp99kb9p0tlVY+iYTLYYTAQlfl0hR2gUO1Img1Q=
github.com/urfave/cli/v3 v3.11.0/go.mod h1:ysVLtOEmg2tOy6PknnYVhDoouyC/6N42TMeoMzskhso=
github.com/zaf/g711 v1.4.0 h1:XZYkjjiAg9QTBnHqEg37m2I9q3IIDv5JRYXs2N8ma7c=
github.com/zaf/g711 v1.4.0/go.mod h1:eCDXt3dSp/kYYAoooba7ukD/Q75jvAaS4WOMr0l1Roo=
github.com/zeebo/xxh3 v1.1.0 h1:s7DLGDK45Dyfg7++yxI0khrfwq9661w9EN78eP/UZVs=
github.com/zeebo/xxh3 v1.1.0/go.mod h1:IisAie1LELR4xhVinxWS5+zf1lA4p0MW4T+w+W07F5s=
gitlab.com/gomidi/midi/v2 v2.3.24 h1:afkq5nhlzKvZaj9QK80YbK8tH3lIlKLnPPP9HxxD7Do=
gitlab.com/gomidi/midi/v2 v2.3.24/go.mod h1:jDpP4O4skYi+7iVwt6Zyp18bd2M4hkjtMuw2cmgKgfw=
go.bug.st/serial v1.7.1 h1:5aP8wYL0UjEYOVs3oPAGscjaSfRQLHtCvBFXNN/rwtc=
go.bug.st/serial v1.7.1/go.mod h1:d0MmS16Qt9b1m06yoYRNUXhRRTJV5Qg2S5EKqQtnayQ=
go.bug.st/serial v1.8.0 h1:ZtnmN8aYXtPlTghwSvDWPHKBHL9TM6oFDa+KpSn4SQE=
go.bug.st/serial v1.8.0/go.mod h1:d0MmS16Qt9b1m06yoYRNUXhRRTJV5Qg2S5EKqQtnayQ=
go.opentelemetry.io/proto/otlp v1.10.0 h1:IQRWgT5srOCYfiWnpqUYz9CVmbO8bFmKcwYxpuCSL2g=
go.opentelemetry.io/proto/otlp v1.10.0/go.mod h1:/CV4QoCR/S9yaPj8utp3lvQPoqMtxXdzn7ozvvozVqk=
go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE=
@@ -128,22 +130,22 @@ go.yaml.in/yaml/v2 v2.4.2 h1:DzmwEr2rDGHl7lsFgAHxmNz/1NlQ7xLIrlN2h5d1eGI=
go.yaml.in/yaml/v2 v2.4.2/go.mod h1:081UH+NErpNdqlCXm3TtEran0rJZGxAYx9hb/ELlsPU=
go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988=
golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc=
golang.org/x/mod v0.36.0 h1:JJjpVx6myfUsUdAzZuOSTTmRE0PfZeNWzzvKrP7amb4=
golang.org/x/mod v0.36.0/go.mod h1:moc6ELqsWcOw5Ef3xVprK5ul/MvtVvkIXLziUOICjUQ=
golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w=
golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ=
golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4=
golang.org/x/sync v0.20.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
golang.org/x/crypto v0.55.0 h1:+KWHjbgOaAQ66dh/YlkZKHlz9ZUlq61AFirAR9ntP8M=
golang.org/x/crypto v0.55.0/go.mod h1:uq0V9dE/fzQuJtbnL+2EhWOE63vo164FY8xqEnV9xis=
golang.org/x/mod v0.38.0 h1:MECBjubtXD7yj4HrhIUcywNaGeNVUdfVnxmPajOk4yk=
golang.org/x/mod v0.38.0/go.mod h1:V6Xz0pq8TQ3dGqVQ1FVHuelZpAL0uNhSkk9ogYP3c40=
golang.org/x/net v0.57.0 h1:K5+3DljvIuDG9/Jv9rvyMywYNFCQ9RSUY6OOTTkT+tE=
golang.org/x/net v0.57.0/go.mod h1:KpXc8iv+r3XplLAG/f7Jsf9RPszJzdR0f58q9vGOuEU=
golang.org/x/sync v0.22.0 h1:SZjpbeLmrCk4xhRSZFNZW5gFUeCeFgjekvI/+gfScek=
golang.org/x/sync v0.22.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY=
golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs=
golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
golang.org/x/time v0.15.0 h1:bbrp8t3bGUeFOx08pvsMYRTCVSMk89u4tKbNOZbp88U=
golang.org/x/time v0.15.0/go.mod h1:Y4YMaQmXwGQZoFaVFk4YpCt4FLQMYKZe9oeV/f4MSno=
golang.org/x/tools v0.44.0 h1:UP4ajHPIcuMjT1GqzDWRlalUEoY+uzoZKnhOjbIPD2c=
golang.org/x/tools v0.44.0/go.mod h1:KA0AfVErSdxRZIsOVipbv3rQhVXTnlU6UhKxHd1seDI=
golang.org/x/tools v0.48.0 h1:3+hClM1aLL5mjMKm5ovokw9epgRXPuu2tILgismM6RE=
golang.org/x/tools v0.48.0/go.mod h1:08xX0orndb/F7jJxGDicx061tyd5pcMto75YMAXr6lk=
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=
@@ -155,34 +157,34 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gotest.tools/v3 v3.5.2 h1:7koQfIKdy+I8UTetycgUqXWSDwpgv193Ka+qRsmBY8Q=
gotest.tools/v3 v3.5.2/go.mod h1:LtdLGcnqToBH83WByAAi/wiwSFCArdFIUV/xxN4pcjA=
modernc.org/cc/v4 v4.28.2 h1:3tQ0lf2ADtoby2EtSP+J7IE2SHwEJdP8ioR59wx7XpY=
modernc.org/cc/v4 v4.28.2/go.mod h1:OnovgIhbbMXMu1aISnJ0wvVD1KnW+cAUJkIrAWh+kVI=
modernc.org/ccgo/v4 v4.34.0 h1:yRLPFZieg532OT4rp4JFNIVcquwalMX26G95WQDqwCQ=
modernc.org/ccgo/v4 v4.34.0/go.mod h1:AS5WYMyBakQ+fhsHhtP8mWB82KTGPkNNJDGfGQCe0/A=
modernc.org/cc/v4 v4.29.2 h1:h6+9ciCnPKutf4I03CvheAvDLX7+IHlqR6Iy6J+cgd8=
modernc.org/cc/v4 v4.29.2/go.mod h1:OnovgIhbbMXMu1aISnJ0wvVD1KnW+cAUJkIrAWh+kVI=
modernc.org/ccgo/v4 v4.35.0 h1:F+TUsmw09QxLzmi3aeYYGxjAXarmZaKgj3mKQHNaA8w=
modernc.org/ccgo/v4 v4.35.0/go.mod h1:qrVGs9S3Sr2Ztcg9ve+kTAYMp5a3YvWjo+SoN06kJ5I=
modernc.org/fileutil v1.4.0 h1:j6ZzNTftVS054gi281TyLjHPp6CPHr2KCxEXjEbD6SM=
modernc.org/fileutil v1.4.0/go.mod h1:EqdKFDxiByqxLk8ozOxObDSfcVOv/54xDs/DUHdvCUU=
modernc.org/gc/v2 v2.6.5 h1:nyqdV8q46KvTpZlsw66kWqwXRHdjIlJOhG6kxiV/9xI=
modernc.org/gc/v2 v2.6.5/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito=
modernc.org/gc/v3 v3.1.2 h1:ZtDCnhonXSZexk/AYsegNRV1lJGgaNZJuKjJSWKyEqo=
modernc.org/gc/v3 v3.1.2/go.mod h1:HFK/6AGESC7Ex+EZJhJ2Gni6cTaYpSMmU/cT9RmlfYY=
modernc.org/gc/v3 v3.1.5 h1:21ldfPfRYE31Tb7B3mwAK8gy1AxP4+dKjrOQPfqakoc=
modernc.org/gc/v3 v3.1.5/go.mod h1:HFK/6AGESC7Ex+EZJhJ2Gni6cTaYpSMmU/cT9RmlfYY=
modernc.org/goabi0 v0.2.0 h1:HvEowk7LxcPd0eq6mVOAEMai46V+i7Jrj13t4AzuNks=
modernc.org/goabi0 v0.2.0/go.mod h1:CEFRnnJhKvWT1c1JTI3Avm+tgOWbkOu5oPA8eH8LnMI=
modernc.org/libc v1.72.3 h1:ZnDF4tXn4NBXFutMMQC4vtbTFSXhhKzR73fv0beZEAU=
modernc.org/libc v1.72.3/go.mod h1:dn0dZNnnn1clLyvRxLxYExxiKRZIRENOfqQ8XEeg4Qs=
modernc.org/libquickjs v0.12.8 h1:wJ2GGxEDcQb7j8ILZScNNP1WsXFILlo1qQ8cS3q/tPw=
modernc.org/libquickjs v0.12.8/go.mod h1:nIPezuUN/J6aDLSaR76qNaPNNy79FH5Gkjb/x9wa/gU=
modernc.org/libc v1.75.4 h1:EHQJNYDC6LiDIOqM76862xe4frbDc7IzEOZTtGxZV8Q=
modernc.org/libc v1.75.4/go.mod h1:bO5o2ztHxBb2rjz0PgdHN0sSMw57CgxGFLZ3Qd/QpVQ=
modernc.org/libquickjs v0.13.1 h1:uCb9AYyEyL1JS2dnKtLZKWH/vDb36cx1Mr1SIdbzb8A=
modernc.org/libquickjs v0.13.1/go.mod h1:tCEsA1Zda1+C5JagFIJGqjYZOxDPFOUYjK3dGhEeq0g=
modernc.org/mathutil v1.7.1 h1:GCZVGXdaN8gTqB1Mf/usp1Y/hSqgI2vAGGP4jZMCxOU=
modernc.org/mathutil v1.7.1/go.mod h1:4p5IwJITfppl0G4sUEDtCr4DthTaT47/N3aT6MhfgJg=
modernc.org/memory v1.11.0 h1:o4QC8aMQzmcwCK3t3Ux/ZHmwFPzE6hf2Y5LbkRs+hbI=
modernc.org/memory v1.11.0/go.mod h1:/JP4VbVC+K5sU2wZi9bHoq2MAkCnrt2r98UGeSK7Mjw=
modernc.org/memory v1.12.1 h1:nFMiWrpStgZczNl6XI9GnIk/rWhYIyHGUaR04pGbp9g=
modernc.org/memory v1.12.1/go.mod h1:/JP4VbVC+K5sU2wZi9bHoq2MAkCnrt2r98UGeSK7Mjw=
modernc.org/opt v0.2.0 h1:tGyef5ApycA7FSEOMraay9SaTk5zmbx7Tu+cJs4QKZg=
modernc.org/opt v0.2.0/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns=
modernc.org/quickjs v0.18.2 h1:v/KDawJfs4L7jSCItAKrkrHCmOL5VnDLMJOXpU8Evdk=
modernc.org/quickjs v0.18.2/go.mod h1:U11Fhn2hC71v+DyvEN3cY4IXkjU5XxrYT0DQWvZ43+A=
modernc.org/quickjs v0.24.2 h1:wfVrO+6ailTzKHA7LAlknnOXH/rJyiIgw4+WNI0m6ew=
modernc.org/quickjs v0.24.2/go.mod h1:4SZg8rXHeX2pO2VpBVmqSDrIOYD/UF5Cnh3ew4tzFng=
modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w=
modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE=
modernc.org/sqlite v1.52.0 h1:p4dhYh2tXZCiyaqHwRVJDjIGKWyXayiQpThxgDzJaxo=
modernc.org/sqlite v1.52.0/go.mod h1:tcNzv5p84E0skkmJn038y+hWJbLQXQqEnQfeh5r2JLM=
modernc.org/sqlite v1.57.0 h1:qNQP6xnx5M0ISNtlnxoOX0+cD5bJ0/gr9aMmndFczzg=
modernc.org/sqlite v1.57.0/go.mod h1:yCJ2cmAaIkHQ25oXWrF8H4O1lIfPYPR26yCEDj2P3pQ=
modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0=
modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A=
modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y=
+24
View File
@@ -0,0 +1,24 @@
package common_test
import (
"testing"
"github.com/jwetzell/showbridge-go/internal/common"
)
func TestEventToJson(t *testing.T) {
e := common.Event{
Type: "test.event",
Data: map[string]any{
"key": "value",
},
}
jsonData, err := e.ToJSON()
if err != nil {
t.Fatalf("Failed to convert event to JSON: %v", err)
}
expectedJson := `{"type":"test.event","data":{"key":"value"}}`
if string(jsonData) != expectedJson {
t.Errorf("Expected JSON: %s, got: %s", expectedJson, string(jsonData))
}
}
+1
View File
@@ -1,6 +1,7 @@
package config
type ProcessorConfig struct {
Id string `json:"id"`
Type string `json:"type"`
Params Params `json:"params,omitempty"`
}
+1
View File
@@ -1,6 +1,7 @@
package config
type RouteConfig struct {
Id string `json:"id"`
Input string `json:"input"`
Processors []ProcessorConfig `json:"processors"`
}
+2 -1
View File
@@ -30,7 +30,8 @@ func RegisterModule(mod ModuleRegistration) {
moduleRegistryMu.Lock()
defer moduleRegistryMu.Unlock()
if _, ok := moduleRegistry[string(mod.Type)]; ok {
_, exists := moduleRegistry[string(mod.Type)]
if exists {
panic(fmt.Sprintf("module already registered: %s", mod.Type))
}
moduleRegistry[string(mod.Type)] = mod
+1 -1
View File
@@ -148,13 +148,13 @@ func (mc *MQTTClient) Start(ctx context.Context, inputHandler common.InputHandle
mc.client = mqtt.NewClient(opts)
token := mc.client.Connect()
mc.clientMu.Unlock()
token.Wait()
err := token.Error()
if err != nil {
return err
}
mc.clientMu.Unlock()
<-mc.ctx.Done()
mc.logger.Debug("done")
+2 -1
View File
@@ -75,7 +75,8 @@ func (pc *PSNClient) Start(ctx context.Context, inputHandler common.InputHandler
pc.connMu.Unlock()
if err != nil {
//NOTE(jwetzell) we hit deadline
if opErr, ok := err.(*net.OpError); ok && opErr.Timeout() {
opErr, ok := err.(*net.OpError)
if ok && opErr.Timeout() {
continue
}
return err
+2 -1
View File
@@ -126,7 +126,8 @@ CONNECT_RETRY:
byteCount, err := tc.conn.Read(buffer)
if err != nil {
if opErr, ok := err.(*net.OpError); ok {
opErr, ok := err.(*net.OpError)
if ok {
//NOTE(jwetzell) we hit deadline
if opErr.Timeout() {
continue
+2 -1
View File
@@ -141,7 +141,8 @@ func (ts *TCPServer) handleClient(client *net.TCPConn) {
client.SetDeadline(time.Now().Add(time.Millisecond * 200))
byteCount, err := client.Read(buffer)
if err != nil {
if opErr, ok := err.(*net.OpError); ok {
opErr, ok := err.(*net.OpError)
if ok {
//NOTE(jwetzell) we hit deadline
if opErr.Timeout() {
continue
+6 -3
View File
@@ -11,7 +11,8 @@ import (
func TestModuleBadRegistrationNoType(t *testing.T) {
defer func() {
if r := recover(); r == nil {
r := recover()
if r == nil {
t.Fatalf("module registration should have panicked but did not")
}
}()
@@ -26,7 +27,8 @@ func TestModuleBadRegistrationNoType(t *testing.T) {
func TestModuleBadRegistrationNoNew(t *testing.T) {
defer func() {
if r := recover(); r == nil {
r := recover()
if r == nil {
t.Fatalf("processor registration should have panicked but did not")
}
}()
@@ -39,7 +41,8 @@ func TestModuleBadRegistrationNoNew(t *testing.T) {
func TestModuleBadRegistrationExistingType(t *testing.T) {
defer func() {
if r := recover(); r == nil {
r := recover()
if r == nil {
t.Fatalf("processor registration should have panicked but did not")
}
}()
+2 -1
View File
@@ -104,7 +104,8 @@ func (um *UDPMulticast) Start(ctx context.Context, inputHandler common.InputHand
break
}
//NOTE(jwetzell) we hit deadline
if opErr, ok := err.(*net.OpError); ok && opErr.Timeout() {
opErr, ok := err.(*net.OpError)
if ok && opErr.Timeout() {
continue
}
return err
+2 -1
View File
@@ -123,7 +123,8 @@ func (us *UDPServer) Start(ctx context.Context, inputHandler common.InputHandler
numBytes, _, err := listener.ReadFromUDP(buffer)
if err != nil {
//NOTE(jwetzell) we hit deadline
if opErr, ok := err.(*net.OpError); ok && opErr.Timeout() {
opErr, ok := err.(*net.OpError)
if ok && opErr.Timeout() {
continue
}
break
+5 -1
View File
@@ -44,6 +44,10 @@ func (apd *ArtNetPacketDecode) Process(ctx context.Context, wrappedPayload commo
return wrappedPayload, nil
}
func (apd *ArtNetPacketDecode) Id() string {
return apd.config.Id
}
func (apd *ArtNetPacketDecode) Type() string {
return apd.config.Type
}
}
@@ -43,6 +43,10 @@ func (ape *ArtNetPacketEncode) Process(ctx context.Context, wrappedPayload commo
return wrappedPayload, nil
}
func (ape *ArtNetPacketEncode) Id() string {
return ape.config.Id
}
func (ape *ArtNetPacketEncode) Type() string {
return ape.config.Type
}
+4
View File
@@ -143,6 +143,10 @@ func (dq *DbQuery) Process(ctx context.Context, wrappedPayload common.WrappedPay
return wrappedPayload, nil
}
func (dq *DbQuery) Id() string {
return dq.config.Id
}
func (dq *DbQuery) Type() string {
return dq.config.Type
}
+4 -1
View File
@@ -33,7 +33,10 @@ func (dl *DebugLog) Process(ctx context.Context, wrappedPayload common.WrappedPa
return wrappedPayload, nil
}
func (dl *DebugLog) Id() string {
return dl.config.Id
}
func (dl *DebugLog) Type() string {
return dl.config.Type
}
+4
View File
@@ -35,6 +35,10 @@ func (fc *FilterChange) Process(ctx context.Context, wrappedPayload common.Wrapp
return wrappedPayload, nil
}
func (fc *FilterChange) Id() string {
return fc.config.Id
}
func (fc *FilterChange) Type() string {
return fc.config.Type
}
+4
View File
@@ -76,6 +76,10 @@ func (fe *FilterExpr) Process(ctx context.Context, wrappedPayload common.Wrapped
return wrappedPayload, nil
}
func (fe *FilterExpr) Id() string {
return fe.config.Id
}
func (fe *FilterExpr) Type() string {
return fe.config.Type
}
+4
View File
@@ -53,6 +53,10 @@ func (fc *FilterRate) Process(ctx context.Context, wrappedPayload common.Wrapped
return wrappedPayload, nil
}
func (fc *FilterRate) Id() string {
return fc.config.Id
}
func (fc *FilterRate) Type() string {
return fc.config.Type
}
+4
View File
@@ -69,6 +69,10 @@ func (fr *FilterRegex) Process(ctx context.Context, wrappedPayload common.Wrappe
return wrappedPayload, nil
}
func (fr *FilterRegex) Id() string {
return fr.config.Id
}
func (fr *FilterRegex) Type() string {
return fr.config.Type
}
+4
View File
@@ -68,6 +68,10 @@ func (fp *FloatParse) Process(ctx context.Context, wrappedPayload common.Wrapped
return wrappedPayload, nil
}
func (fp *FloatParse) Id() string {
return fp.config.Id
}
func (fp *FloatParse) Type() string {
return fp.config.Type
}
+4
View File
@@ -97,6 +97,10 @@ func (fr *FloatRandom) Process(ctx context.Context, wrappedPayload common.Wrappe
return wrappedPayload, errors.New("float.random bitSize error: must be 32 or 64")
}
func (fr *FloatRandom) Id() string {
return fr.config.Id
}
func (fr *FloatRandom) Type() string {
return fr.config.Type
}
+33 -29
View File
@@ -182,32 +182,32 @@ func init() {
}
return &FreeDCreate{
config: config,
Id: idTemplate,
Pan: panTemplate,
Tilt: tiltTemplate,
Roll: rollTemplate,
PosX: posXTemplate,
PosY: posYTemplate,
PosZ: posZTemplate,
Zoom: zoomTemplate,
Focus: focusTemplate,
config: config,
IdTemplate: idTemplate,
PanTemplate: panTemplate,
TiltTemplate: tiltTemplate,
RollTemplate: rollTemplate,
PosXTemplate: posXTemplate,
PosYTemplate: posYTemplate,
PosZTemplate: posZTemplate,
ZoomTemplate: zoomTemplate,
FocusTemplate: focusTemplate,
}, nil
},
})
}
type FreeDCreate struct {
config config.ProcessorConfig
Id *template.Template
Pan *template.Template
Tilt *template.Template
Roll *template.Template
PosX *template.Template
PosY *template.Template
PosZ *template.Template
Zoom *template.Template
Focus *template.Template
config config.ProcessorConfig
IdTemplate *template.Template
PanTemplate *template.Template
TiltTemplate *template.Template
RollTemplate *template.Template
PosXTemplate *template.Template
PosYTemplate *template.Template
PosZTemplate *template.Template
ZoomTemplate *template.Template
FocusTemplate *template.Template
}
func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.WrappedPayload) (common.WrappedPayload, error) {
@@ -215,7 +215,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
templateData := wrappedPayload
var idBuffer bytes.Buffer
err := fc.Id.Execute(&idBuffer, templateData)
err := fc.IdTemplate.Execute(&idBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -232,7 +232,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var panBuffer bytes.Buffer
err = fc.Pan.Execute(&panBuffer, templateData)
err = fc.PanTemplate.Execute(&panBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -249,7 +249,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var tiltBuffer bytes.Buffer
err = fc.Tilt.Execute(&tiltBuffer, templateData)
err = fc.TiltTemplate.Execute(&tiltBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -266,7 +266,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var rollBuffer bytes.Buffer
err = fc.Roll.Execute(&rollBuffer, templateData)
err = fc.RollTemplate.Execute(&rollBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -283,7 +283,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var posXBuffer bytes.Buffer
err = fc.PosX.Execute(&posXBuffer, templateData)
err = fc.PosXTemplate.Execute(&posXBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -300,7 +300,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var posYBuffer bytes.Buffer
err = fc.PosY.Execute(&posYBuffer, templateData)
err = fc.PosYTemplate.Execute(&posYBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -317,7 +317,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var posZBuffer bytes.Buffer
err = fc.PosZ.Execute(&posZBuffer, templateData)
err = fc.PosZTemplate.Execute(&posZBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -334,7 +334,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var zoomBuffer bytes.Buffer
err = fc.Zoom.Execute(&zoomBuffer, templateData)
err = fc.ZoomTemplate.Execute(&zoomBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -351,7 +351,7 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
}
var focusBuffer bytes.Buffer
err = fc.Focus.Execute(&focusBuffer, templateData)
err = fc.FocusTemplate.Execute(&focusBuffer, templateData)
if err != nil {
wrappedPayload.End = true
@@ -384,6 +384,10 @@ func (fc *FreeDCreate) Process(ctx context.Context, wrappedPayload common.Wrappe
return wrappedPayload, nil
}
func (fc *FreeDCreate) Id() string {
return fc.config.Id
}
func (fc *FreeDCreate) Type() string {
return fc.config.Type
}
+6 -2
View File
@@ -21,9 +21,9 @@ func init() {
type FreeDDecode struct {
config config.ProcessorConfig
buf [29]byte
buf [29]byte
}
func (fd *FreeDDecode) Process(ctx context.Context, wrappedPayload common.WrappedPayload) (common.WrappedPayload, error) {
payload := wrappedPayload.Payload
payloadBytes, ok := common.GetAnyAsByteSlice(payload)
@@ -49,6 +49,10 @@ func (fd *FreeDDecode) Process(ctx context.Context, wrappedPayload common.Wrappe
return wrappedPayload, nil
}
func (fd *FreeDDecode) Id() string {
return fd.config.Id
}
func (fd *FreeDDecode) Type() string {
return fd.config.Type
}
+4
View File
@@ -38,6 +38,10 @@ func (fe *FreeDEncode) Process(ctx context.Context, wrappedPayload common.Wrappe
return wrappedPayload, nil
}
func (fe *FreeDEncode) Id() string {
return fe.config.Id
}
func (fe *FreeDEncode) Type() string {
return fe.config.Type
}
+4
View File
@@ -114,6 +114,10 @@ func (hrd *HTTPRequestDo) Process(ctx context.Context, wrappedPayload common.Wra
return wrappedPayload, nil
}
func (hrd *HTTPRequestDo) Id() string {
return hrd.config.Id
}
func (hrd *HTTPRequestDo) Type() string {
return hrd.config.Type
}
@@ -85,6 +85,10 @@ func (hrc *HTTPResponseCreate) Process(ctx context.Context, wrappedPayload commo
return wrappedPayload, nil
}
func (hrc *HTTPResponseCreate) Id() string {
return hrc.config.Id
}
func (hrc *HTTPResponseCreate) Type() string {
return hrc.config.Type
}
+4
View File
@@ -85,6 +85,10 @@ func (ip *IntParse) Process(ctx context.Context, wrappedPayload common.WrappedPa
return wrappedPayload, nil
}
func (ip *IntParse) Id() string {
return ip.config.Id
}
func (ip *IntParse) Type() string {
return ip.config.Type
}
+4
View File
@@ -66,6 +66,10 @@ func (ir *IntRandom) Process(ctx context.Context, wrappedPayload common.WrappedP
return wrappedPayload, nil
}
func (ir *IntRandom) Id() string {
return ir.config.Id
}
func (ir *IntRandom) Type() string {
return ir.config.Type
}
+4
View File
@@ -98,6 +98,10 @@ func (is *IntScale) Process(ctx context.Context, wrappedPayload common.WrappedPa
return wrappedPayload, nil
}
func (is *IntScale) Id() string {
return is.config.Id
}
func (is *IntScale) Type() string {
return is.config.Type
}
+4
View File
@@ -50,6 +50,10 @@ func (jd *JsonDecode) Process(ctx context.Context, wrappedPayload common.Wrapped
}
func (jd *JsonDecode) Id() string {
return jd.config.Id
}
func (jd *JsonDecode) Type() string {
return jd.config.Type
}
+4
View File
@@ -42,6 +42,10 @@ func (je *JsonEncode) Process(ctx context.Context, wrappedPayload common.Wrapped
return wrappedPayload, nil
}
func (je *JsonEncode) Id() string {
return je.config.Id
}
func (je *JsonEncode) Type() string {
return je.config.Type
}
+4
View File
@@ -89,6 +89,10 @@ func (kvg *KVGet) Process(ctx context.Context, wrappedPayload common.WrappedPayl
return wrappedPayload, nil
}
func (kvg *KVGet) Id() string {
return kvg.config.Id
}
func (kvg *KVGet) Type() string {
return kvg.config.Type
}
+4
View File
@@ -89,6 +89,10 @@ func (kvs *KVSet) Process(ctx context.Context, wrappedPayload common.WrappedPayl
return wrappedPayload, nil
}
func (kvs *KVSet) Id() string {
return kvs.config.Id
}
func (kvs *KVSet) Type() string {
return kvs.config.Type
}
@@ -147,6 +147,10 @@ func (mccc *MIDIControlChangeCreate) Process(ctx context.Context, wrappedPayload
return wrappedPayload, nil
}
func (mccc *MIDIControlChangeCreate) Id() string {
return mccc.config.Id
}
func (mccc *MIDIControlChangeCreate) Type() string {
return mccc.config.Type
}
@@ -40,6 +40,10 @@ func (mmd *MIDIMessageDecode) Process(ctx context.Context, wrappedPayload common
return wrappedPayload, nil
}
func (mmd *MIDIMessageDecode) Id() string {
return mmd.config.Id
}
func (mmd *MIDIMessageDecode) Type() string {
return mmd.config.Type
}
@@ -38,6 +38,10 @@ func (mme *MIDIMessageEncode) Process(ctx context.Context, wrappedPayload common
return wrappedPayload, nil
}
func (mme *MIDIMessageEncode) Id() string {
return mme.config.Id
}
func (mme *MIDIMessageEncode) Type() string {
return mme.config.Type
}
@@ -96,6 +96,10 @@ func (mmu *MIDIMessageUnpack) Process(ctx context.Context, wrappedPayload common
}
}
func (mmu *MIDIMessageUnpack) Id() string {
return mmu.config.Id
}
func (mmu *MIDIMessageUnpack) Type() string {
return mmu.config.Type
}
@@ -146,6 +146,10 @@ func (mnoc *MIDINoteOffCreate) Process(ctx context.Context, wrappedPayload commo
return wrappedPayload, nil
}
func (mnoc *MIDINoteOffCreate) Id() string {
return mnoc.config.Id
}
func (mnoc *MIDINoteOffCreate) Type() string {
return mnoc.config.Type
}
@@ -145,6 +145,10 @@ func (mnoc *MIDINoteOnCreate) Process(ctx context.Context, wrappedPayload common
return wrappedPayload, nil
}
func (mnoc *MIDINoteOnCreate) Id() string {
return mnoc.config.Id
}
func (mnoc *MIDINoteOnCreate) Type() string {
return mnoc.config.Type
}
@@ -113,6 +113,10 @@ func (mpcc *MIDIProgramChangeCreate) Process(ctx context.Context, wrappedPayload
return wrappedPayload, nil
}
func (mpcc *MIDIProgramChangeCreate) Id() string {
return mpcc.config.Id
}
func (mpcc *MIDIProgramChangeCreate) Type() string {
return mpcc.config.Type
}
+4
View File
@@ -81,6 +81,10 @@ func (mo *ModuleOutput) Process(ctx context.Context, wrappedPayload common.Wrapp
return wrappedPayload, nil
}
func (mo *ModuleOutput) Id() string {
return mo.config.Id
}
func (mo *ModuleOutput) Type() string {
return mo.config.Type
}
+4
View File
@@ -157,6 +157,10 @@ func (omc *OSCMessageCreate) Process(ctx context.Context, wrappedPayload common.
return wrappedPayload, nil
}
func (omc *OSCMessageCreate) Id() string {
return omc.config.Id
}
func (omc *OSCMessageCreate) Type() string {
return omc.config.Type
}
+4
View File
@@ -52,6 +52,10 @@ func (omd *OSCMessageDecode) Process(ctx context.Context, wrappedPayload common.
return wrappedPayload, nil
}
func (omd *OSCMessageDecode) Id() string {
return omd.config.Id
}
func (omd *OSCMessageDecode) Type() string {
return omd.config.Type
}
+4
View File
@@ -42,6 +42,10 @@ func (ome *OSCMessageEncode) Process(ctx context.Context, wrappedPayload common.
return wrappedPayload, nil
}
func (ome *OSCMessageEncode) Id() string {
return ome.config.Id
}
func (ome *OSCMessageEncode) Type() string {
return ome.config.Type
}
+3 -1
View File
@@ -11,6 +11,7 @@ import (
)
type Processor interface {
Id() string
Type() string
Process(context.Context, common.WrappedPayload) (common.WrappedPayload, error)
}
@@ -35,7 +36,8 @@ func RegisterProcessor(processor ProcessorRegistration) {
processorRegistryMu.Lock()
defer processorRegistryMu.Unlock()
if _, ok := processorRegistry[string(processor.Type)]; ok {
_, exists := processorRegistry[string(processor.Type)]
if exists {
panic(fmt.Sprintf("processor already registered: %s", processor.Type))
}
processorRegistry[string(processor.Type)] = processor
+4
View File
@@ -104,6 +104,10 @@ func (psp *PubSubPublish) Process(ctx context.Context, wrappedPayload common.Wra
return wrappedPayload, nil
}
func (psp *PubSubPublish) Id() string {
return psp.config.Id
}
func (psp *PubSubPublish) Type() string {
return psp.config.Type
}
+4
View File
@@ -68,6 +68,10 @@ func (ri *RouterInput) Process(ctx context.Context, wrappedPayload common.Wrappe
return wrappedPayload, nil
}
func (ri *RouterInput) Id() string {
return ri.config.Id
}
func (ri *RouterInput) Type() string {
return ri.config.Type
}
+4
View File
@@ -65,6 +65,10 @@ func (se *ScriptExpr) Process(ctx context.Context, wrappedPayload common.Wrapped
return wrappedPayload, nil
}
func (se *ScriptExpr) Id() string {
return se.config.Id
}
func (se *ScriptExpr) Type() string {
return se.config.Type
}
+4
View File
@@ -135,6 +135,10 @@ func (sj *ScriptJS) Process(ctx context.Context, wrappedPayload common.WrappedPa
return wrappedPayload, nil
}
func (sj *ScriptJS) Id() string {
return sj.config.Id
}
func (sj *ScriptJS) Type() string {
return sj.config.Type
}
+4
View File
@@ -120,6 +120,10 @@ func (sw *ScriptWASM) Process(ctx context.Context, wrappedPayload common.Wrapped
return wrappedPayload, nil
}
func (sw *ScriptWASM) Id() string {
return sw.config.Id
}
func (sw *ScriptWASM) Type() string {
return sw.config.Type
}
@@ -100,6 +100,10 @@ func (srac *SipResponseAudioCreate) Process(ctx context.Context, wrappedPayload
return wrappedPayload, nil
}
func (srac *SipResponseAudioCreate) Id() string {
return srac.config.Id
}
func (srac *SipResponseAudioCreate) Type() string {
return srac.config.Type
}
@@ -110,6 +110,10 @@ func (srdc *SipResponseDTMFCreate) Process(ctx context.Context, wrappedPayload c
return wrappedPayload, nil
}
func (srdc *SipResponseDTMFCreate) Id() string {
return srdc.config.Id
}
func (srdc *SipResponseDTMFCreate) Type() string {
return srdc.config.Type
}
+4
View File
@@ -65,6 +65,10 @@ func (sc *StringCreate) Process(ctx context.Context, wrappedPayload common.Wrapp
return wrappedPayload, nil
}
func (sc *StringCreate) Id() string {
return sc.config.Id
}
func (sc *StringCreate) Type() string {
return sc.config.Type
}
+4
View File
@@ -37,6 +37,10 @@ func (sd *StringDecode) Process(ctx context.Context, wrappedPayload common.Wrapp
return wrappedPayload, nil
}
func (sd *StringDecode) Id() string {
return sd.config.Id
}
func (sd *StringDecode) Type() string {
return sd.config.Type
}
+4
View File
@@ -36,6 +36,10 @@ func (se *StringEncode) Process(ctx context.Context, wrappedPayload common.Wrapp
return wrappedPayload, nil
}
func (se *StringEncode) Id() string {
return se.config.Id
}
func (se *StringEncode) Type() string {
return se.config.Type
}
+4
View File
@@ -59,6 +59,10 @@ func (ss *StringSplit) Process(ctx context.Context, wrappedPayload common.Wrappe
return wrappedPayload, nil
}
func (ss *StringSplit) Id() string {
return ss.config.Id
}
func (ss *StringSplit) Type() string {
return ss.config.Type
}
+4
View File
@@ -67,6 +67,10 @@ func (sfg *StructFieldGet) Process(ctx context.Context, wrappedPayload common.Wr
return wrappedPayload, nil
}
func (sfg *StructFieldGet) Id() string {
return sfg.config.Id
}
func (sfg *StructFieldGet) Type() string {
return sfg.config.Type
}
+4
View File
@@ -86,6 +86,10 @@ func (smg *StructMethodGet) Process(ctx context.Context, wrappedPayload common.W
return wrappedPayload, nil
}
func (smg *StructMethodGet) Id() string {
return smg.config.Id
}
func (smg *StructMethodGet) Type() string {
return smg.config.Type
}
@@ -17,6 +17,7 @@ func TestArtnetPacketDecodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "artnet.packet.decode",
})
@@ -24,6 +25,10 @@ func TestArtnetPacketDecodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create artnet.packet.decode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("artnet.packet.decode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "artnet.packet.decode" {
t.Fatalf("artnet.packet.decode processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestArtnetPacketEncodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "artnet.packet.encode",
})
@@ -24,6 +25,10 @@ func TestArtnetPacketEncodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create artnet.packet.encode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("artnet.packet.encode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "artnet.packet.encode" {
t.Fatalf("artnet.packet.encode processor has wrong type: %s", processorInstance.Type())
}
+5
View File
@@ -18,6 +18,7 @@ func TestDbQueryFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "db.query",
Params: map[string]any{
"module": "test",
@@ -28,6 +29,10 @@ func TestDbQueryFromRegistry(t *testing.T) {
t.Fatalf("failed to create db.query processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("db.query processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "db.query" {
t.Fatalf("db.query processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestDebugLogFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "debug.log",
})
@@ -23,6 +24,10 @@ func TestDebugLogFromRegistry(t *testing.T) {
t.Fatalf("failed to create debug.log processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("debug.log processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "debug.log" {
t.Fatalf("debug.log processor has wrong type: %s", processorInstance.Type())
}
@@ -16,12 +16,17 @@ func TestFilterChangeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "filter.change",
})
if err != nil {
t.Fatalf("failed to create filter.change processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("filter.change processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "filter.change" {
t.Fatalf("filter.change processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestFilterExprFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "filter.expr",
Params: map[string]any{
"expression": "foo + bar",
@@ -25,6 +26,10 @@ func TestFilterExprFromRegistry(t *testing.T) {
t.Fatalf("failed to create filter.expr processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("filter.expr processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "filter.expr" {
t.Fatalf("filter.expr processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestFilterRateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "filter.rate",
Params: map[string]any{
"rate": 1,
@@ -25,6 +26,10 @@ func TestFilterRateFromRegistry(t *testing.T) {
t.Fatalf("failed to create filter.rate processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("filter.rate processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "filter.rate" {
t.Fatalf("filter.rate processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestFilterRegexFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "filter.regex",
Params: map[string]any{
"pattern": "hello",
@@ -25,6 +26,10 @@ func TestFilterRegexFromRegistry(t *testing.T) {
t.Fatalf("failed to create filter.regex processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("filter.regex processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "filter.regex" {
t.Fatalf("filter.regex processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestFloatParseFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "float.parse",
})
@@ -23,6 +24,9 @@ func TestFloatParseFromRegistry(t *testing.T) {
t.Fatalf("failed to create float.parse processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("float.parse processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "float.parse" {
t.Fatalf("float.parse processor has wrong type: %s", processorInstance.Type())
}
@@ -15,6 +15,7 @@ func TestFloatRandomFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "float.random",
Params: map[string]any{
"min": 1.0,
@@ -26,6 +27,10 @@ func TestFloatRandomFromRegistry(t *testing.T) {
t.Fatalf("failed to create float.random processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("float.random processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "float.random" {
t.Fatalf("float.random processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestFreeDCreateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "freed.create",
Params: map[string]any{
"id": "0",
@@ -35,6 +36,10 @@ func TestFreeDCreateFromRegistry(t *testing.T) {
t.Fatalf("failed to create freed.create processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("freed.create processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "freed.create" {
t.Fatalf("freed.create processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestFreeDDecodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "freed.decode",
})
@@ -24,6 +25,10 @@ func TestFreeDDecodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create freed.decode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("freed.decode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "freed.decode" {
t.Fatalf("freed.decode processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestFreeDEncodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "freed.encode",
})
@@ -24,6 +25,10 @@ func TestFreeDEncodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create freed.encode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("freed.encode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "freed.encode" {
t.Fatalf("freed.encode processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestHTTPRequestCreateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "http.request.do",
Params: map[string]any{
"method": "GET",
@@ -27,6 +28,10 @@ func TestHTTPRequestCreateFromRegistry(t *testing.T) {
t.Fatalf("failed to create http.request.do processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("http.request.do processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "http.request.do" {
t.Fatalf("http.request.do processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestHTTPResponseCreateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "http.response.create",
Params: map[string]any{
"status": 200,
@@ -27,6 +28,10 @@ func TestHTTPResponseCreateFromRegistry(t *testing.T) {
t.Fatalf("failed to create http.response.create processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("http.response.create processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "http.response.create" {
t.Fatalf("http.response.create processor has wrong type: %s", processorInstance.Type())
}
@@ -16,6 +16,7 @@ func TestIntParseFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "int.parse",
})
@@ -23,6 +24,10 @@ func TestIntParseFromRegistry(t *testing.T) {
t.Fatalf("failed to create int.parse processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("int.parse processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "int.parse" {
t.Fatalf("int.parse processor has wrong type: %s", processorInstance.Type())
}
@@ -15,6 +15,7 @@ func TestIntRandomFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "int.random",
Params: map[string]any{
"min": 1,
@@ -26,6 +27,10 @@ func TestIntRandomFromRegistry(t *testing.T) {
t.Fatalf("failed to create int.random processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("int.random processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "int.random" {
t.Fatalf("int.random processor has wrong type: %s", processorInstance.Type())
}
@@ -15,6 +15,7 @@ func TestIntScaleFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "int.scale",
Params: map[string]any{
"inMin": 0,
@@ -28,6 +29,10 @@ func TestIntScaleFromRegistry(t *testing.T) {
t.Fatalf("failed to create int.scale processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("int.scale processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "int.scale" {
t.Fatalf("int.scale processor has wrong type: %s", processorInstance.Type())
}
@@ -17,12 +17,17 @@ func TestJsonDecodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "json.decode",
})
if err != nil {
t.Fatalf("failed to create json.decode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("json.decode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "json.decode" {
t.Fatalf("json.decode processor has wrong type: %s", processorInstance.Type())
}
@@ -18,12 +18,17 @@ func TestJsonEncodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "json.encode",
})
if err != nil {
t.Fatalf("failed to create json.encode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("json.encode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "json.encode" {
t.Fatalf("json.encode processor has wrong type: %s", processorInstance.Type())
}
+5
View File
@@ -17,6 +17,7 @@ func TestKvGetFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "kv.get",
Params: map[string]any{
"module": "test",
@@ -27,6 +28,10 @@ func TestKvGetFromRegistry(t *testing.T) {
t.Fatalf("failed to create kv.get processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("kv.get processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "kv.get" {
t.Fatalf("kv.get processor has wrong type: %s", processorInstance.Type())
}
+4
View File
@@ -17,6 +17,7 @@ func TestKvSetFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "kv.set",
Params: map[string]any{
"module": "test",
@@ -27,6 +28,9 @@ func TestKvSetFromRegistry(t *testing.T) {
t.Fatalf("failed to create kv.set processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("kv.set processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "kv.set" {
t.Fatalf("kv.set processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestMIDIControlChangeCreateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "midi.control_change.create",
Params: map[string]any{
"channel": "1",
@@ -29,6 +30,10 @@ func TestMIDIControlChangeCreateFromRegistry(t *testing.T) {
t.Fatalf("failed to create midi.control_change.create processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("midi.control_change.create processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "midi.control_change.create" {
t.Fatalf("midi.control_change.create processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestMIDIMessageDecodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "midi.message.decode",
})
@@ -24,6 +25,10 @@ func TestMIDIMessageDecodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create midi.message.decode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("midi.message.decode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "midi.message.decode" {
t.Fatalf("midi.message.decode processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestMIDIMessageEncodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "midi.message.encode",
})
@@ -24,6 +25,10 @@ func TestMIDIMessageEncodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create midi.message.encode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("midi.message.encode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "midi.message.encode" {
t.Fatalf("midi.message.encode processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestMIDIMessageUnpackFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "midi.message.unpack",
})
@@ -24,6 +25,9 @@ func TestMIDIMessageUnpackFromRegistry(t *testing.T) {
t.Fatalf("failed to create midi.message.unpack processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("midi.message.unpack processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "midi.message.unpack" {
t.Fatalf("midi.message.unpack processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestMIDINoteOffCreteaFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "midi.note_off.create",
Params: map[string]any{
"channel": "1",
@@ -28,6 +29,9 @@ func TestMIDINoteOffCreteaFromRegistry(t *testing.T) {
if err != nil {
t.Fatalf("failed to create midi.note_off.create processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("midi.note_off.create processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "midi.note_off.create" {
t.Fatalf("midi.note_off.create processor has wrong type: %s", processorInstance.Type())
@@ -17,6 +17,7 @@ func TestMIDINoteOnCreateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "midi.note_on.create",
Params: map[string]any{
"channel": "1",
@@ -29,6 +30,10 @@ func TestMIDINoteOnCreateFromRegistry(t *testing.T) {
t.Fatalf("failed to create midi.note_on.create processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("midi.note_on.create processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "midi.note_on.create" {
t.Fatalf("midi.note_on.create processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestMIDIProgramChangeCreateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "midi.program_change.create",
Params: map[string]any{
"channel": "1",
@@ -28,6 +29,10 @@ func TestMIDIProgramChangeCreateFromRegistry(t *testing.T) {
t.Fatalf("failed to create midi.program_change.create processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("midi.program_change.create processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "midi.program_change.create" {
t.Fatalf("midi.program_change.create processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestModuleOutputFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "module.output",
Params: config.Params{
"module": "test",
@@ -27,6 +28,10 @@ func TestModuleOutputFromRegistry(t *testing.T) {
t.Fatalf("failed to create module.output processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("module.output processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "module.output" {
t.Fatalf("module.output processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestOSCMessageCreateFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "osc.message.create",
Params: map[string]any{
"address": "/test",
@@ -27,6 +28,10 @@ func TestOSCMessageCreateFromRegistry(t *testing.T) {
t.Fatalf("failed to create osc.message.create processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("osc.message.create processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "osc.message.create" {
t.Fatalf("osc.message.create processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestOSCMessageDecodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "osc.message.decode",
})
@@ -24,6 +25,10 @@ func TestOSCMessageDecodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create osc.message.decode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("osc.message.decode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "osc.message.decode" {
t.Fatalf("osc.message.decode processor has wrong type: %s", processorInstance.Type())
}
@@ -17,6 +17,7 @@ func TestOSCMessageEncodeFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "osc.message.encode",
})
@@ -24,6 +25,10 @@ func TestOSCMessageEncodeFromRegistry(t *testing.T) {
t.Fatalf("failed to create osc.message.encode processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("osc.message.encode processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "osc.message.encode" {
t.Fatalf("osc.message.encode processor has wrong type: %s", processorInstance.Type())
}
+23 -3
View File
@@ -10,7 +10,8 @@ import (
func TestProcessorBadRegistrationNoType(t *testing.T) {
defer func() {
if r := recover(); r == nil {
r := recover()
if r == nil {
t.Fatalf("processor registration should have panicked but did not")
}
}()
@@ -25,7 +26,8 @@ func TestProcessorBadRegistrationNoType(t *testing.T) {
func TestProcessorBadRegistrationNoNew(t *testing.T) {
defer func() {
if r := recover(); r == nil {
r := recover()
if r == nil {
t.Fatalf("processor registration should have panicked but did not")
}
}()
@@ -38,7 +40,8 @@ func TestProcessorBadRegistrationNoNew(t *testing.T) {
func TestProcessorBadRegistrationExistingType(t *testing.T) {
defer func() {
if r := recover(); r == nil {
r := recover()
if r == nil {
t.Fatalf("processor registration should have panicked but did not")
}
}()
@@ -50,3 +53,20 @@ func TestProcessorBadRegistrationExistingType(t *testing.T) {
},
})
}
func TestTestProcessor(t *testing.T) {
testProcessor := &test.TestProcessor{
Config: config.ProcessorConfig{
Id: "test-id",
Type: "test",
},
}
if testProcessor.Id() != "test-id" {
t.Fatalf("test processor has wrong id: %s", testProcessor.Id())
}
if testProcessor.Type() != "test" {
t.Fatalf("test processor has wrong type: %s", testProcessor.Type())
}
}
@@ -18,6 +18,7 @@ func TestPubSubPublishFromRegistry(t *testing.T) {
}
processorInstance, err := registration.New(config.ProcessorConfig{
Id: "test-id",
Type: "pubsub.publish",
Params: map[string]any{
"module": "test",
@@ -28,6 +29,10 @@ func TestPubSubPublishFromRegistry(t *testing.T) {
t.Fatalf("failed to create pubsub.publish processor: %s", err)
}
if processorInstance.Id() != "test-id" {
t.Fatalf("pubsub.publish processor has wrong id: %s", processorInstance.Id())
}
if processorInstance.Type() != "pubsub.publish" {
t.Fatalf("pubsub.publish processor has wrong type: %s", processorInstance.Type())
}

Some files were not shown because too many files have changed in this diff Show More