Update ts3j: resend like the official client; clean up failed connects

- ts3j: native resend timing, INIT1 resends, one clientinitiv per handshake,
  non-blocking disconnect.
- Ignore errors from a connect attempt that has been superseded or cancelled.
- Show the whole cause chain in network error messages.
- -Dts3j.debug=true enables ts3j's protocol logging.
- Tests run with a throwaway user.home instead of the real profile.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-24 04:58:21 +00:00
parent c743efc3b6
commit 5fc2405d4a
4 changed files with 34 additions and 4 deletions

View File

@@ -15,9 +15,10 @@ import javax.swing.SwingUtilities;
public final class Main {
public static void main(String[] args) {
// ts3j is verbose by default; keep the console quiet unless debugging.
// ts3j is verbose by default; keep the console quiet unless asked for its protocol log
// (-Dts3j.debug=true, written to stderr).
try {
com.github.manevolent.ts3j.util.Ts3Debugging.setEnabled(false);
com.github.manevolent.ts3j.util.Ts3Debugging.setEnabled(Boolean.getBoolean("ts3j.debug"));
} catch (Throwable ignored) {
}