diff --git a/.travis.yml b/.travis.yml index 4133a96..8f625e4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,15 +1,43 @@ sudo: required -services: - - docker - -language: python - -env: - - PYV=3.4 - - PYV=3.5 - - PYV=3.6 - - PYV=3.7 -# - PYV=3.3 # Apt fails in this docker image -# run nosetests - Tests -script: make test-$PYV +matrix: + allow_failures: + # Windows is experimental in Travis. + # As of this writing, senpy installs but hangs on tests that use the flask test client (e.g. blueprints) + - os: windows + include: + - os: linux + language: python + python: 3.4 + before_install: + - pip install --upgrade --force-reinstall pandas + - os: linux + language: python + python: 3.5 + - os: linux + language: python + python: 3.6 + - os: linux + language: python + python: 3.7 + - os: osx + language: generic + addons: + homebrew: + # update: true + packages: python3 + before_install: + - python3 -m pip install --upgrade virtualenv + - virtualenv -p python3 --system-site-packages "$HOME/venv" + - source "$HOME/venv/bin/activate" + - os: windows + language: bash + before_install: + - choco install -y python3 + - python -m pip install --upgrade pip + env: PATH=/c/Python37:/c/Python37/Scripts:$PATH +# command to run tests +# 'python' points to Python 2.7 on macOS but points to Python 3.7 on Linux and Windows +# 'python3' is a 'command not found' error on Windows but 'py' works on Windows only +script: + - python3 setup.py test || python setup.py test diff --git a/README.rst b/README.rst index cef05ad..8dc8b42 100644 --- a/README.rst +++ b/README.rst @@ -144,6 +144,17 @@ Instead, the maintainers will focus their efforts on keeping the codebase compat We apologize for the inconvenience. +Having problems with senpy? +--------------------------- + +Please, file a new issue `on GitHub `_ including enough details to reproduce the bug, including: + + * Operating system + * Version of senpy (or docker tag) + * Installed libraries + * Relevant logs + * A simple code example + Acknowledgement --------------- This development has been partially funded by the European Union through the MixedEmotions Project (project number H2020 655632), as part of the `RIA ICT 15 Big data and Open Data Innovation and take-up` programme. diff --git a/docs/installation.rst b/docs/installation.rst index 7aadd88..00b432d 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -1,10 +1,10 @@ Installation ------------ -The stable version can be used in two ways: as a system/user library through pip, or as a docker image. +The stable version can be used in two ways: as a system/user library through pip, or from a docker image. -The docker image is the recommended way because it is self-contained and isolated from the system, which means: +Using docker is recommended because the image is self-contained, reproducible and isolated from the system, which means: - * Downloading and using it is just one command + * It can be downloaded and run with just one simple command * All dependencies are included * It is OS-independent (MacOS, Windows, GNU/Linux) * Several versions may coexist in the same machine without additional virtual environments @@ -32,27 +32,24 @@ Through PIP cd senpy pip install --user . +Each version is automatically tested in GNU/Linux, macOS and Windows 10. +If you have trouble with the installation, please file an `issue on GitHub `_. + + Docker Image ************ -The base image of senpy comes with some builtin plugins that you can use: + +The base image of senpy comes with some built-in plugins that you can use: .. code:: bash docker run -ti -p 5000:5000 gsiupm/senpy --host 0.0.0.0 -To add your custom plugins, you can use a docker volume: +To use your custom plugins, you can add volume to the container: .. code:: bash docker run -ti -p 5000:5000 -v :/plugins gsiupm/senpy --host 0.0.0.0 --plugins -f /plugins - - - -There is a Senpy image for **python 2**, too: - -.. code:: bash - - docker run -ti -p 5000:5000 gsiupm/senpy:python2.7 --host 0.0.0.0 Alias diff --git a/setup.cfg b/setup.cfg index f10f167..16edc54 100644 --- a/setup.cfg +++ b/setup.cfg @@ -13,7 +13,7 @@ max-line-length = 100 [bdist_wheel] universal=1 [tool:pytest] -addopts = --cov=senpy --cov-report term-missing +addopts = -v --cov=senpy --cov-report term-missing filterwarnings = ignore:the matrix subclass:PendingDeprecationWarning [coverage:report] diff --git a/test-requirements.txt b/test-requirements.txt index 5ef1112..4ea2991 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,3 +1,4 @@ mock pytest-cov pytest +pandas