hedgeagent/1.12.0 #1

Open
sa6anw wants to merge 201 commits from hedgeagent/1.12.0 into hedgeagent/1.10.5
3 changed files with 14 additions and 15 deletions
Showing only changes of commit 766d00c4d9 - Show all commits

4
app.js
View File

@@ -89,6 +89,10 @@ const io = new Server(server, {
origin: config.serverURL, origin: config.serverURL,
methods: ['GET', 'POST'], methods: ['GET', 'POST'],
credentials: true credentials: true
},
connectionStateRecovery: {
maxDisconnectionDuration: 2 * 60 * 1000,
skipMiddlewares: false
} }
}) })

View File

@@ -9,7 +9,7 @@
### Bugfixes ### Bugfixes
- All links will be opened in new tabs instead of the same tab as the note. This was changed when the external link warning was implemented and now the old behavior is restored. - All links will be opened in new tabs instead of the same tab as the note. This was changed when the external link warning was implemented and now the old behavior is restored.
- Fixed a bug in the realtime disconnect handler that could lead to data-loss of users with a flaky connection - Fixed multiple bugs in the realtime connection handling that could lead to data-loss of users with a flaky connection
## <i class="fa fa-tag"></i> 1.11.1 <i class="fa fa-calendar-o"></i> 2026-07-24 ## <i class="fa fa-tag"></i> 1.11.1 <i class="fa fa-calendar-o"></i> 2026-07-24

View File

@@ -2233,7 +2233,6 @@ socket.on('delete', function () {
}) })
} }
}) })
let retryTimer = null
socket.on('maintenance', function () { socket.on('maintenance', function () {
cmClient.revision = -1 cmClient.revision = -1
}) })
@@ -2246,21 +2245,17 @@ socket.on('disconnect', function (data) {
if (!editor.getOption('readOnly')) { if (!editor.getOption('readOnly')) {
editor.setOption('readOnly', true) editor.setOption('readOnly', true)
} }
if (!retryTimer) {
retryTimer = setInterval(function () {
if (!needRefresh) socket.connect()
}, 1000)
}
})
socket.on('reconnect', function (data) {
// sync back any change in offline
emitUserStatus(true)
cursorActivity(editor)
socket.emit('online users')
}) })
socket.on('connect', function (data) { socket.on('connect', function (data) {
clearInterval(retryTimer) if (socket.recovered) {
retryTimer = null // sync back any change in offline
console.debug('Reconnected client')
emitUserStatus(true)
cursorActivity(editor)
socket.emit('online users')
return
}
console.debug('Client connected (no reconnect)')
personalInfo.id = socket.id personalInfo.id = socket.id
showStatus(statusType.connected) showStatus(statusType.connected)
socket.emit('version') socket.emit('version')