[LLVMdev] Proposal: REST and Ajax in LNT

Chris Matthews chris.matthews at apple.com
Tue Jun 30 11:53:11 PDT 2015


I think it would be super useful to give LNT a RESTful interface.  As LNT grows, it would be nice to be able to update some of the pages with Ajax(or json).  Especially for pages with long load times, it makes sense to be able to speed up load times, by fetching the data after page load. It would also allow us to build more dynamic pages, and allow non-web clients better structured access to LNT information.

We have been doing this to a degree already by adding &json=True parameters to some of the pages.  This approach is ad-hoc, serialization and exploitability have been a big pain. I think it is time to formalize the non-web interface, and use some technology to make it as rich and useful as possible.

Since we are not in the business of reinventing web technologies, I think we should use one of the preexisting flask frameworks for this.  I have experimented with two: Eve + eve-sqlalchmey and flask-RESTful.

http://python-eve.org <http://python-eve.org/>
https://flask-restful.readthedocs.org/en/0.3.3/ <https://flask-restful.readthedocs.org/en/0.3.3/>

If anyone in the community has some ideas on this I’d love to hear them.  Thus far, I hacked on Eve for an afternoon and could not get it to understand LNTs (admittedly obscure) database structure. Flask-RESTful looked simple, but more work to build the actual interfaces, though it seems like it might be a more natural fit for LNTs URL schema.

If no one has any options, I will try and integrate flaskRESTful into LNT.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150630/7f166af7/attachment.html>


More information about the llvm-dev mailing list