* master: (81 commits)
Adding font size choices to web preferences.
Closing #66 with both integration of #68 and using the same fonts. Users can add an optional class if they want these other convenient fonts. Also using a few fonts as backups for non-Mac users.
Fix default theming hook
Add multiple targeted font stacks
Fixing #75: shared stories should use story permalink, not story guid. Doh. Thanks @denubis!
Categorizing preferences. Adding window title count back in.
Adding email lookup to forgot password flow.
Adding email lookup to forgot password flow.
Fixing typo in logging.
Fixing autocomplete behavior on add dialog.
Adding broken search for feeds.
Logging
Switching to guid-based read story counts from range based counts. Let's see what this screws up.
Everybody gets unread count in title.
Backporting collections.Counter to python2.6
Fixing broken reply interaction with links.
Prototype of a dupe checker using real-time update times to figure out which feeds are the same. Last time I walked down this road I got run over.
Adding delete user flow. About time, since I'm sick of doing this myself.
Deractivating premiums.
Adding a lock for the intelligence slider for focus stories. If the user selects focus and there are actually focus stories, lock it for the future when there are no unread focus stories.
...
Conflicts:
fabfile.py
* master: (1171 commits)
Fixing repeating friend finding check in both intro and friends dialog.
Saving references to visible feeds when reading by folder.
Major refactor of ios feed list. No longer relies on fragile locations dictionary.
No more error messages on deploying new celery/gunicorn. Also adding NUMA cancellation support to mongo db server.
Fixing ios classifiers in river view.
Adding beta search (only titles and authors for now) for staff only.
Updating enterprise distribution ipa.
Fixing crash when mis-counting feeds. Correcting height of font popover on iphone. Adding horizontal bounce to story page control.
Doubling resync likelihood.
Clearing out old read stories for 1% of all feed fetches with new stories.
Adding unread cutoff to redis sync.
Syncing redis keys by feed_id for read stories.
Adding a sync all redis for user stories to be run in a migration.
Turning off deletion of old stories until the db can be prepped.
Adding index for read story deletion.
Deleting old stories.
Typo in delete read stories log.
Typo in delete read stories log.
Typo in delete read stories log.
Deleting old user stories again. This time going out to 5 times the unread bounds.
...
Conflicts:
local_settings.py.template
settings.py
* social: (597 commits)
Updating celery calls in prep for upgrade to celery 3.0.
Getting IE9 working with OPML ajax upload.
Typo on never_cache after json view. Doh.
Fixing the living crap out of IE9. Everything works excellently now.
Upgrading jQuery 1.7.1 to 1.7.2 and upgrading bootstrap's carousel to 2.0.5.
Adding _gaq for debug, when analytics aren't present.
Taking @mgeraci's suggestion and moving the Starred! message to the opposite gravity of the story titles pane.
Double clicking sites and stories now works. Thanks to @ojiikun for figuring this one out.
Fixing scroll/paging bug where the wrong story would be selected. Technically it's not fixed, but the indicator is now always present, so you know why it's happening. Thanks to @afita for the thorough investigation.
Lots of little bugs: avatar images, icon importer, page importer, adding analytics tracking to intro.
Fixing following bug due to array truncation of following list.
Small tweaks to blurblogs. iPadifying blurblogs.
Adding /social/activities endpoint for Android and iOS.
Fixing bug when a story changes its guid (like on a tumblr rename), but it still thinks it has comments. Forcing each story to recount its comments if comments are claimed, just in case.
Showing social service fetch status in real-time (actually polling every 3 seconds) in both intro and friends dialogs.
Fixing issue in social connecting to Twitter/FB in popup.
Google Analytics on Blurblogs.
Trying to outwit IE by adding in a fake console.
console.log -> NEWSBLUR.log
Adding sync status and tasking facebook/twitter friend imports.
...
Conflicts:
settings.py
* master:
Fixing issue with PuSH hub topic's being too long for the db.
OPML import: Using custom feed titles if they don't match what's in the feed DB.
Conflicts:
apps/feed_import/models.py
* master:
Changing copy on premium/feedchooser dialog.
Styling errors on stripe payment form.
Final stripe.js tweaks before launch.
Adding Pay by Credit Card as an option to feed chooser dialog. Thus concludes Stripe.js integration. Time to launch!
Styling the stripe.js background.
Using correct kwargs for stripe signal.
Wrapping up stripe.js form. Has validation, styling, and does the right thing for new subscriptions. Needs a link to the form, though.
Setting up correct customer model for stripe webhook.
Moving JS assets to bottom of the page for faster loadtimes.
Fixing exception on missing param in feed address searching.
Fixing recommendation date serialization bug.
Fixing bugs around login with blank password using full password. Also fixing bug in signups with no username.
Stripe.js payments using zebra. Adding zebra as a vendored dependency. Webhooks and views all in. Needs styling, custom username and email fields, and loads of testing.
Adding error checking on requests in page fetching.
Using a probability from redis to determine whether or not to skip a fetch.
Allowing any password to be used on accounts with no password set.
Adding paypal logo.
Conflicts:
assets.yml
media/js/newsblur/reader/reader_feedchooser.js
settings.py
templates/base.html
* jammit:
Adding new iphone mask image.
Moving to proper unicode string for feed fetching.
Colorizing feed fetching.
Colorizing feed fetching.
Adding two error classes to requests exception handling.
Adding two error classes to requests exception handling.
Adding two error classes to requests exception handling.
jQuery 1.6.1 -> 1.7.1. Fixes massive Chrome issues.
Adding shift+u as a shortcut for marking a story unread.
Adding more advanced exception handling for new requests module, with fallback to urllib2.
Adding urllib fallback to requests in page fetching.
Adding a little bit more leeway in page importer by falling back to urllib2 when requests fail.
Adding slight bit of color to feed fetcher.
Revert "Revert "Switching to requests from urllib2/httplib. Bring on the page errors.""
Conflicts:
assets.yml
local_settings.py.template
media/js/jquery-1.7.1.js
media/js/jquery-1.7.js
media/js/vendor/jquery-1.7.js
* master: (66 commits)
Too many stories? Don't animate transitions when switching intelligence levels.
Fixing typo in iphone app that preventing mark folder as read when the visible stories option was showing.
Updating the mongo db copy util to also look for updated stories.
Globals.is_staff on user, not profile. Make the stats referesh every minute instead of every 10 minutes for staff.
Fixing offsets in river of news.
Adding ciphering to usernames in log, so I can finally take screenshots of the most colorful logs of all time.
Adding my very special mongo serialization backup utility to get around the damn unrepairable mongo database. This is taking 14 hours to run.
Auto-refreshing feedback (1 min for staff, 10 min for everybody).
Fixing exception around multiple feeds during Google Reader import process. Also switching rate limit to status code 429.
Adding Nokia MeeGo client to user agents.
Only show raw feeds in feed autocomplete.
Handling iphone version for new users on ios app.
FIXING THE WORST BUG OF MY LIFE -- finally figured out what was causing the story-shows-as-unread bug. Also fixed enclosures on certain types of feeds.
Fixing menu manage open position to compensate for additional menu items.
Reducing the amount of work done by feed fetching when there are no new stories.
Fixing emergency bug around trimming feeds where the cursor is changing. Dammit mongo.
Simplifying ufw ports in fabfile. Adding env.user.
Launching the iPhone app on the front-page. Big deal.
Minor cleanup of river stories view.
Cleaning up mongoengine imports and settings for default MongoDB.
...
Conflicts:
local_settings.py.template