0
0
mirror of https://github.com/signalapp/libsignal.git synced 2024-09-20 03:52:17 +02:00
Commit Graph

2358 Commits

Author SHA1 Message Date
Jordan Rose
5a29f08ffb CI: Build Java release Mac binaries using macos-latest (arm64)
...instead of macos-12 (x86_64)
2024-08-02 09:54:43 -07:00
Jordan Rose
11544c6718 java: Omit native libraries from the sources jars
...at least partly to cut down on the space used during a build that
includes all supported architectures.
2024-08-02 09:54:43 -07:00
Jordan Rose
47f221e9ab build_jni.sh: error out if no target is provided 2024-08-02 09:54:43 -07:00
Jordan Rose
5480f12ec6 CI: Build NPM release using macos-latest (arm64)
...rather than macos-12 (x64)
2024-08-02 09:54:27 -07:00
Jordan Rose
03b71fea23 backup: Validate quoted attachments 2024-08-02 09:39:02 -07:00
Jordan Rose
f2b9ad59d5 backup: Validate GroupMemberAddedUpdate.inviterAci more specifically 2024-08-02 09:38:48 -07:00
Jordan Rose
7fa901aa14
backup: Validate FilePointers and MessageAttachments 2024-08-01 14:41:57 -07:00
Jordan Rose
ee321f2697 Bump to version v0.54.1 2024-07-31 16:58:52 -07:00
Jordan Rose
d3adfba263 java: Adjust how we handle manual cross-compilation
Follow-up to 0453438d. Previously, setting CARGO_BUILD_TARGET before
manually calling build_jni.sh merely did a Cargo build with the same
settings as the host build. However, adding support for cross-compiles
for the server build broke this "ad hoc" cross-compilation.
Fortunately, it was used only in one place: providing both flavors of
Mac library in a built libsignal-client and libsignal-server. We can
use the *new* cross-compilation support for this instead, reducing
special cases.

This also limits the conditions where build_jni.sh will automatically
set CC and other environment variables, and allows that behavior to be
overridden by manually setting them.
2024-07-31 16:27:25 -07:00
Jordan Rose
3e064082f3 backup: Validate e164s (they must not be 0) 2024-07-31 11:28:49 -07:00
Jonathan Klabunde Tomer
c3b6b85243
build_jni.sh: don't use modern bash features 2024-07-31 11:22:35 -07:00
Jonathan Klabunde Tomer
3d1c45f15d
build multiarch server jar from make targets by default 2024-07-31 10:07:54 -07:00
Jordan Rose
08913fa09f CI: Build+test Java on aarch64 Linux in the Slow Tests 2024-07-30 15:34:31 -07:00
Jordan Rose
a561392cff
Expose the "network changed" event to apps 2024-07-30 15:27:42 -07:00
Jonathan Klabunde Tomer
0453438d98
Prepare libsignal-server Java build for arm64 2024-07-30 13:37:55 -07:00
Sergey Skrobotov
aace02380b rolling back Cargo.lock/acknowledgments changes 2024-07-26 16:53:26 -07:00
Sergey Skrobotov
b86d58e8d6 Bump to version v0.54.0 2024-07-26 14:02:22 -08:00
Sergey Skrobotov
d694cff1a1
net: adding a parameter to opt in/out of receiving stories 2024-07-25 14:55:23 -07:00
Jordan Rose
9d729ff083
Re-apply "android: Don't strip debug info out of the AAR"
A revised version of the earlier 23192280:
- Uses --build-id for all archs, not just aarch64
- Also raises Gradle's memory limits
2024-07-25 14:22:56 -07:00
Jordan Rose
85e0de9207
Update Rust dependencies
`cargo update` performed with Cargo 1.72 to avoid advancing our MSRV. assert_cmd, clap, protobuf, and protobuf-json-mapping needed to be manually held back.

Plus, explicit bumps for
- env_logger 0.11
- heck 0.5
- itertools 0.13
- num_enum 0.7
- prost 0.13
- tungstenite 0.23

And disallowing downgrading curve25519-dalek below the security update in 4.1.3.
2024-07-25 13:33:09 -07:00
Jordan Rose
a3daa01b01 swift: Split ChatService into Authenticated and Unauthenticated
...following the similar split for Node.
2024-07-25 12:27:07 -07:00
Jordan Rose
4d740bf3ce
net: Reset route cooldowns on network change 2024-07-24 15:25:14 -07:00
Sergey Skrobotov
e3d3b7762d
node: extract a common API for auth/unauth ChatService 2024-07-24 12:59:21 -07:00
Jordan Rose
f2ae8436b3 Bump to version v0.53.0 2024-07-23 14:57:28 -07:00
Jordan Rose
e00fc2b6f0 Update top-level README to mention submodule and testing libraries 2024-07-23 14:46:43 -07:00
Sergey Skrobotov
cb3cd55c17
node: adjusting ChatService API to align with the usage patterns 2024-07-23 14:45:30 -07:00
Jordan Rose
a9b0ac2729 CI: Test building for iOS devices 2024-07-23 14:12:51 -07:00
Jordan Rose
28b9bf0951 swift: Fix building tests for a device
This isn't something we do often, but sometimes it's useful to do,
usually from the Signal-iOS workspace, to see how the real device
behaves.
2024-07-23 14:12:51 -07:00
Jordan Rose
288c1ceee7 swift: Split ComparableBackup out to a separate simulator-only file 2024-07-23 14:12:51 -07:00
Chris Eager
4a3d4aecd5 Add SealedSenderMultiRecipientMessage#serializedRecipientView
This allows a server to parse and validate a multi-recipient message once,
and then efficiently store per-recipient views for future delivery.
2024-07-23 10:16:02 -07:00
Jordan Rose
8835b7febe java: Enable Gradle dependency checksums 2024-07-22 15:56:02 -07:00
Jordan Rose
213ad4b30d
net: Add a "network changed" event
This adds a new utility type ObservableEvent, which synchronously runs
any registered callbacks when the event fires. CustomDnsResolver can
then subscribes to a "network changed" event on creation, clearing its
cache. At the other end of the stack, the ConnectionManager contains
the event, to eventually be exposed to the app languages as part of
the Net abstraction.

Additional parts of libsignal-net will subscribe to the "network
changed" event in the future. In particular, it should reset
persistent connection cooldowns.
2024-07-19 16:24:07 -07:00
Jordan Rose
d0b1821888 node: Upload dump_syms output to releases instead of raw debug info 2024-07-19 16:19:53 -07:00
Alex Konradi
8ba0f2731c Bump to version v0.52.5 2024-07-19 13:41:34 -04:00
Alex Konradi
4c0bb6d87f
Revert "android: Don't strip debug info out of the AAR" 2024-07-19 11:25:58 -04:00
Alex Konradi
d33ce0bea5 Bump version number to 0.52.4 2024-07-19 09:34:42 -04:00
Jordan Rose
5a1144b8ac java: Update code size checker to measure post-stripping size
Previously the Android libraries were stripped as part of the build,
but what we're really trying to track is the download size and
size-on-disk for Android users, so the stripped library is more
relevant (and lets us continue to compare against previous releases).
2024-07-18 14:31:20 -07:00
Jordan Rose
e50ddd215b java: ChatServiceExtension now extends IOException
...for consistency with other network-related exceptions in the Java
ecosystem.
2024-07-18 13:08:59 -07:00
Alex Konradi
0b7d2856fe
Use ResourceReader in test 2024-07-18 14:48:18 -04:00
Alex Konradi
671febbde8
java docker: set default file encoding to UTF-8 2024-07-18 14:32:12 -04:00
Jordan Rose
2319228027 android: Don't strip debug info out of the AAR
This *greatly* increases the size of the artifacts uploaded to Maven,
but it looks like the libraries do correctly get stripped when the
final APK is built. (This was not true in the past.)

Also, make sure the built library includes a "build ID", or else the
stripped version of the library will be treated as a different
library, and all the line tables will go to waste.
2024-07-18 10:26:02 -07:00
moiseev-signal
e3045d3ca3
svr3: Implement different strategies for connection failures 2024-07-18 09:47:33 -07:00
Alex Konradi
f7e0af4c30
java: read expected backup file as UTF-8 2024-07-17 15:42:19 -04:00
Alex Konradi
a6a8eae650
Fix expected canonical test case output 2024-07-16 15:40:43 -04:00
moiseev-signal
dee9c5a06e
svr3: Assorted connection handling improvements 2024-07-16 12:19:14 -07:00
Alex Konradi
f6acd4f98d
Update backup.proto to latest version 2024-07-16 14:20:53 -04:00
Alex Konradi
66cd3f0133
backup: bridge canonical serialization as ComparableBackup 2024-07-16 14:20:31 -04:00
moiseev-signal
854343294d
svr3: Make partial migration easier and add a test 2024-07-15 16:27:16 -07:00
Alex Konradi
eea07a5638
Include -testing fns in FFI on testing-fns feature 2024-07-15 14:57:40 -04:00
Alex Konradi
535241d423
backup: add canonically-serializable type
Add a type with a canonical serialized form that, for the same logical backup 
contents (even with frame reorderings), will always serialize to the same value.
2024-07-15 14:48:59 -04:00