mirror of
https://github.com/strukturag/nextcloud-spreed-signaling
synced 2026-03-14 14:35:44 +01:00
112 KiB
112 KiB
Changelog
All notable changes to this project will be documented in this file.
2.1.1 - 2026-03-12
Changed
- Drop support for Golang 1.24 #1197
- Simplify error type checks. #1190
- readme: Add example websocket urls for Janus events. #1191
- CI: Test with Golang 1.26 #1196
- CI: Use "docker compose" instead of downloading docker-compose binary. #1203
- docker: pin spreedbackend uid and add user group #1202
- Bump module version to "v2" so versions 2.x can be imported by others. #1211
- Update generated files for v2 module. #1218
- Simplify async notifier code #1220
Fixed
- Update "go.opentelemetry.io/otel/sdk" to fix "GO-2026-4394". #1207
- Don't limit size of received Janus events. #1208
Dependencies
- Bump google.golang.org/grpc/cmd/protoc-gen-go-grpc from 1.6.0 to 1.6.1 #1189
- Bump markdown from 3.10.1 to 3.10.2 in /docs #1192
- Bump github.com/pion/dtls/v3 from 3.0.10 to 3.1.0 #1193
- Bump golang from 1.25-alpine to 1.26-alpine in /docker/proxy #1194
- Bump golang from 1.25-alpine to 1.26-alpine in /docker/server #1195
- Bump google.golang.org/grpc from 1.78.0 to 1.79.1 #1201
- Bump github.com/pion/dtls/v3 from 3.1.0 to 3.1.1 #1199
- Bump the etcd group with 4 updates #1200
- Bump github.com/pion/sdp/v3 from 3.0.17 to 3.0.18 #1204
- Bump github.com/pion/ice/v4 from 4.2.0 to 4.2.1 #1205
- Bump github.com/nats-io/nats.go from 1.48.0 to 1.49.0 #1206
- Bump the artifacts group with 2 updates #1209
- Bump module version to "v2" so versions 2.x can be imported by others. #1211
- Bump docker/login-action from 3 to 4 #1212
- Bump docker/setup-qemu-action from 3 to 4 #1213
- Bump docker/metadata-action from 5 to 6 #1214
- Bump docker/setup-buildx-action from 3 to 4 #1215
- Bump docker/build-push-action from 6 to 7 #1217
- Bump google.golang.org/grpc from 1.79.1 to 1.79.2 #1216
- Bump github.com/nats-io/nats-server/v2 from 2.12.4 to 2.12.5 #1219
2.1.0 - 2026-02-03
Added
- Introduce "internal" package #1082
- Add etcd TLS tests. #1084
- Add missing stats registration. #1086
- Add commands to the readme on how to build Docker images locally. #1088
- Use gvisor checklocks for static lock analysis. #1078
- Support relaying of chat messages. #868
- Return bandwidth information in room responses. #1099
- Expose real bandwidth usage through metrics. #1102
- Add type to store bandwidths. #1108
- Add more WebRTC-related metrics #1109
- Add metrics about client bytes/messages sent/received. #1134
- Introduce transient session data. #1120
- Include "version.txt" in tarball. #1142
- CI: Also upload images to quay.io/strukturag/nextcloud-spreed-signaling #1159
- Add more metrics about sessions in calls. #1183
Changed
- dockerfile: create system user instead of normal user, avoid home directory #1058
- Use "testing/synctest" to simplify timing-dependent tests. #1067
- Add dedicated types for different session ids. #1066
- Move "StringMap" class to api module. #1077
- CI: Disable "stdversion" check of govet. #1079
- CI: Use codecov components. #1080
- Add interface for method "GetInCall". #1083
- Make LruCache typed through generics. #1085
- Protect access to the debug pprof handlers. #1094
- Don't use environment to keep per-test properties. #1106
- Add formatting to bandwidth values. #1114
- Don't format zero bandwidth as "unlimited". #1115
- CI: Split test jobs to speed up total actions time. #1118
- Stop using global logger #1117
- CI: Split tarball jobs to speed up total actions time. #1129
- Update client code #1130
- Don't use fmt.Sprintf where not necessary. #1131
- Use test-related logger for embedded etcd. #1132
- No need to use list of pointers, use objects directly. #1133
- Generate shorter session ids. #1140
- client: Include version, optimize JSON processing. #1143
- Enable more linters #1145
- Parallelize more tests. #1149
- Move logging code to separate package. #1150
- Close subscriber synchronously on errors. #1152
- CI: Run "modernize" with Go 1.25 #1160
- CI: Always use latest patch release for govuln checks. #1161
- Process all NATS messages for same target from single goroutine. #1165
- CI: Process files in all folders with licensecheck. #1169
- CI: Run checklocks with Go 1.25 #1170
- Refactor code into packages #1151
- Remove unused testing code. #1174
- checklocks: Remove ignore since generics are supported now. #1184
- Support receiving and forwarding multiple chat messages from Talk. #1185
- Move tests closer to code being checked #1186
Fixed
- A proxy connection is only connected after a hello has been processed. #1071
- Fix URL to send federated ping requests. #1081
- Reconnect proxy connection even if shutdown was scheduled before. #1100
- Federation cleanup fixes. #1105
- Also rewrite token in comment for federated chat relay. #1112
- Fix transient data for clustered setups. #1121
- Fix initial transient data in clustered setups #1127
- fix(docs): already_joined error response #1126
- Fix storing initial data when clustered. #1128
- Fix flaky tests that fail under load. #1153
Dependencies
- Bump google.golang.org/grpc from 1.74.2 to 1.75.0 #1054
- Bump github.com/nats-io/nats.go from 1.44.0 to 1.45.0 #1057
- Bump google.golang.org/protobuf from 1.36.7 to 1.36.8 #1056
- Bump github.com/stretchr/testify from 1.10.0 to 1.11.0 #1059
- Bump github.com/stretchr/testify from 1.11.0 to 1.11.1 #1060
- Bump markdown from 3.8.2 to 3.9 in /docs #1065
- Bump github.com/pion/sdp/v3 from 3.0.15 to 3.0.16 #1061
- Bump github.com/prometheus/client_golang from 1.23.0 to 1.23.2 #1064
- Bump actions/setup-go from 5 to 6 #1062
- Bump google.golang.org/grpc from 1.75.0 to 1.75.1 #1070
- Bump google.golang.org/protobuf from 1.36.8 to 1.36.9 #1069
- Bump github.com/nats-io/nats-server/v2 from 2.11.8 to 2.11.9 #1068
- Bump github.com/mailru/easyjson from 0.9.0 to 0.9.1 #1072
- Bump the etcd group with 4 updates #1073
- Bump github.com/nats-io/nats.go from 1.45.0 to 1.46.0 #1076
- Bump github.com/nats-io/nats-server/v2 from 2.11.9 to 2.12.0 #1075
- Bump github.com/nats-io/nats.go from 1.46.0 to 1.46.1 #1087
- Bump google.golang.org/grpc from 1.75.1 to 1.76.0 #1092
- Bump github/codeql-action from 3 to 4 #1093
- Bump peter-evans/create-or-update-comment from 4 to 5 #1090
- Bump google.golang.org/protobuf from 1.36.9 to 1.36.10 #1089
- Bump github.com/nats-io/nats.go from 1.46.1 to 1.47.0 #1096
- Bump github.com/nats-io/nats-server/v2 from 2.12.0 to 2.12.1 #1095
- Bump the artifacts group with 2 updates #1101
- Bump markdown from 3.9 to 3.10 in /docs #1104
- Bump golangci/golangci-lint-action from 8.0.0 to 9.0.0 #1110
- Bump the etcd group with 4 updates #1111
- Bump github.com/nats-io/nats-server/v2 from 2.12.1 to 2.12.2 #1113
- Bump google.golang.org/grpc from 1.76.0 to 1.77.0 #1116
- Bump golang.org/x/crypto from 0.43.0 to 0.45.0 #1119
- Bump go.uber.org/zap from 1.27.0 to 1.27.1 #1123
- Bump actions/checkout from 5 to 6 #1124
- Bump golangci/golangci-lint-action from 9.0.0 to 9.1.0 #1125
- Bump github.com/pion/ice/v4 from 4.0.10 to 4.0.11 #1135
- Bump google.golang.org/grpc/cmd/protoc-gen-go-grpc from 1.5.1 to 1.6.0 #1136
- Bump github.com/pion/ice/v4 from 4.0.11 to 4.0.12 #1138
- Bump golangci/golangci-lint-action from 9.1.0 to 9.2.0 #1144
- Bump github.com/pion/ice/v4 from 4.0.12 to 4.0.13 #1146
- Bump actions/cache from 4 to 5 #1157
- Bump google.golang.org/protobuf from 1.36.10 to 1.36.11 #1156
- Bump github.com/pion/ice/v4 from 4.0.13 to 4.1.0 #1155
- Bump the artifacts group with 2 updates #1154
- Bump github.com/nats-io/nats.go from 1.47.0 to 1.48.0 #1163
- Bump the etcd group with 4 updates #1162
- Bump github.com/nats-io/nats-server/v2 from 2.12.2 to 2.12.3 #1164
- Bump github.com/pion/sdp/v3 from 3.0.16 to 3.0.17 #1166
- Bump google.golang.org/grpc from 1.77.0 to 1.78.0 #1167
- Bump github.com/pion/ice/v4 from 4.1.0 to 4.2.0 #1171
- Bump sphinx-rtd-theme from 3.0.2 to 3.1.0 in /docs #1172
- Bump sphinx from 8.2.3 to 9.1.0 in /docs #1168
- Bump markdown from 3.10 to 3.10.1 in /docs #1177
- Bump github.com/nats-io/nats-server/v2 from 2.12.3 to 2.12.4 #1179
- Bump github.com/golang-jwt/jwt/v5 from 5.3.0 to 5.3.1 #1182
2.0.4 - 2025-08-18
Added
- Comment / document possible error responses. #1004
- Support multiple sessions for dialout. #1005
- Support filtering candidates received by clients. #1000
- Describe how to pass caller information for outgoing calls. #1019
- Support multiple urls per backend #770
- Return connection / publisher tokens for remote publishers. #1025
Changed
- Drop support for Go 1.23 #1049
- Only forward actor id / -type in "addsession" request if both are given. #1009
- Use backend id in backend client stats to match other stats. #1020
- Remove debug output. #1022
- Only forward actor details in leave virtual sessions request if both are given. #1026
- Delete (unused) proxy publisher/subscriber created after local timeout. #1032
- modernize: Replace "interface{}" with "any". #1033
- Add type for string maps. #1034
- CI: Migrate to codecov. #1037 #1038
- Use testify assertions to check expected fields / values internally. #1035
- CI: Test with Golang 1.25 #1048
- Modernize Go code and check from CI. #1050
- Test "HasAnyPermission" method. #1051
- Use standard library where possible. #1052
Fixed
- Fix deadlock when setting transient data while removing listener. #992
- Fixes for file watcher special cases #1017
- Fix updating metric "signaling_mcu_subscribers" in various error cases. #1027
Dependencies
- Bump google.golang.org/grpc from 1.72.0 to 1.72.1 #989
- Bump github.com/pion/sdp/v3 from 3.0.11 to 3.0.12 #991
- Bump the etcd group with 4 updates #990
- Bump github.com/nats-io/nats-server/v2 from 2.11.3 to 2.11.4 #993
- Bump github.com/pion/sdp/v3 from 3.0.12 to 3.0.13 #994
- Bump google.golang.org/grpc from 1.72.1 to 1.72.2 #995
- Bump github.com/nats-io/nats.go from 1.42.0 to 1.43.0 #999
- Bump google.golang.org/grpc from 1.72.2 to 1.73.0 #1001
- Bump the etcd group with 4 updates #1002
- Bump markdown from 3.8 to 3.8.2 in /docs #1008
- Bump github.com/pion/sdp/v3 from 3.0.13 to 3.0.14 #1006
- Bump github.com/nats-io/nats-server/v2 from 2.11.4 to 2.11.5 #1010
- Bump github.com/nats-io/nats-server/v2 from 2.11.5 to 2.11.6 #1011
- Bump the etcd group with 4 updates #1015
- Bump github.com/golang-jwt/jwt/v5 from 5.2.2 to 5.2.3 #1016
- Bump google.golang.org/grpc from 1.73.0 to 1.74.0 #1018
- Bump github.com/pion/sdp/v3 from 3.0.14 to 3.0.15 #1021
- Bump the etcd group with 4 updates #1023
- Bump google.golang.org/grpc from 1.74.0 to 1.74.2 #1024
- Bump the etcd group with 4 updates #1028
- Bump github.com/nats-io/nats.go from 1.43.0 to 1.44.0 #1031
- Bump github.com/golang-jwt/jwt/v5 from 5.2.3 to 5.3.0 #1036
- Bump github.com/prometheus/client_golang from 1.22.0 to 1.23.0 #1039
- Bump github.com/nats-io/nats-server/v2 from 2.11.6 to 2.11.7 #1040
- Bump google.golang.org/protobuf from 1.36.6 to 1.36.7 #1043
- Bump actions/checkout from 4 to 5 #1044
- Bump actions/download-artifact from 4 to 5 in the artifacts group #1042
- Bump golang from 1.24-alpine to 1.25-alpine in /docker/server #1047
- Bump golang from 1.24-alpine to 1.25-alpine in /docker/proxy #1046
- Bump github.com/nats-io/nats-server/v2 from 2.11.7 to 2.11.8 #1053
2.0.3 - 2025-05-07
Added
- Allow using environment variables for sessions and clients secrets #910
- Allow using environment variables for backend secrets #912
- Add serverinfo API #937
- Add metrics for backend client requests. #973
Changed
- Drop support for Go 1.22 #969
- Do not log nats url credentials #911
- Migrate cache-control parsing to https://github.com/pquerna/cachecontrol #916
- CI: Test with Golang 1.24 #922
- Add "/usr/lib64" to systemd ExecPath #963
- Improve memory allocations #870
- Speedup tests #972
- docker: Make more settings configurable #980
- Add jitter to reconnect intervals. #988
Fixed
- nats: Reconnect client indefinitely. #935
- Explicitly set TMPDIR to ensure that it is an executable path #956
- Close subscribers on errors during initial connection. #959
- Fix formatting of errors in "assert.Fail" calls. #970
- Fix race condition in flaky certificate/CA reload tests. #971
- Fix flaky test "Test_GrpcClients_DnsDiscovery". #976
- Fix subscribers not closed when publisher is closed in Janus 1.x #986
- Close subscriber if remote publisher was closed. #987
Dependencies
- Bump google.golang.org/grpc from 1.69.4 to 1.70.0 #904
- Bump the etcd group with 4 updates #907
- Bump coverallsapp/github-action from 2.3.4 to 2.3.6 #909
- Bump google.golang.org/protobuf from 1.36.3 to 1.36.4 #908
- Bump github.com/nats-io/nats-server/v2 from 2.10.24 to 2.10.25 #903
- Bump golangci/golangci-lint-action from 6.2.0 to 6.3.0 #913
- Bump github.com/nats-io/nats.go from 1.38.0 to 1.39.0 #915
- Bump golangci/golangci-lint-action from 6.3.0 to 6.3.2 #918
- Bump google.golang.org/protobuf from 1.36.4 to 1.36.5 #917
- build(deps): bump golang from 1.23-alpine to 1.24-alpine in /docker/proxy #921
- build(deps): bump golang from 1.23-alpine to 1.24-alpine in /docker/server #919
- build(deps): bump sphinx from 8.1.3 to 8.2.0 in /docs #928
- build(deps): bump github.com/prometheus/client_golang from 1.20.5 to 1.21.0 #927
- build(deps): bump sphinx from 8.2.0 to 8.2.1 in /docs #929
- build(deps): bump github.com/nats-io/nats.go from 1.39.0 to 1.39.1 #926
- build(deps): bump sphinx from 8.2.1 to 8.2.3 in /docs #932
- build(deps): bump google.golang.org/grpc from 1.70.0 to 1.71.0 #933
- build(deps): bump golangci/golangci-lint-action from 6.3.3 to 6.5.0 #925
- build(deps): bump jinja2 from 3.1.5 to 3.1.6 in /docs #938
- build(deps): bump github.com/pion/sdp/v3 from 3.0.10 to 3.0.11 #939
- build(deps): bump golangci/golangci-lint-action from 6.5.0 to 6.5.1 #940
- build(deps): bump golangci/golangci-lint-action from 6.5.1 to 6.5.2 #946
- build(deps): bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 #948
- build(deps): bump github.com/golang-jwt/jwt/v4 from 4.5.1 to 4.5.2 #949
- build(deps): bump golangci/golangci-lint-action from 6.5.2 to 7.0.0 #951
- build(deps): bump google.golang.org/protobuf from 1.36.5 to 1.36.6 #952
- Bump markdown from 3.7 to 3.8 in /docs #966
- Bump golang.org/x/crypto from 0.32.0 to 0.35.0 #967
- Bump github.com/nats-io/nats.go from 1.39.1 to 1.41.1 #964
- Bump google.golang.org/grpc from 1.71.0 to 1.71.1 #957
- build(deps): bump golang.org/x/net from 0.34.0 to 0.36.0 #941
- build(deps): bump the etcd group with 4 updates #936
- Bump github.com/nats-io/nats-server/v2 from 2.10.25 to 2.11.1 #962
- Bump github.com/prometheus/client_golang from 1.21.1 to 1.22.0 #974
- Bump github.com/fsnotify/fsnotify from 1.8.0 to 1.9.0 #975
- Bump google.golang.org/grpc from 1.71.1 to 1.72.0 #978
- Bump github.com/nats-io/nats.go from 1.41.1 to 1.41.2 #977
- Bump github.com/nats-io/nats-server/v2 from 2.11.1 to 2.11.3 #982
- Bump github.com/nats-io/nats.go from 1.41.2 to 1.42.0 #983
- Bump golangci/golangci-lint-action from 7.0.0 to 8.0.0 #985
2.0.2 - 2025-01-22
Added
- Support passing codec parameters when creating publishers. #853
- Support recipient "call". #859
- Include client features in "join" events. #879
- Include features of federated clients in "join" events. #882
- Check version of cluster nodes and log warning if different. #898
- Add feature id for supporting codec parameters in offer. #902
Changed
- Drop support for Go 1.21 #858
- Don't redefine built-in id "max". #863
- Notify remote to stop publishing when last local subscriber is closed. #860
- Add testcase when joining unknown room. #869
- docker: apply Docker image versioning #873
- docker: Use bind-mount for "gnatsd.conf" #881
- docker: Upgrade Janus and its dependencies #874
- make: Pin version of "google.golang.org/protobuf/cmd/protoc-gen-go". #897
- make: Optimize generated easyjson files. #899
Fixed
- Prevent duplicate virtual sessions in participant update events. #851
- proxy: Close client connection if session is expired / closed. #852
Dependencies
- Bump github.com/fsnotify/fsnotify from 1.7.0 to 1.8.0 #854
- Bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 #856
- Migrate to github.com/golang-jwt/jwt/v5 #857
- Bump the etcd group with 4 updates #817
- Bump sphinx-rtd-theme from 3.0.1 to 3.0.2 in /docs #865
- Bump the etcd group with 4 updates #864
- Bump google.golang.org/protobuf from 1.35.1 to 1.35.2 #866
- Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 #872
- Bump github.com/nats-io/nats-server/v2 from 2.10.22 to 2.10.23 #878
- Bump alpine from 3.20 to 3.21 in /docker/janus #876
- Bump golang.org/x/crypto from 0.30.0 to 0.31.0 #880
- Bump google.golang.org/grpc from 1.67.1 to 1.68.1 #875
- Bump google.golang.org/protobuf from 1.35.2 to 1.36.0 #884
- Bump github.com/mailru/easyjson from 0.7.7 to 0.9.0 #885
- Bump github.com/nats-io/nats.go from 1.37.0 to 1.38.0 #887
- Bump google.golang.org/grpc from 1.68.1 to 1.69.2 #888
- Bump github.com/nats-io/nats-server/v2 from 2.10.23 to 2.10.24 #886
- Bump jinja2 from 3.1.4 to 3.1.5 in /docs #889
- Bump google.golang.org/protobuf from 1.36.0 to 1.36.1 #890
- Bump google.golang.org/grpc from 1.69.2 to 1.69.4 #894
- Bump github.com/pion/sdp/v3 from 3.0.9 to 3.0.10 #895
- Bump google.golang.org/protobuf from 1.36.1 to 1.36.3 #896
- Bump golangci/golangci-lint-action from 6.1.1 to 6.2.0 #900
- Bump golang.org/x/net from 0.30.0 to 0.33.0 #901
2.0.1 - 2024-10-28
Added
- docker: Support adding CA certificates to system trust store. #825
- proxy: Add timeouts to requests to Janus and cancel if session is closed. #847
Changed
- make: Rename "distclean" target to "clean-generated". #814
- Don't update capabilities concurrently from same host. #833
- make: Improve dependency tracking. #848
- Encode session ids using protobufs. #850
Fixed
- Fetch country information for continentmap from correct location. #849
Dependencies
- Bump github.com/prometheus/client_golang from 1.20.2 to 1.20.3 #815
- Bump github.com/prometheus/client_golang from 1.20.3 to 1.20.4 #823
- Bump google.golang.org/grpc from 1.66.0 to 1.66.2 #818
- Bump google.golang.org/grpc from 1.66.2 to 1.67.1 #827
- Bump golangci/golangci-lint-action from 6.1.0 to 6.1.1 #829
- Bump sphinx-rtd-theme from 2.0.0 to 3.0.0 in /docs #830
- Bump sphinx from 7.4.7 to 8.0.2 in /docs #789
- Bump github.com/nats-io/nats-server/v2 from 2.10.20 to 2.10.21 #826
- Bump google.golang.org/protobuf from 1.34.2 to 1.35.1 #831
- Bump jandelgado/gcov2lcov-action from 1.0.9 to 1.1.1 #840
- Bump sphinx-rtd-theme from 3.0.0 to 3.0.1 in /docs #834
- Bump github.com/prometheus/client_golang from 1.20.4 to 1.20.5 #839
- Bump github.com/nats-io/nats-server/v2 from 2.10.21 to 2.10.22 #843
- Bump sphinx from 8.0.2 to 8.1.3 in /docs #838
- Bump coverallsapp/github-action from 2.3.0 to 2.3.4 #846
2.0.0 - 2024-09-03
Added
- Federation support #776
- CI: Add job to update generated files. #790
- Expose backend session limits through prometheus stats. #792
- CI: Test with Golang 1.23 #805
Changed
- Keep generated files in the repository. #781
- Improve caching when fetching capabilities. #780
- Enforce a minimum duration to cache capabilities. #783
- docs: Use the latest LTS of Ubuntu and Python 3.12. #791
- CI: Push generated code from service account. #793
- CI: Only build code if token exists (i.e. with Dependabot). #794
- CI: Always do a full build of generated files. #795
- Remove compatibility code for Go < 1.21. #806
- Send ping requests to local instance for federated sessions. #808
Dependencies
- Bump sphinx from 7.3.7 to 7.4.4 in /docs #773
- Bump google.golang.org/grpc from 1.64.0 to 1.65.0 #769
- Bump sphinx from 7.4.4 to 7.4.5 in /docs #774
- Bump github.com/nats-io/nats-server/v2 from 2.10.17 to 2.10.18 #775
- Bump sphinx from 7.4.5 to 7.4.6 in /docs #777
- Bump sphinx from 7.4.6 to 7.4.7 in /docs #779
- Bump the etcd group with 4 updates #778
- Bump golangci/golangci-lint-action from 6.0.1 to 6.1.0 #788
- Bump google.golang.org/grpc/cmd/protoc-gen-go-grpc from 1.4.0 to 1.5.1 #784
- Bump markdown from 3.6 to 3.7 in /docs #801
- Bump github.com/prometheus/client_golang from 1.19.1 to 1.20.2 #803
- Bump golang from 1.22-alpine to 1.23-alpine in /docker/server #798
- Bump golang from 1.22-alpine to 1.23-alpine in /docker/proxy #799
- Bump google.golang.org/grpc from 1.65.0 to 1.66.0 #810
- Bump github.com/nats-io/nats-server/v2 from 2.10.18 to 2.10.19 #809
- Bump github.com/nats-io/nats.go from 1.36.0 to 1.37.0 #797
- Bump mkdocs from 1.6.0 to 1.6.1 in /docs #812
- Bump github.com/nats-io/nats-server/v2 from 2.10.19 to 2.10.20 #813
1.3.2 - 2024-07-02
Added
- Throttle /64 subnets for IPv6. #750
- grpc: Replace environment variables in listening address. #751
- Include list of supported features in websocket response. #755
Changed
- Support reloading more settings #752
- make: Don't update CLI tools before installing. #754
- Don't throttle valid but expired resume requests. #765
- Update badge for build status to new URL. #766
Fixed
- Prevent overflows when calculating throttle delay. #764
Dependencies
- Bump the etcd group with 4 updates #753
- Bump github.com/nats-io/nats.go from 1.35.0 to 1.36.0 #761
- Bump google.golang.org/grpc/cmd/protoc-gen-go-grpc from 1.3.0 to 1.4.0 #756
- Bump github.com/gorilla/websocket from 1.5.1 to 1.5.3 #760
- Bump google.golang.org/protobuf from 1.34.1 to 1.34.2 #759
- Bump github.com/oschwald/maxminddb-golang from 1.12.0 to 1.13.0 #757
- Bump docker/build-push-action from 5 to 6 #762
- Bump github.com/oschwald/maxminddb-golang from 1.13.0 to 1.13.1 #767
- Bump github.com/nats-io/nats-server/v2 from 2.10.16 to 2.10.17 #768
1.3.1 - 2024-05-23
Changed
- Bump alpine from 3.19 to 3.20 in /docker/janus #746
- CI: Remove deprecated options from lint workflow. #748
- docker: Update Janus in example image to 1.2.2 #749
- Improve detection of actual client IP. #747
Fixed
- docker: Fix proxy entrypoint. #745
1.3.0 - 2024-05-22
Added
- Support resuming remote sessions #715
- Gracefully shut down signaling server on SIGUSR1. #706
- docker: Add helper scripts to gracefully stop / wait for server. #722
- Support environment variables in some configuration. #721
- Add Context to clients / sessions. #732
- Drop support for Golang 1.20 #737
- CI: Run "govulncheck". #694
- Make trusted proxies configurable and default to loopback / private IPs. #738
- Add support for remote streams (preview) #708
- Add throttler for backend requests #744
Changed
- build(deps): Bump github.com/nats-io/nats.go from 1.34.0 to 1.34.1 #697
- build(deps): Bump google.golang.org/grpc from 1.62.1 to 1.63.0 #699
- build(deps): Bump google.golang.org/grpc from 1.63.0 to 1.63.2 #700
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.12 to 2.10.14 #702
- Include previous value with etcd watch events. #704
- build(deps): Bump go.uber.org/zap from 1.17.0 to 1.27.0 #705
- Improve support for Janus 1.x #669
- build(deps): Bump sphinx from 7.2.6 to 7.3.5 in /docs #709
- build(deps): Bump sphinx from 7.3.5 to 7.3.7 in /docs #712
- build(deps): Bump golang.org/x/net from 0.21.0 to 0.23.0 #711
- Don't keep expiration timestamp in each session. #713
- build(deps): Bump mkdocs from 1.5.3 to 1.6.0 in /docs #714
- Speedup tests by running in parallel #718
- build(deps): Bump golangci/golangci-lint-action from 4.0.0 to 5.0.0 #719
- build(deps): Bump golangci/golangci-lint-action from 5.0.0 to 5.1.0 #720
- build(deps): Bump coverallsapp/github-action from 2.2.3 to 2.3.0 #728
- build(deps): Bump jinja2 from 3.1.3 to 3.1.4 in /docs #726
- build(deps): Bump google.golang.org/protobuf from 1.33.0 to 1.34.1 #725
- build(deps): Bump github.com/prometheus/client_golang from 1.19.0 to 1.19.1 #730
- build(deps): Bump golangci/golangci-lint-action from 5.1.0 to 6.0.1 #729
- build(deps): Bump google.golang.org/grpc from 1.63.2 to 1.64.0 #734
- Validate received SDP earlier. #707
- Log something if mcu publisher / subscriber was closed. #736
- build(deps): Bump the etcd group with 4 updates #693
- build(deps): Bump github.com/nats-io/nats.go from 1.34.1 to 1.35.0 #740
- Don't use unnecessary pointer to "json.RawMessage". #739
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.14 to 2.10.15 #741
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.15 to 2.10.16 #743
Fixed
- Improve detecting renames in file watcher. #698
- Update etcd watch handling. #701
- Prevent goroutine leaks in GRPC tests. #716
- Fix potential race in capabilities test. #731
- Don't log read error after we closed the connection. #735
- Fix lock order inversion when leaving room / publishing room sessions. #742
- Relax "MessageClientMessageData" validation. #733
1.2.4 - 2024-04-03
Added
- Add metrics for current number of HTTP client connections. #668
- Support getting GeoIP DB from db-ip.com for tests. #689
- Use fsnotify to detect file changes #680
- CI: Check dependencies for minimum supported version. #692
Changed
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.9 to 2.10.10 #650
- CI: Also test with Golang 1.22 #651
- build(deps): Bump the etcd group with 4 updates #649
- Improve Makefile #653
- build(deps): Bump google.golang.org/grpc from 1.61.0 to 1.61.1 #659
- build(deps): Bump golangci/golangci-lint-action from 3.7.0 to 4.0.0 #658
- Minor improvements to DNS monitor #663
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.10 to 2.10.11 #662
- build(deps): Bump google.golang.org/grpc from 1.61.1 to 1.62.0 #664
- Support ports in full URLs for DNS monitor. #667
- Calculate proxy load based on maximum bandwidth. #670
- build(deps): Bump github.com/nats-io/nats.go from 1.32.0 to 1.33.1 #661
- build(deps): Bump golang from 1.21-alpine to 1.22-alpine in /docker/server #655
- build(deps): Bump golang from 1.21-alpine to 1.22-alpine in /docker/proxy #656
- docker: Update Janus from 0.11.8 to 0.14.1. #672
- build(deps): Bump alpine from 3.18 to 3.19 in /docker/janus #613
- Reuse backoff waiting code where possible #673
- build(deps): Bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 #674
- Docker improvements #675
- make: Don't update dependencies but use pinned versions. #679
- build(deps): Bump github.com/pion/sdp/v3 from 3.0.6 to 3.0.7 #678
- build(deps): Bump google.golang.org/grpc from 1.62.0 to 1.62.1 #677
- build(deps): Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 #676
- build(deps): Bump github.com/pion/sdp/v3 from 3.0.7 to 3.0.8 #681
- Update source of continentmap to original CSV file. #682
- build(deps): Bump markdown from 3.5.2 to 3.6 in /docs #684
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.11 to 2.10.12 #683
- build(deps): Bump github.com/pion/sdp/v3 from 3.0.8 to 3.0.9 #687
- build(deps): Bump the etcd group with 4 updates #686
- build(deps): Bump github.com/nats-io/nats.go from 1.33.1 to 1.34.0 #685
- Revert "build(deps): Bump the etcd group with 4 updates" #691
- CI: Limit when to run Docker build jobs. #695
- Remove deprecated section on multiple signaling servers from README. #696
Fixed
- Fix race condition when accessing "expected" in proxy_config tests. #652
- Fix deadlock when entry is removed while receiver holds lock in lookup. #654
- Fix flaky "TestProxyConfigStaticDNS". #671
- Fix flaky DnsMonitor test. #690
1.2.3 - 2024-01-31
Added
Changed
- build(deps): Bump github/codeql-action from 2 to 3 #619
- build(deps): Bump github.com/google/uuid from 1.4.0 to 1.5.0 #618
- build(deps): Bump google.golang.org/grpc from 1.59.0 to 1.60.0 #617
- build(deps): Bump the artifacts group with 2 updates #622
- build(deps): Bump golang.org/x/crypto from 0.16.0 to 0.17.0 #623
- build(deps): Bump google.golang.org/grpc from 1.60.0 to 1.60.1 #624
- Refactor proxy config #606
- build(deps): Bump google.golang.org/protobuf from 1.31.0 to 1.32.0 #629
- build(deps): Bump github.com/prometheus/client_golang from 1.17.0 to 1.18.0 #630
- build(deps): Bump jinja2 from 3.1.2 to 3.1.3 in /docs #632
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.7 to 2.10.9 #633
- build(deps): Bump markdown from 3.5.1 to 3.5.2 in /docs #631
- build(deps): Bump github.com/nats-io/nats.go from 1.31.0 to 1.32.0 #634
- build(deps): Bump readthedocs-sphinx-search from 0.3.1 to 0.3.2 in /docs #635
- build(deps): Bump actions/cache from 3 to 4 #638
- build(deps): Bump github.com/google/uuid from 1.5.0 to 1.6.0 #643
- build(deps): Bump google.golang.org/grpc from 1.60.1 to 1.61.0 #645
- build(deps): Bump peter-evans/create-or-update-comment from 3 to 4 #646
- CI: No longer need to manually cache Go modules. #648
- CI: Disable cache for linter to bring back annotations. #647
- Refactor DNS monitoring #648
Fixed
1.2.2 - 2023-12-11
Added
- Include "~docker" in version if built on Docker. #602
Changed
- CI: No need to build docker images for testing, done internally. #603
- build(deps): Bump sphinx-rtd-theme from 1.3.0 to 2.0.0 in /docs #604
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.5 to 2.10.6 #605
- build(deps): Bump actions/setup-go from 4 to 5 #608
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.6 to 2.10.7 #612
- build(deps): Bump the etcd group with 4 updates #611
Fixed
- Skip options from default section when parsing "geoip-overrides". #609
- Hangup virtual session if it gets disinvited. #610
1.2.1 - 2023-11-15
Added
- feat(scripts): Add a script to simplify the logs to make it more easily to trace a user/session #480
Changed
- build(deps): Bump markdown from 3.5 to 3.5.1 in /docs #594
- build(deps): Bump github.com/gorilla/websocket from 1.5.0 to 1.5.1 #595
- build(deps): Bump github.com/gorilla/securecookie from 1.1.1 to 1.1.2 #597
- build(deps): Bump github.com/gorilla/mux from 1.8.0 to 1.8.1 #596
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.4 to 2.10.5 #599
- Improve support for multiple backends with dialouts #592
- build(deps): Bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc from 0.25.0 to 0.46.0 #600
1.2.0 - 2023-10-30
Added
- Use GeoIP overrides if no GeoIP database is configured. #532
- Log warning if no (static) backends have been configured. #533
- Fallback to common shared secret if none is set for backends. #534
- CI: Test with Golang 1.21 #536
- Return response if session tries to join room again. #547
- Support TTL for transient data. #575
- Implement message handler for dialout support. #563
- No longer support Golang 1.19. #580
Changed
- build(deps): Bump google.golang.org/grpc from 1.56.1 to 1.57.0 #520
- build(deps): Bump coverallsapp/github-action from 2.2.0 to 2.2.1 #514
- build(deps): Bump github.com/nats-io/nats.go from 1.27.1 to 1.28.0 #515
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.19 to 2.9.20 #513
- build(deps): Bump mkdocs from 1.4.3 to 1.5.1 in /docs #523
- build(deps): Bump markdown from 3.3.7 to 3.4.4 in /docs #519
- build(deps): Bump mkdocs from 1.5.1 to 1.5.2 in /docs #525
- build(deps): Bump github.com/oschwald/maxminddb-golang from 1.11.0 to 1.12.0 #524
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.20 to 2.9.21 #530
- build(deps): Bump sphinx from 6.2.1 to 7.2.4 in /docs #542
- build(deps): Bump github.com/google/uuid from 1.3.0 to 1.3.1 #539
- build(deps): Bump sphinx from 7.2.4 to 7.2.5 in /docs #544
- build(deps): Bump coverallsapp/github-action from 2.2.1 to 2.2.2 #546
- build(deps): Bump actions/checkout from 3 to 4 #545
- build(deps): Bump google.golang.org/grpc from 1.57.0 to 1.58.0 #549
- build(deps): Bump docker/metadata-action from 4 to 5 #552
- build(deps): Bump docker/setup-qemu-action from 2 to 3 #553
- build(deps): Bump docker/login-action from 2 to 3 #554
- build(deps): Bump docker/setup-buildx-action from 2 to 3 #555
- build(deps): Bump coverallsapp/github-action from 2.2.2 to 2.2.3 #551
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.21 to 2.9.22 #550
- build(deps): Bump docker/build-push-action from 4 to 5 #557
- build(deps): Bump github.com/nats-io/nats.go from 1.28.0 to 1.29.0 #558
- build(deps): Bump google.golang.org/grpc from 1.58.0 to 1.58.1 #559
- build(deps): Bump sphinx from 7.2.5 to 7.2.6 in /docs #560
- build(deps): Bump mkdocs from 1.5.2 to 1.5.3 in /docs #561
- build(deps): Bump markdown from 3.4.4 to 3.5 in /docs #570
- build(deps): Bump google.golang.org/grpc from 1.58.1 to 1.58.3 #573
- build(deps): Bump github.com/prometheus/client_golang from 1.16.0 to 1.17.0 #569
- build(deps): Bump golang.org/x/net from 0.12.0 to 0.17.0 #574
- build(deps): Bump github.com/nats-io/nats.go from 1.29.0 to 1.30.2 #568
- build(deps): Bump google.golang.org/grpc from 1.58.3 to 1.59.0 #578
- build(deps): Bump github.com/nats-io/nats.go from 1.30.2 to 1.31.0 #577
- dependabot: Check for updates in docker files.
- build(deps): Bump golang from 1.20-alpine to 1.21-alpine in /docker/proxy #581
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.22 to 2.10.3 #576
- build(deps): Bump alpine from 3.14 to 3.18 in /docker/janus #582
- build(deps): Bump golang from 1.20-alpine to 1.21-alpine in /docker/server #583
- Improve get-version.sh #584 -build(deps): Bump go.etcd.io/etcd/client/pkg/v3 from 3.5.9 to 3.5.10 #588
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.10.3 to 2.10.4 #586
- build(deps): Bump github.com/google/uuid from 1.3.1 to 1.4.0 #585
- dependabot: Group etcd updates.
- build(deps): Bump the etcd group with 3 updates #590
- Switch to atomic types from Go 1.19 #500
- Move common flags code to own struct. #591
1.1.3 - 2023-07-05
Added
- stats: Support configuring subnets for allowed IPs. #448
- Add common code to handle allowed IPs. #450
- Add allowall to docker image #488
- Follow the Go release policy by supporting only the last two versions. This drops support for Golang 1.18. #499
Changed
- build(deps): Bump google.golang.org/protobuf from 1.29.0 to 1.29.1 #446
- build(deps): Bump actions/setup-go from 3 to 4 #447
- build(deps): Bump google.golang.org/protobuf from 1.29.1 to 1.30.0 #449
- build(deps): Bump coverallsapp/github-action from 1.2.4 to 2.0.0 #451
- build(deps): Bump readthedocs-sphinx-search from 0.2.0 to 0.3.1 in /docs #456
- build(deps): Bump coverallsapp/github-action from 2.0.0 to 2.1.0 #460
- build(deps): Bump peter-evans/create-or-update-comment from 2 to 3 #459
- build(deps): Bump sphinx from 6.1.3 to 6.2.1 in /docs #468
- build(deps): Bump mkdocs from 1.4.2 to 1.4.3 in /docs #471
- build(deps): Bump sphinx-rtd-theme from 1.2.0 to 1.2.1 in /docs #479
- build(deps): Bump coverallsapp/github-action from 2.1.0 to 2.1.2 #466
- build(deps): Bump golangci/golangci-lint-action from 3.4.0 to 3.5.0 #481
- Simplify vendoring. #482
- build(deps): Bump sphinx-rtd-theme from 1.2.1 to 1.2.2 in /docs #485
- build(deps): Bump coverallsapp/github-action from 2.1.2 to 2.2.0 #484
- build(deps): Bump google.golang.org/grpc from 1.53.0 to 1.55.0 #472
- build(deps): Bump go.etcd.io/etcd/client/v3 from 3.5.7 to 3.5.9 #473
- build(deps): Bump github.com/nats-io/nats.go from 1.24.0 to 1.26.0 #478
- build(deps): Bump golangci/golangci-lint-action from 3.5.0 to 3.6.0 #492
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.15 to 2.9.17 #495
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.17 to 2.9.18 #496
- build(deps): Bump github.com/prometheus/client_golang from 1.14.0 to 1.15.1 #493
- docker: Don't build concurrently. #498
- Use "struct{}" channel if only used as signaling mechanism. #491
- build(deps): Bump google.golang.org/grpc from 1.55.0 to 1.56.0 #502
- build(deps): Bump github.com/prometheus/client_golang from 1.15.1 to 1.16.0 #501
- build(deps): Bump github.com/oschwald/maxminddb-golang from 1.10.0 to 1.11.0 #503
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.18 to 2.9.19 #504
- build(deps): Bump google.golang.org/grpc from 1.56.0 to 1.56.1 #505
- build(deps): Bump github.com/nats-io/nats.go from 1.27.0 to 1.27.1 #506
- build(deps): Bump google.golang.org/protobuf from 1.30.0 to 1.31.0 #507
Fixed
- CI: Make sure proxy Docker image is never tagged as "latest". #445
- Write backends comma-separated to config #487
- Fix duplicate join events #490
- Add missing lock for "roomSessionId" to avoid potential races. #497
1.1.2 - 2023-03-13
Added
- Allow SKIP_VERIFY in docker image. #430
Changed
- Keep Docker images alpine based. #427
- build(deps): Bump coverallsapp/github-action from 1.1.3 to 1.2.0 #433
- build(deps): Bump coverallsapp/github-action from 1.2.0 to 1.2.2 #435
- build(deps): Bump coverallsapp/github-action from 1.2.2 to 1.2.3 #436
- build(deps): Bump coverallsapp/github-action from 1.2.3 to 1.2.4 #437
- build(deps): Bump github.com/nats-io/nats.go from 1.23.0 to 1.24.0 #434
- Run "go mod tidy -compat=1.18". #440
- CI: Run golangci-lint with Go 1.20
- Update protoc-gen-go-grpc to v1.3.0 #442
- CI: Stop using deprecated "set-output". #441
- docker: Don't rely on default values when updating TURN settings. #439
- build(deps): Bump google.golang.org/protobuf from 1.28.1 to 1.29.0 #443
Fixed
1.1.1 - 2023-02-22
Fixed
- Fix Docker images. #425
1.1.0 - 2023-02-22
Added
- Official docker images. #314
- Use proxy from environment for backend client requests. #326
- Add aarch64/arm64 docker build #384
- CI: Setup permissions for workflows. #393
- Implement "switchto" support #409
- Allow internal clients to set / change the "inCall" flags. #421
- Add support for Golang 1.20 #413
Changed
- Switch to apt-get on CLI. #312
- vendor: Automatically vendor protobuf modules. #313
- Bump github.com/prometheus/client_golang from 1.12.2 to 1.13.0 #316
- Bump github.com/oschwald/maxminddb-golang from 1.9.0 to 1.10.0 #317
- Bump github.com/pion/sdp/v3 from 3.0.5 to 3.0.6 #320
- Bump google.golang.org/grpc from 1.48.0 to 1.49.0 #324
- Bump github.com/nats-io/nats-server/v2 from 2.8.4 to 2.9.0 #330
- Bump sphinx from 5.1.1 to 5.2.2 in /docs #339
- Bump mkdocs from 1.3.1 to 1.4.0 in /docs #340
- Bump sphinx from 5.2.2 to 5.2.3 in /docs #345
- Bump github.com/nats-io/nats-server/v2 from 2.9.0 to 2.9.2 #344
- Bump go.etcd.io/etcd/api/v3 from 3.5.4 to 3.5.5 #333
- Bump go.etcd.io/etcd/server/v3 from 3.5.4 to 3.5.5 #334
- Bump google.golang.org/grpc from 1.49.0 to 1.50.0 #346
- Bump github.com/nats-io/nats-server/v2 from 2.9.2 to 2.9.3 #348
- Bump github.com/nats-io/nats.go from 1.17.0 to 1.18.0 #349
- Bump sphinx from 5.2.3 to 5.3.0 in /docs #351
- Bump mkdocs from 1.4.0 to 1.4.1 in /docs #352
- Bump google.golang.org/grpc from 1.50.0 to 1.50.1 #350
- Bump golangci/golangci-lint-action from 3.2.0 to 3.3.0 #353
- Bump mkdocs from 1.4.1 to 1.4.2 in /docs #358
- Bump sphinx-rtd-theme from 1.0.0 to 1.1.0 in /docs #357
- Bump github.com/nats-io/nats.go from 1.18.0 to 1.19.0 #354
- Bump github.com/prometheus/client_golang from 1.13.0 to 1.13.1 #360
- Bump github.com/nats-io/nats-server/v2 from 2.9.3 to 2.9.5 #359
- build(deps): Bump golangci/golangci-lint-action from 3.3.0 to 3.3.1 #365
- build(deps): Bump sphinx-rtd-theme from 1.1.0 to 1.1.1 in /docs #363
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.5 to 2.9.6 #361
- build(deps): Bump github.com/nats-io/nats.go from 1.19.0 to 1.20.0 #366
- build(deps): Bump google.golang.org/grpc from 1.50.1 to 1.51.0 #368
- build(deps): Bump github.com/prometheus/client_golang from 1.13.1 to 1.14.0 #364
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.6 to 2.9.7 #367
- build(deps): Bump go.etcd.io/etcd/server/v3 from 3.5.5 to 3.5.6 #372
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.7 to 2.9.8 #371
- build(deps): Bump github.com/nats-io/nats.go from 1.20.0 to 1.21.0 #375
- build(deps): Bump github.com/golang-jwt/jwt/v4 from 4.4.2 to 4.4.3 #374
- build(deps): Bump cirrus-actions/rebase from 1.7 to 1.8 #379
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.8 to 2.9.9 #377
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.9 to 2.9.10 #382
- build(deps): Bump github.com/nats-io/nats.go from 1.21.0 to 1.22.1 #383
- build(deps): Bump google.golang.org/grpc from 1.51.0 to 1.52.0 #391
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.10 to 2.9.11 #387
- Stop using WaitGroup to detect finished message processing. #394
- Improve handling of throttled responses from Nextcloud. #395
- Test: add timeout while waiting for etcd event. #397
- build(deps): Bump github.com/nats-io/nats.go from 1.22.1 to 1.23.0 #399
- build(deps): Bump go.etcd.io/etcd/api/v3 from 3.5.6 to 3.5.7 #402
- build(deps): Bump go.etcd.io/etcd/client/v3 from 3.5.6 to 3.5.7 #403
- build(deps): Bump go.etcd.io/etcd/server/v3 from 3.5.6 to 3.5.7 #404
- build(deps): Bump golangci/golangci-lint-action from 3.3.1 to 3.4.0 #405
- build(deps): Bump readthedocs-sphinx-search from 0.1.2 to 0.2.0 in /docs #407
- build(deps): Bump google.golang.org/grpc from 1.52.0 to 1.52.1 #406
- build(deps): Bump docker/build-push-action from 3 to 4 #412
- build(deps): Bump google.golang.org/grpc from 1.52.1 to 1.52.3 #410
- Explicitly use type "sysConn". #416
- build(deps): Bump github.com/nats-io/nats-server/v2 from 2.9.11 to 2.9.14 #415
- build(deps): Bump sphinx-rtd-theme from 1.1.1 to 1.2.0 in /docs #418
- build(deps): Bump google.golang.org/grpc from 1.52.3 to 1.53.0 #417
- build(deps): Bump golang.org/x/net from 0.5.0 to 0.7.0 #422
- build(deps): Bump github.com/golang-jwt/jwt/v4 from 4.4.3 to 4.5.0 #423
- build(deps): Bump sphinx from 5.3.0 to 6.1.3 in /docs #390
- Various refactorings to simplify code #400
Fixed
- Remove @resources from SystemCallFilter #322
- Fix deadlock for proxy connection issues #327
- Fix goroutines leak check. #396
1.0.0 - 2022-08-04
Added
- Clustering support. #281
- Send initial "welcome" message when clients connect. #288
- Support hello auth version "2.0" with JWT. #251
- dist: add systemd sysusers file. #275
- Add more tests. #292
- Add tests for virtual sessions. #295
- Implement per-backend session limit for clusters. #296
Changed
- Don't run "go mod tidy" when building. #269
- Bump sphinx from 5.0.0 to 5.0.1 in /docs #270
- Bump sphinx from 5.0.1 to 5.0.2 in /docs #277
- Move common etcd code to own class. #282
- Support arbitrary capabilities values. #287
- dist: harden systemd service unit. #276
- Update to Go module version of github.com/golang-jwt/jwt #289
- Disconnect sessions with the same room session id synchronously. #294
- Bump google.golang.org/grpc from 1.47.0 to 1.48.0 #297
- Update to github.com/pion/sdp v3.0.5 #301
- Bump sphinx from 5.0.2 to 5.1.1 in /docs #303
- make: Include vendored dependencies in tarball. #300
- docs: update and pin dependencies. #305
- Bump actions/upload-artifact from 2 to 3 #307
- Bump actions/download-artifact from 2 to 3 #308
- Bump google.golang.org/protobuf from 1.28.0 to 1.28.1 #306
- CI: Also test with Golang 1.19 #310
Fixed
- Fix check for async room messages received while not joined to a room. #274
- Fix testing etcd server not starting up if etcd is running on host. #283
- Fix CI issues on slow CPUs. #290
- Fix handling of "unshareScreen" messages and add test. #293
- Fix Read The Ddocs builds. #302
0.5.0 - 2022-06-02
Added
- Add API documentation (previously in https://github.com/nextcloud/spreed) #194
- CI: Enable gofmt linter. #196
- CI: Enable revive linter. #197
- Add API for transient room data. #193
- Send updated offers to subscribers after publisher renegotiations. #195
- Add documentation on the available metrics. #210
- Add special events to update "incall" flags of all sessions. #208
- CI: Also test with Golang 1.18. #209
- Support DNS discovery for proxy server URLs. #214
- CI: Build docker image. #238
- Add specific id for connections and replace "update" parameter with it. #229
- Add "permission" for sessions that may not receive display names. #227
- Add support for request offers to update subscriber connections. #191
- Support toggling audio/video in subscribed streams. #239
- CI: Test building coturn/janus Docker images. #258
- Add command bot for "/rebase". #260
- Add Go Report card. #262
- Combine ping requests of different rooms on the same backend. #250
Changed
- Bump github.com/gorilla/websocket from 1.4.2 to 1.5.0 #198
- Bump golangci/golangci-lint-action from 2.5.2 to 3.1.0 #202
- Bump actions/checkout from 2.4.0 to 3 #205
- Bump actions/cache from 2.1.7 to 3 #211
- Return dedicated error if proxy receives token that is not valid yet. #212
- CI: Only run workflows if relevant files have changed. #218
- Bump sphinx from 4.2.0 to 4.5.0 in /docs #216
- Bump github.com/oschwald/maxminddb-golang from 1.8.0 to 1.9.0 #213
- Only support last two versions of Golang (1.17 / 1.18). #219
- Bump github.com/golang-jwt/jwt from 3.2.1+incompatible to 3.2.2+incompatible #161
- Bump github.com/nats-io/nats-server/v2 from 2.2.6 to 2.7.4 #207
- Update etcd to v3.5.1 #179
- Bump github.com/prometheus/client_golang from 1.11.0 to 1.12.1 #190
- Bump go.etcd.io/etcd/client/v3 from 3.5.1 to 3.5.2 #222
- Use features from newer Golang versions. #220
- Bump actions/setup-go from 2 to 3 #226
- Send directly to local session with disconnected client. #228
- Bump github.com/nats-io/nats-server/v2 from 2.7.4 to 2.8.1 #234
- Bump go.etcd.io/etcd/client/pkg/v3 from 3.5.2 to 3.5.4 #235
- Bump github/codeql-action from 1 to 2 #237
- Bump go.etcd.io/etcd/client/v3 from 3.5.2 to 3.5.4 #236
- Bump github.com/nats-io/nats-server/v2 from 2.8.1 to 2.8.2 #242
- Bump docker/setup-buildx-action from 1 to 2 #245
- Bump docker/build-push-action from 2 to 3 #244
- Bump github.com/nats-io/nats.go from 1.14.0 to 1.15.0 #243
- Bump readthedocs-sphinx-search from 0.1.1 to 0.1.2 in /docs #248
- CI: Run when workflow yaml file has changed. #249
- Bump golangci/golangci-lint-action from 3.1.0 to 3.2.0 #247
- Move capabilities handling to own file and refactor http client pool. #252
- Increase allowed body size for backend requests. #255
- Improve test coverage. #253
- Switch to official Coturn docker image. #259
- Bump github.com/prometheus/client_golang from 1.12.1 to 1.12.2 #256
- Update Dockerfile versions. #257
- Update Alpine to 3.15 version, fix CVE-2022-28391 #261
- Bump cirrus-actions/rebase from 1.6 to 1.7 #263
- Bump github.com/nats-io/nats.go from 1.15.0 to 1.16.0 #267
- Bump jandelgado/gcov2lcov-action from 1.0.8 to 1.0.9 #264
- Bump github.com/nats-io/nats-server/v2 from 2.8.2 to 2.8.4 #266
- Bump sphinx from 4.5.0 to 5.0.0 in /docs #268
Fixed
- CI: Fix linter errors. #206
- CI: Pin dependencies to fix readthedocs build. #215
- Fix mediaType not updated after publisher renegotiations. #221
- Fix "signaling_server_messages_total" stat not being incremented. #190
0.4.1 - 2022-01-25
Added
- The room session id is included in "joined" events. #178
- Clients can provide the maximum publishing bandwidth in offer requests. #183
Changed
0.4.0 - 2021-11-10
Added
- Support continent mapping overrides. #143
- Add prometheus metrics #99
- Support separate permissions for publishing audio / video. #157
- Check individual audio/video permissions on change. #169
- CI: Also test with Go 1.17 #153
Changed
- Force HTTPS for backend connections in old-style configurations. #132
- Only include body in 307/308 redirects if going to same host #134
- Stop publishers if session is no longer allowed to publish. #140
- Only allow subscribing if both users are in the same room and call. #133
- Internal clients always may subscribe all streams. #159
- Reduce RTT logging #167
- deps: Migrate to "github.com/golang-jwt/jwt". #160
- Bump coverallsapp/github-action from 1.1.2 to 1.1.3 #131
- Bump github.com/google/uuid from 1.2.0 to 1.3.0 #138
- Bump github.com/prometheus/client_golang from 1.10.0 to 1.11.0 #144
- Bump github.com/nats-io/nats.go from 1.11.0 to 1.12.1 #150
- Bump github.com/nats-io/nats.go from 1.12.1 to 1.12.3 #154
- Bump github.com/nats-io/nats.go from 1.12.3 to 1.13.0 #158
- Bump actions/checkout from 2.3.4 to 2.3.5 #163
- Bump actions/checkout from 2.3.5 to 2.4.0 #166
Fixed
- Adjusted easyjson for multiarch builds #129
0.3.0 - 2021-07-01
Added
- Certificate validation can be disabled for proxy connections
- Number of sessions per backend can be limited #67
- Use Go modules for dependency tracking, drop support for Golang < 1.13 #88
- Support defining maximum bandwidths at diferent levels #76
- Show coverage report in PRs #34
- CI: Also test with Golang 1.16
- CI: Run golint #32
- CI: Add CodeQL analysis #112
- Add tests for regular NATS client #105
- Fetch capabilities to check if "v3" signaling API of Talk should be used. #119
- Add API to select a simulcast substream / temporal layer #104
Changed
- Improved detection of broken connections between server and proxy #65
- Stop using legacy ptype
listener#83 - Update gorilla/mux to 1.8.0 #89
- Remove unnecessary dependency golang.org/x/net #90
- Update nats.go to 1.10.0 #92
- Update maxminddb-golang to 1.8.0 #91
- Add dependabot integration #93
- Bump github.com/google/uuid from 1.1.2 to 1.2.0 #94
- Bump github.com/gorilla/websocket from 1.2.0 to 1.4.2 #95
- Remove deprecated github.com/gorilla/context
- Update to go.etcd.io/etcd 3.4.15
- make: Cache easyjson results. #96
- Various updates to Docker components #78
- Bump coverallsapp/github-action from v1.1.1 to v1.1.2 #102
- Bump jandelgado/gcov2lcov-action from v1.0.2 to v1.0.8 #103
- Bump actions/cache from 2 to 2.1.5 #106
- Bump golangci/golangci-lint-action from 2 to 2.5.2 #107
- Bump actions/checkout from 2 to 2.3.4 #108
- Bump actions/cache from 2.1.5 to 2.1.6 #110
- Don't log TURN credentials #113
- Remove NATS notifications for Janus publishers #114
- Make client processing asynchronous #111
- Bump github.com/nats-io/nats-server/v2 from 2.2.1 to 2.2.6 #116
- Notify new clients about flags of virtual sessions #121
Fixed
- Adjusted godeps for multiarch builds #69
- Add missing lock when accessing internal sessions map
- Fixed parallel building #73
- Make the response from the client auth backend OCS compliant #74
- Fixed alignment of 64bit members that are accessed atomically #72
- Only build "godep" binary once #75
- Update config example for Apache proxy config #82
- Remove remaining virtual sessions if client session is closed
- Fix Caddy v2 example config #97
- Fix various issues found by golangci-lint #100
- Support multiple waiters for the same key #120
- Various test improvements / fixes #115
0.2.0 - 2020-12-08
Added
Changed
- Default to proxy url type "static" if none is configured
- Don't perform request to proxy if context is already done
- Mark session as used when proxy connection is interrupted to prevent from timing out too early
- Use dedicated (shorter) timeout for proxy requests to avoid using the whole available timeout for the first proxy request
- Update logging when creating / deleting publishers / subscribers
- Include load in stats response
- Send MCU messages through the session #55
- Add '--full-trickle' to janus command #57
- README: Add missing information for creating group #60
- Canonicalize all URLs before comparisons / lookups #62
Fixed
- Handle case where etcd cluster is not available during startup
- Remove duplicate argument in Dockerfile #50
- Handle old-style MCU configuration with type but no url
- Fix proxy client cleanup code #56
0.1.0 - 2020-09-07
Added
- Add Docker support #7
- Added basic stats API #16
- Add "reason" field to disinvite messages #26
- Added support for multiple Nextcloud backends #28
- Support connecting to multiple Janus servers #36
- Added support for loading proxy tokens from etcd cluser #44
- Proxy URLs are reloaded on SIGHUP #46
- Added support for loading proxy URls from etcd cluster #47
- Add option to override GeoIP lookups (e.g. for local addresses) #48
Changed
- The continent map is no longer downloaded on each build #29
- NATS messages are processed directly #35
- Support changed "slowlink" message from Janus > 0.7.3 #39
- The GeoIP database can be loaded from a local file #40
- Drop support for Golang < 1.10.
Fixed
- Fixes for building on FreeBSD #2
- Fixes for typos in comments and error messages #10
- Remove credentials from log #13
Documentation
- Add systemd to docs #3
- Add caddy server to reverse proxy examples #5
- Update link to API documentation #6
- Update build requirements #12
0.0.13 - 2020-05-12
- Initial OpenSource version.