econpy/BookwormGUI — pull request #8 by bmschmidt (2014-09-10 21:47:37+00:00)
Title: Fetch json

OK, this is my promised commit that does two things that aren't sexy, but that maintenance of the API codebase much easier. The immediate prompt is the renewed interest in using Solr--this needs to get merged before that starts.

1. Uses the slimmed down version of the API (No redundant "return_slug" method gets used, no weird parsing out of "===RESULT===" in )
2. Smoothing gets done client side, which is more efficient and opens up some nice UI opportunities as well.

It's fully compatible (ie, probably about the same number of bugs as the main version) with the latest branch of the API (`pandas`); it's also about 90% compatible with the oldest version on the "master" branch of the API. (The slugs don't work--someone could add in back-compatibility, probably, without too much trouble). Not sure about the year-old versions running on arxiv, etc.

But any Bookworm built on an old version of Presidio won't work, probably, with the new version of the API.

So let me propose a merge strategy for this: We should do everything in our power to stop new Bookworms from proliferating that use the old, more verbose set of instructions while making them available somehow to projects that have already built them.

1. Tag as a **release** (v.0.1) the current state of the BookwormGUI, or check out the current state to the `old` branch.
2. Pull this fork to master, with the explicit note caveat that you must be using > v0.3 as the Presidio build and > v0.3 for the API as well.
3. Delete the `dev` branch.

Other strategies might work as well: using `dev

The goal here is that we can swiftly transition over to the "modern" API (Really, the API we settled on in early 2012; it's just legacy code from August 2011 that keeps proliferating).

One of the carrots here, in addition to using cleaner code that can be maintained, is that the `pandas` branch does much more intelligent caching and so is significantly faster for almost all queries.