This change updates the link preview fetch flow to fetch content
directly rather than through the proxy. This means we can remove the
allowed domain list and fetch content from most provided domains.
This almost moves HTML content parsing outside of OWSLinkPreview.
Currently we'll still only fetch the same content, but it's extensible
enough to fetch all sorts of different opengraph tags.
AFHTTPSessionManager will no longer faildebug on a request failure.
Since we're going to be firing opportunistic fetch requests as we parse
a URL, it's expected that some will fail.
Modifies ContactDiscoveryTask to filter out any duplicate e164s. Also
renames a bunch of things to make identifier formatting expectations
more clear.
A candidate for further improvement: IOS-757: Adopt PhoneNumbers in CDS
subsystem
- Adjust how clients provide QoS information to ContactDiscoveryTask
- Fix an issue where legacy CDS was reporting a generic server failure
as a result of network failures.
- ContactDiscoveryTask will no longer error on an empty set
- Remove CDSFeedback operation
- Removes ContactsUpdater singleton. It wasn't really tracking much
state anyway
- Introduces ContactDiscoveryTask. This creates a
ContactDiscoveryOperation (modern or legacy) and updates the
SignalRecipients database on completion. Returns a promise.
- Begin migrating away from operation queues
PromiseKit is weird about priority propogation, so this shouldn't be
used yet. Since all then closures are asynced, priorities don't
propogate down to underlying queues. This means the a
ContactDiscoveryTask on the main queue will not boost the priority on
the ModernContactDiscoverOperation's owned operation queue
Fixes a minor bug that I discovered while playing with the support
flow. Navigation titles weren't showing up in the new view controllers.
It seems OWSTableViewController was only reading an OWSTableContents
title during -loadView. My first pass at the support flow's view
controllers overrode the -contents property, so this was working
originally. Later, I started setting -contents during -viewDidLoad which
is too late for OWSTableViewController.
Now, OWSTableViewController will update the title any time the
OWSTableContents changes and there's a non-zero length title provided.
Most of the UI work for the new support flow. This still needs some
tuning, but I wanted to checkpoint some of this work. This adds a couple
new views and view controllers to facilitate the new support flow.
What's left to be done:
- Putting together the send-message infrastructure
- Attach actions to all of the buttons
- Make sure the colors all match up with the spec
- Reach out to design for feedback
- Testing with various accessibility settings