mirror of
https://github.com/strukturag/nextcloud-spreed-signaling
synced 2024-06-15 20:25:12 +02:00
24 KiB
24 KiB
Changelog
All notable changes to this project will be documented in this file.
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.