Commit Graph

49 Commits (1.0.0)

Author SHA1 Message Date
J. Fernando Sánchez 8a516d927e Multiple changes in the API, schemas and UI
Check out the CHANGELOG.md file for more information
5 years ago
J. Fernando Sánchez 4ba30304a4 New schema for parameters
* Improve extra requirement handling
* New mechanism to handle parameters beforehand in chained
  calls, and the ability to get help on available parameters in chained
  calls (through `?help`).
* Redefined Analysis, to reflect the new ontology
* Add parameters as an entity in the schema
* Update examples to include analyses and parameters
* Add processing plugins, with an interface similar to analysis plugins
* Update tests
* Avoid duplication in split plugin

Closes #51

Squashed commit of the following:

commit d145a852e7
commit 6a1069780b
commit ca69bddc17
commit aa35e62a27
6 years ago
J. Fernando Sánchez 00ffbb3804 Several changes
* Add flag to run tests
* Add ntriples outformat
6 years ago
J. Fernando Sánchez 13cf0c71c5 WIP
* Modify dependency installation logic (avoid installing several times)
* Add encoded URLs for as base/prefix
6 years ago
J. Fernando Sánchez 1313853788 Several fixes and improvements
* Add Topic model
* Add PDB post-mortem debugging
* Add logger to plugins (`self.log`)
* Add NLTK resource auto-download
* Force installation of requirements even if adding doesn't work
* Add a method to find files in several possible locations. Now the plugin.open
method will try these locations IF the file is to be opened in read mode.
Otherwise only the SENPY_DATA folder will be used (to avoid writing to the
package folder).
6 years ago
J. Fernando Sánchez 697e779767 Fix schema issues and parameter validation 6 years ago
J. Fernando Sánchez 5e2ada1654 Merge branch 'master' into 44-add-basic-evaluation-with-gsitk 6 years ago
NahcoCP 4af692091a Adding the evaluation models 6 years ago
J. Fernando Sánchez 15ab5f4c25 Add Entity 6 years ago
J. Fernando Sánchez 3e2b8baeb2 Last batch of big changes
* Add Box plugin (i.e. black box)
* Add SentimentBox, EmotionBox and MappingMixin
* Refactored CustomDict
6 years ago
J. Fernando Sánchez 21a5a3f201 Macro commit
* Fixed Options for extra_params in UI
* Enhanced meta-programming for models
* Plugins can be imported from a python file if they're named
`senpy_<whatever>.py>` (no need for `.senpy` anymore!)
* Add docstings and tests to most plugins
* Read plugin description from the docstring
* Refactor code to get rid of unnecessary `.senpy`s
* Load models, plugins and utils into the main namespace (see __init__.py)
* Enhanced plugin development/experience with utils (easy_test, easy_serve)
* Fix bug in check_template that wouldn't check objects
* Make model defaults a private variable
* Add option to list loaded plugins in CLI
* Update docs
6 years ago
J. Fernando Sánchez bfc588a915 Several fixes
* Refactored BaseModel for efficiency
* Added plugin metaclass to keep track of plugin types
* Moved plugins to examples dir (in a previous commit)
* Simplified validation in parse_params
* Added convenience methods to mock requests in tests
* Changed help schema to use `.valid_parameters` instead of `.parameters`,
which was used in results to show parameters provided by the user.
* Improved UI
    * Added basic parameters
    * Fixed bugs in parameter handling
    * Refactored and cleaned code
6 years ago
J. Fernando Sánchez 0204e0b8e9 Several changes
* Simplified setattr
* Added loading attributes in class
* Added ability to specify failing test cases in plugins
6 years ago
J. Fernando Sánchez a243f68bfc WIP simpler pipeline 7 years ago
J. Fernando Sánchez fca0ac00c4 Merge branch '38-json-serialization-problem-with-sets' 7 years ago
J. Fernando Sánchez 4d7e8e7589 Added tests for all "discoverable" plugins
Closes #39
7 years ago
J. Fernando Sánchez 8e4578dc25 Closes #40 7 years ago
J. Fernando Sánchez 24c97256e8 Added serialization of sets 7 years ago
J. Fernando Sánchez ea91e3e4a4 Add an option to force the load of shelf plugins
Closes gsi-upm/senpy#34
7 years ago
J. Fernando Sánchez 7e5b55ff9c Run pip with Popen
Closes #22
7 years ago
J. Fernando Sánchez 0c8f98d466 Pre-0.8.6
* 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
7 years ago
J. Fernando Sánchez 9f6a6f5ecd Loads of changes!
* Added conversion plugins (API might change!)
* Added conversion to the analysis pipeline
* Changed behaviour of --default-plugins (it adds conversion plugins regardless)
* Added emotionModel [sic] and emotionConversion models

//TODO add conversion tests
//TODO add conversion to docs
7 years ago
J. Fernando Sánchez b4ca5f4a7c Several fixes and changes
* 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
7 years ago
J. Fernando Sánchez 908090f634 Released v0.7
Bug-fixes and improvements:
* Closes #5
* Closes #1
* Adds Client (beta)
* Added several schemas
* Lighter string representation -> should avoid delays in the analysis
  with plugins that have 'heavy' attributes

Backwards-incompatible changes:
* Context in headers by default
* All schemas include a "@type" argument that is used for autodetection
  in the client

... And possibly many more, this is still <1.0
7 years ago
J. Fernando Sánchez b072121e20 Added Model string representation
This should help with performance issues with models that have large
private variables.
7 years ago
J. Fernando Sánchez db30257373 Flake8, Semver, Pre-commit
* Added pre-commit: http://pre-commit.com
* Fixed flake8 errors
* Added flake8 pre-commit hooks
* Added pre-commit to Makefile
* Changed VERSION numbering
* Changed versioning to match PEP-0440
7 years ago
J. Fernando Sánchez 7fd69cc690 YAPFed 7 years ago
J. Fernando Sánchez b543a4614e Improved schema validation
* Added debug Dockerfile/Makefile
* Validation of examples in docs
7 years ago
J. Fernando Sánchez 4dee623ef9 Better makefile 8 years ago
J. Fernando Sánchez 03eb38c12d Added CLI and refactored argument parsing 8 years ago
J. Fernando Sánchez b8339e397b Improved request handling
Also:
 * Shelve -> Pickle to avoid weird db problems
 * Serving schemas and contexts
8 years ago
J. Fernando Sánchez 14a3e4103b Prefix handling and bug fixes 8 years ago
J. Fernando Sánchez 48d7d1d02e Improved plugins API and loading
Also:

* added drone-ci integration: tests for py2.7 and py3
8 years ago
J. Fernando Sánchez 14c9f61864 Python 3 compatible
There are also some slight changes to the JSON schemas and the use of
JSON-LD.
8 years ago
J. Fernando Sánchez a79df7a3da Closer to py3 8 years ago
J. Fernando Sánchez ecc2a8312a Still not functional 8 years ago
J. Fernando Sánchez b8993f7d64 Added shelve mixin 9 years ago
J. Fernando Sánchez b484b453e0 Added indentation and default plugins
* setup.py:
9 years ago
J. Fernando Sánchez 7c2e0ddec7 Added plugins by default and monkey patching
Fixes #2
9 years ago
J. Fernando Sánchez d1006bbc92 PEP8+Better JSON-LD support
* The API has also changed, there are new parameters to send the
context as part of the headers.
* Improved tests
* PEP8 compliance (despite the line about gevent)
9 years ago
J. Fernando Sánchez 79c83e34a3 Added random plugin and other features 9 years ago
J. Fernando Sánchez 37a098109f Module script and improvement in JSON-LD 10 years ago
J. Fernando Sánchez ff14925056 Improved plugins, better tests, gevent
Moved from Yapsy again (it is not flexible enough), now we use a
custom solution.
The activation and deactivation of plugins is asynchronous, so
that plugins that take a long time don't interfere with the rest.
10 years ago
J. Fernando Sánchez 10f4782ad7 Better NIF compliance 10 years ago
J. Fernando Sánchez 4351f76b60 Removed unnecessary contexts 10 years ago
J. Fernando Sánchez 86f45f8147 JSON-LD contexts and prefixes 10 years ago
J. Fernando Sánchez 2834967026 Better jsonld support 10 years ago
J. Fernando Sánchez 2b68838514 PEP8 compliance 10 years ago
J. Fernando Sánchez e06fc2e671 V 0.2.2 - Better plugins 10 years ago