Releases: signalapp/libsignal
Releases · signalapp/libsignal
v0.54.1
- libsignal-server now includes builds for aarch64 Linux, with a minimum requirement of ARMv8.2 - The Net/Network class now exposes an "onNetworkChanged" event, which will clear certain caches and reset cooldowns - Minor improvements to the backup validator - Rolled back some dependencies in Cargo.lock to preserve our current MSRV
v0.54.0
- Node, Swift: changes in the libsignal-net API - Android: include debug info in the AAR - Internal improvements and housekeeping changes
v0.53.0
- Node: Split ChatService into AuthenticatedChatService and UnauthenticatedChatService. We plan to make a similar split for the other platforms in the future. - Node: Upload Breakpad syms files for debug info instead of using per-platform formats - Server: Added SealedSenderMultiRecipientMessage#serializedRecipientView, to save on repeated parsing - iOS: ComparableBackup is now correctly implemented as simulator-only, fixing builds for device broken in v0.52.4
v0.52.4
- Android: include debug info in the AAR - Backups: ComparableMessageBackup can be used to check message backups for equality - Java: ChatServiceException extends IOException - SVR3: implement migration support, improve resilience to connection failures
v0.52.3
- Node: The "install" action no longer tries to build the Rust library even if there are no available prebuilds. This should only have an effect if you were doing local development of libsignal. (This now actually works.)
v0.52.2
- Infrastructure for client testing APIs has been added (that is, APIs that exist for clients of libsignal to write tests). - Java/Android: There is a new libsignal_jni_testing.so library in both the JAR and AAR products. This can safely be filtered out of the final built app when code size is a concern. - Swift: The testing APIs are only available on simulator builds. - Node: The testing APIs are included in the regular build. - SVR3: Restores can now fall back to previous environments. - SVR3: Provide a migration API, for backing up to the latest environment and clearing from previous ones. - ChatService: 4xx messages from proxies will no longer be considered authoritative. - ChatService: Fixed a hang when the same instance was used for both auth and unauth connections. - Node: libsignal will drop log events if they are not being drained from the Node event loop fast enough, rather than continue to saturate the event loop. - Node: The "install" action no longer tries to build the Rust library even if there are no available prebuilds. This should only have an effect if you were doing local development of libsignal. - Node: Debug info for the Rust library is saved as part of the build. - Further updates to the backup validator
v0.52.0
- Protocol: add SealedSenderMultiRecipientMessage#serialized - Net: customize response status code sent to server - Backups: bugfix to prevent short file reads - Misc: update nightly Rust compiler version - Misc: update Node version to 20.11.1 - Misc: remove SignalCoreKit dependency for Swift
v0.51.1
- AppExpiry and DeviceDeregistered errors are now properly reported on connect; previously the types were exposed but would never be created in practice. If this sounds like a duplicate release note, well, the v0.51.0 implementation wasn't quite right! - Node: The node module file is now named @signalapp+libsignal-client.node instead of node.napi.node. The directory structure for prebuilds remains the same. - Updated rustc, cargo-about, curve25519-dalek
v0.51.0
- Java: Logging is no longer automatically initialized; clients must call SignalProtocolLoggerProvider.initializeLogging() in addition to setting a provider. - Node: Expose ChatListener. - Swift: ChatListener gained a chatServiceConnectionWasInterrupted callback. - Rust: libsignal-net's ServerRequest enum has been renamed to ServerEvent and now includes a "Stopped" event. - AppExpiry and DeviceDeregistered errors are now properly reported on connect; previously the types were exposed but would never be created in practice. - The jars created for libsignal-client and libsignal-server no longer preserve timestamps, to make builds byte-for-byte reproducible rather than just equivalent. - Further updates to the backup validator. - attest: remove obsolete CDSI mrenclave
v0.50.0
- Treat HTTP 4xx errors as fatal for SVR connections. In Java, these result in a new NetworkProtocolException, distinct from the NetworkException that represents a potentially-transient error. - Java: Fix missing AttestationFailedException in throws clauses - Update backup validation - net: Back off DNS requests like we do for the main connection - net: Chat responses that come in just before the connection is closed won't be dropped as aggressively.