Closes#28 for python 2.
Apparently, process pools are not contexts in python 2.7.
On the other hand, in py2 you cannot pickle instance methods, so
you have to implement Pool tasks as independent functions.
Closes#28
Added:
* Async test (still missing one that includes the IOLoop)
* Async plugin under tests. To manually try async functionalities:
```
senpy -f tests/
```
In index.html, there is a suggestion to try out the api with a link to "/api". Clicking that link results in a json error report - not ideal.
Instead, I added text suggesting that a use can find example api url's after clickgin "Analyse!".
* Improved debugging (back to using Flask's built-in mechanisms)
* Recursive model loading from json
* Added DEVPORT to Makefile
* Accept json-ld input. Closes#16
* Improved Exception handling in client
* Modified default plugin selection to only include analysis plugins
* More tests
Closes#12
* Shows only analysis plugins by default on /api/plugins
* Adds a plugin_type parameter to get other types of plugins
* default_plugin chosen from analysis plugins
pip install needs the VERSION file - `make version` will create that file
I also added the -U flag to pip install to force install (this is important if the user is playing with the code or trying out different older versions, as pip will not install if it thinks the git repo represents a version already installed or older than the one installed)
Installing depends on the VERSION file, so it raies an error if it is
installed in some other way.
ReadTheDocs installs the package so it can generate code docs.
This commit adds a default version 0.0
Since __init__ is imported by setup.py, future may not be installed yet.
Other options would be:
* Read VERSION -> and that code has to be duplicated in setup.py and
senpy (to avoid the import, once again)
* Eval version.py
* Do without versioning :)
* Changed the way modules are imported -> we can now use dotted
notation (e.g. senpy.plugins.conversion.centroids)
* Refactored ekman2vad's plugin -> generic centroids
* Added some basic tests
* Added interactive debugging
* Better exception logging
* More tests for errors
* Added ONBUILD to dockerfile
Now creating new images based on senpy's is as easy as:
```from senpy:<version>```. This will automatically mount the code to
/senpy-plugins and install all dependencies
* Added /data as a VOLUME
* Added `--use-wheel` to pip install both on the image and in the
auto-install function.
* Closes#9
Break compatibilitity:
* Removed ability to (de)activate plugins through the web