Commit Graph

372 Commits (a29c4ce5d6bcdda0ab838e4e41675c7b0082bb98)

Author SHA1 Message Date
Matthew Chen bf21d0c0ed Enable logging in SAE; rework log file management to include multiple log directories. 8 years ago
Michael Kirk 336d59a6ce restore chrono timestamp
make SSK compatible with c++ by using non-modular imports, which
requires disambiguating our ddLog variable.

// FREEBIE
8 years ago
Matthew Chen e7df2511a4 Register CrossProcessNotifier. 8 years ago
Matthew Chen 64762eb427 Observe YapDatabaseModifiedExternallyNotification. 8 years ago
Matthew Chen 62cf9b1dd5 Respond to CR. 8 years ago
Matthew Chen d17ccadea2 Use AppContext to resolve share extension FIXMEs. 8 years ago
Matthew Chen e712e8bfc4 Use AppContext to resolve share extension FIXMEs. 8 years ago
Matthew Chen 4c31d99498 Respond to CR. 8 years ago
Matthew Chen ffa69b3502 Add application context class. 8 years ago
Matthew Chen 8d4e9b4565 Respond to CR. 8 years ago
Matthew Chen 779e89fe74 Clean up ahead of PR. 8 years ago
Matthew Chen 7429e1968c Clean up ahead of PR. 8 years ago
Matthew Chen edaf65223a Migrate to shared data NSUserDefaults. 8 years ago
Matthew Chen cd11ec5698 Add app group, share keychain. Take a first pass at file migration to shared data directory. 8 years ago
Michael Kirk 336aa13520 Avoid overzealous assert
// FREEBIE
8 years ago
Michael Kirk 2072359a72 add todo 8 years ago
Michael Kirk e9796600c6 disable some asserts for now
// FREEBIE
8 years ago
Michael Kirk 961727814b Move pinning certificates into App
// FREEBIE
8 years ago
Michael Kirk a11d83187b WIP: Framework-friendly - compiles but crashes on launch
// FREEBIE
8 years ago
Michael Kirk c5b0f7cd01 framework compatible CocoaLumberjack import
With previous import style, the `LOG_ASYNC_ENABLED, LOG_LEVEL_DEF`
macros were not being defined.

@import style module includes are handled differently in ObjC++, causing
problems with out millisecondTimeStamp implementation. Rather than
address that problem head on, I simple reimplemented our millisecond
timestamp method in objective-c, removing our single ObjC++ file.

// FREEBIE
8 years ago
Michael Kirk 7894a58769 FIXME: Changes to get share extension compiling
This was a slash and burn approach, and breaks existing functionality.
We need to address all of these before merging.

// FREEBIE
8 years ago
Matthew Chen 829464baaf Remove concurrency limitations from signal service. 8 years ago
Matthew Chen ba88da60ca Use dedicated db connection for recipient identities. 8 years ago
Matthew Chen 9b4ac4073f Improve robustness around unknown country codes. 8 years ago
Matthew Chen d9fcfdeeb7 Fix deadlock when responding to contacts sync messages. 8 years ago
Matthew Chen 9b197fad03 Fix deadlock when responding to contacts sync messages. 8 years ago
Matthew Chen d8ae5841d6 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen b3d17ea192 Improving handling of edge cases in conversation view. 8 years ago
Matthew Chen 45c7d80d97 Improving handling of edge cases in conversation view. 8 years ago
Matthew Chen 6d4a05bbea Improving handling of edge cases in conversation view. 8 years ago
Matthew Chen 2642f6fcea Fix group creation. 8 years ago
Matthew Chen 21e9f57cbe Imitate Android's behavior of delaying local notifications based on incoming sync messages. 8 years ago
Matthew Chen 2d8a7b03d0 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen d7b0424c75 Don't back up profile pics, attachments or gifs.
// FREEBIE
8 years ago
Matthew Chen 2f84e0c426 Fix calling; be explicit about which messages should be saved. 8 years ago
Matthew Chen 19ba564f80 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 00feb14b10 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 5eea0347b5 Rework the "update with..." methods to avoid re-saving deleted models. 8 years ago
Matthew Chen 94b59c326e Rework the "update with..." methods to avoid re-saving deleted models. 8 years ago
Matthew Chen c6160a5a1e Rework the "update with..." methods to avoid re-saving deleted models. 8 years ago
Matthew Chen 69fa80b890 Don't resurrect zombies. 8 years ago
Matthew Chen fce52841f9 Don't resurrect zombies. 8 years ago
Matthew Chen 5c90bc72df Never request contacts permission if app is in the background. 8 years ago
Matthew Chen cc0e58365e Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 0abdbffe1f Improve handling of attachment edge cases. 8 years ago
Matthew Chen bac3bd4b68 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 518f15155a Respond to CR.
// FREEBIE
8 years ago
Matthew Chen efcd42012c Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 071dbd4414 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 8b65246619 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen e1b32315de Fix assert after registration.
// FREEBIE
8 years ago
Matthew Chen 5541be784f Fix build warnings from XCode 9. 8 years ago
Matthew Chen 6e840ff956 Fix build warnings from XCode 9. 8 years ago
Matthew Chen a6bfc0a60e Fix build warnings from XCode 9. 8 years ago
Matthew Chen 2d21e2ae2c Fix build warnings from XCode 9. 8 years ago
Matthew Chen da7338580c Merge tag '2.18.1.0' 8 years ago
Michael Kirk e82a3f3ddf respond to CR
// FREEBIE
8 years ago
Michael Kirk 8ef9e96b91 Avoid group-sync deadlock by making post-upload save async
// FREEBIE
8 years ago
Michael Kirk 98fd15fae7 Avoid groupsync deadlock - pass in transaction
// FREEBIE
8 years ago
Matthew Chen 8b6265f1b5 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 4d57402367 Ensure attachments always have a valid content type.
// FREEBIE
8 years ago
Matthew Chen e07a240ee5 Merge tag '2.18.0.9' 8 years ago
Michael Kirk 81cff837ae Include root certs from pki.goog
// FREEBIE
8 years ago
Michael Kirk 6c13d46be2 use manually specified censorship host
// FREEBIE
8 years ago
Michael Kirk 11e07370a9 more logging
// FREEBIE
8 years ago
Michael Kirk a30533e7b5 Add GTSGIAG3 to censorship circumvention trust store
openssl x509 -outform der -in GIAG3.pem -out GIAG3.crt

// FREEBIE
8 years ago
Michael Kirk 295646e5fa Rebase cleanup
// FREEBIE
8 years ago
Michael Kirk 0706edf42a Generate new registrationId on re-register
In order for others to know they should start a new session with us, we
need to change our registration id.

To achieve this, I consolidated all the Account related attributes on
TSAccountManager - luckily they were already in the proper collection, I
just moved the API to hang on the AccountManager instead of a TSStorage
category extension.

Also:

@synchronize access to `registrationId`

// FREEBIE
8 years ago
Michael Kirk 58d4c95362 Re-register without losing your messages in Debug-UI
// FREEBIE
8 years ago
Matthew Chen 1fa75ead5d Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 74096fc2c2 Don't send sync messages to self if no linked devices.
// FREEBIE
8 years ago
Matthew Chen db8a381960 Merge remote-tracking branch 'origin/release/2.18.0' 8 years ago
Michael Kirk cf9874302b Remove unecessary subdata for unpadded attachment
// FREEBIE
8 years ago
Michael Kirk ce51d2da3e Example (disabled) padding strategy for attachment sender
The padding strategy the sender uses can change without needing to
update the receiver, so long as we continue to record the unpadded
length of the attachment in the attachment pointer.

// FREEBIE
8 years ago
Michael Kirk cbbb376860 Handle receiving padded attachments
Don't send padded attachments yet.

// FREEBIE
8 years ago
Michael Kirk 259695a9fd Attachments require digest or show explanatory error.
// FREEBIE
8 years ago
Michael Kirk 6eeb78157a Include size in attachment pointer
// FREEBIE
8 years ago
Matthew Chen 3927815a35 Fix tests broken by the JSQ rewrite.
// FREEBIE
8 years ago
Matthew Chen bf8d694eb4 Rework attachment approval UI.
// FREEBIE
8 years ago
Matthew Chen d04f9111db Rework attachment approval UI.
// FREEBIE
8 years ago
Michael Kirk 68e755ade9 Merge branch 'release/2.18.0' 8 years ago
Michael Kirk 0cd56d4bcc On iOS11 doc picker requires system appearance.
Otherwise nav items are illegible.

// FREEBIE
8 years ago
Matthew Chen 4dabb71815 Fix "can't send same GIF twice" issue.
// FREEBIE
8 years ago
Matthew Chen fb4d43d542 Fix "can't send same GIF twice" issue.
// FREEBIE
8 years ago
Matthew Chen e3868df69a Move write of incoming messages off main thread.
// FREEBIE
8 years ago
Matthew Chen 8704722f90 Don't start expiration of incoming messages until attachments are downloaded.
// FREEBIE
8 years ago
Matthew Chen 227fd5280d Resize conversation view cells as necessary.
// FREEBIE
8 years ago
Michael Kirk 0f859d6b20 Merge branch 'release/2.18.0' 8 years ago
Michael Kirk 3080cb512b Compose View: collation index and group search
- Include table index for contacts
- Fix extra spacing in OWS table view
- Separate search results into contact/invite sections
- Include groups in search results when composing new message
- Compose Screen search matches on group member names

// FREEBIE
8 years ago
Matthew Chen fb408f980c Remove JSQ.
// FREEBIE
8 years ago
Michael Kirk b2efb722d2 Log timestamp of sent messages
This is really helpful when cross referencing debug logs with the
recipient. (We already log timestamps on the receiving side).

// FREEBIE
8 years ago
Michael Kirk 9a7e3cb9d8 Register for manual message fetching when unable to obtain push tokens
// FREEBIE
8 years ago
Michael Kirk df15c904bc Rework push registration
== Account Registration ==

Not complete until push tokens are uploaded

== Remote Notifications Registration ==

Extracted from PushManager

- wait for notification-settings registration to complete before
  requesting push tokens, otherwise it's possible token requests will
  be ignored.

- Less state required for push notification callbacks, specifically, we
  no longer need to ensure we've created a promise before the
  registration delegate methods get called.

- no more TOCFuture in Signal-iOS (still in SSK for now). It's not in
  cases of inexplicable behavior - one a recently, push notification
  premature free, in redphone, and more popular use, and I've seen two
  futures inexplicably being nil.  Instead, let's consolidate around
  PromiseKit for popularly used, maintained, strongly-typed futures.

- separate logic for registering for vanilla push/voip notifications
  (few dependencies) from responding to UILocalNotifications (lots of
  dependencies). Ultimately I'd like to consolidate the remaining
  UILocalNotifications logic with the existing NotificationsManager

== Misc ==

more debug logging
more uniform logging
remove stale logic around newly registered user

// FREEBIE
8 years ago
Michael Kirk 703d4df9e5 Avoid phantom notifications for group info requests
// FREEBIE
8 years ago
Joshua Lund 8ff14a3f6a Enable censorship circumvention in Qatar.
// FREEBIE
8 years ago
Matthew Chen 0c46b770e9 Ignore group info requests if sender and recipient aren't both known group members.
// FREEBIE
8 years ago
Matthew Chen 13a6657991 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 2a5a0929e6 Create & access groups more carefully.
// FREEBIE
8 years ago
Matthew Chen 380ed0f82b Create & access groups more carefully.
// FREEBIE
8 years ago
Matthew Chen a31b1aeea6 Respond to "sync block list" request.
// FREEBIE
8 years ago