* master: (23 commits)
Premiums are never spammers.
Adding a bit more logic to defense.
No index for robots on blurblogs. This should stop the spam.
Adding user find by id for staff.
Adding destroy flag when killing spammers.
Fixing stories with no title and only html for content (no text, just an image). Using permalink as title since a title cna't be extracted from content.
Adding export user's opml functionality for staff.
Fixing case insensitivity for logging in with an email address.
Fixing pip requirements conflicts.
Force an intelligence change for re-rendering story title trainers.
Only active feeds count unreads.
Fixing unread counts to only include active sites.
Adding logging info to auto-spam delete.
Killing spammers when sharing popular stories.
Move refresh to menu. Use NewsBlur colours for refresh colour scheme.
Handling exception on twitter photo sync.
Adding a twitter sync for everybody.
Initial integration of SwipeRefreshLayout
Redirects in dev still point local.
Better redirect on missing icon.
...
* master: (31 commits)
Fixing login screen for Reeder.
Fixing login screen for Reeder.
Explicit viewport.
Explicit viewport.
Explicit viewport.
Explicit viewport.
Adding viewport to login/signup screen.
Set source_used_id correctly when sharing from a blurblog (#551)
Adding debug option to all text importers.
Adding user_id to every response.
Adding WAI-AREA support for <article> to support LiveJournal.
Fixing last few font size changes for new feed title font styler.
Boosting readability's ability to read Medium posts.
Adding feed font size. Configures both story titles and feed titles. This one's for you @theromit.
Probably not a bug. Probably Adblock.
Adding autosize to share textbox.
Hiding mark as read button when searching.
Fixing images in tutorial.
Removing unnecessary inset box shadow on header elements.
Further correcting OAuth spacing on mobile.
...
* master: (627 commits)
Handling unsub'd feed with active IFTTT trigger.
Adding dark story header border color for android. For #546.
Don't record read stories for aggregated mark reads.
Adding unsub'd feeds to read stories view.
Fixing Subscribe button for tryfeeds.
Fixing IFTTT saved story tags.
Moving classifiers when recreating destroyed feeds.
Code to recreateaccidentally destroyed feeds.
Adding SSL certificate assembly fab command.
Skip saved feeds which have fake unread counts.
Fix style of share bar text for dark theme.
Apply dark theme to classifier dialog.
Fixing saved story view for users with preference to open first unread story, thereby switching them out of saved mode and into unread mode.
Update ShareDialogFragment to use AlertDialog.Builder and default theme
Adding copy_db_settings to fabfile.
Apply dark theme to replies.
Update ReplyDialogFragment to use AlertDialog.Builder and default themes.
Fixing specified image sizes.
Only premiums users can share multiple stories from a single feed per day.
Faster delete user (for combating spam).
...
* master:
Fixing updates_off in tasks.
Adding updates_off run-time setting for handling large spikes of updates.
Draining feeds also clears out error feeds.
* master:
Adding cryptography dependency.
Adding cutoff_timestamp and direction to API docs for marking a feed as read. Meant to address #542.
Showing all feeds in feed chooser.
Gunicorn x-forwarded-for
Adding RealIP to nginx/gunicorn.
Make sure all folders are visible in the feed chooser dialog
Make single-story context actions always appear above multiple-story actions. (#541)
fix to compatible with Python2.6
Add support for SNI and update requests.
* master:
iOS app versin 4.0.3.
Fixing intelligence trainer when training in folder.
Showing user-created training tags/authors in feed trainer.
Correctly handling drag events on folder titles.
Showing correct Done/Next button status based on actual stories loaded. This one's for @immad.
Moving to stricter story diff check. Using story hashes instead of grab bag by date when checking existing stories.
Fixing digitalocean's missing 96GB size.