There's an issue reported on slow devices when sending a batch of
images.
All the requests are send concurrently, and the sending of messages is
processed concurrently in the background.
On slow devices or connection with slow upload speed this may result in
expired envelopes, as the POW calculation or the upload takes too long,
and either they never leave the device, or worse they reach the
mailserver but won't be stored because already expired on arrival.
This commit allows setting the max-images-batch config value, setting it
to 1 for release and keeping it to 5 for other builds.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Fixes: #11441Fixes: #11416
The issue was due to a nil pointer exception with the
localNotificationService.
Upon upgrade it would be disabled and therefore it would not be
available.
This was due to the fact that initialization comes from the database and
not from status-react, so on upgrade it would not be available.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Using different temporary keychains does not work if we do not set
`default_keychain=true`, because `codesign` then can't find the cert:
```
error: No signing certificate "iOS Distribution" found: No "iOS Distribution" signing certificate matching team ID
```
But if we set `default_keychain=true` then we cause a race condition
when the keychain is deleted by a parallel job while another is using it
as its default.
For this reason we have to use a static keychain name and keep it
between builds.
I tried disabling `default_keychain=true` in #11378 but it worked only
because the default user keychain already had the cert.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
If we run parallel job and a job sets a temporary keychain into a
default than another job can assume that is the user default.
The result is that one of the jobs will attempt to set a non-existent
temporary keychain into the default keychain.
This happens when we call `Fastlane::Actions::DeleteKeychainAction`:
https://github.com/fastlane/fastlane/blob/2.164.0/fastlane/lib/fastlane/actions/delete_keychain.rb#L21
Signed-off-by: Jakub Sokołowski <jakub@status.im>
When sending messages in quick succession, it might be that multiple
messages are batched together in datasync, resulting in a single large
payload.
This commit changes the behavior so that we can pass a max-message-size
and we split the message in batches before sending.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>