Skip to content

Commit

Permalink
Merge pull request #213 from Mentalab-hub/develop
Browse files Browse the repository at this point in the history
PR for release 1.6.1
  • Loading branch information
andrea-escartin authored Jun 10, 2022
2 parents 9549adc + 977cd3e commit 12b6d21
Show file tree
Hide file tree
Showing 50 changed files with 2,837 additions and 984 deletions.
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 1.6.0
current_version = 1.6.1
commit = False
tag = False

Expand Down
2 changes: 1 addition & 1 deletion .cookiecutterrc
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ default_context:
test_matrix_configurator: 'no'
test_matrix_separate_coverage: 'no'
test_runner: 'pytest'
travis: 'yes'
travis: 'no'
version: '0.1.0'
website: 'https://mentalab.co/'
year_from: '2018'
Expand Down
25 changes: 25 additions & 0 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: linting
on:
pull_request:
branches: [master, develop]
jobs:
linting:
name: Lint code
runs-on: ubuntu-latest
steps:
- name: Checkout source repository
uses: actions/checkout@v2
with:
fetch-depth: 0

- name: lint the code
uses: ricardochaves/python-lint@v1.4.0
with:
# Disable unnecessary linters (default flag is true)
use-pylint: false
use-pycodestyle: false
use-black: false
use-mypy: false
# Activate required linters
use-flake8: true
use-isort: true
36 changes: 36 additions & 0 deletions .github/workflows/testing.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: testing
on:
pull_request:
branches: [master]
jobs:
test:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python: [3.8.10]
runs-on: ${{ matrix.os }}
timeout-minutes: 10
steps:
- name: Checkout source repository
uses: actions/checkout@v2
with:
fetch-depth: 0
clean: false

- name: checkout to current branch
run: git checkout ${{ env.BRANCH }}

- name: Install non-python dependencies on Ubuntu
if: runner.os == 'Linux'
run: |
sudo apt-get update -y
sudo apt-get install libbluetooth-dev -y
- name: Set up Python ${{ matrix.python }}
uses: s-weigand/setup-conda@v1
with:
python-version: ${{ matrix.python }}
conda-channels: anaconda, conda-forge
- run: |
conda install -c conda-forge liblsl
pip install -e .[test]
python -m pytest --import-mode=append
62 changes: 0 additions & 62 deletions .travis.yml

This file was deleted.

69 changes: 23 additions & 46 deletions CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
Contributing
============

Contributions are welcome, and they are greatly appreciated! Every
little bit helps, and credit will always be given.
Contributions are welcome and appreciated! Every
little helps, and credit will always be given.

Bug reports
===========
Expand All @@ -17,74 +17,51 @@ When `reporting a bug <https://github.com/Mentalab-hub/explorepy/issues>`_ pleas
Documentation improvements
==========================

explorepy could always use more documentation, whether as part of the
official explorepy docs, in docstrings, or even on the web in blog posts,
articles, and such.
We are happy to receive contributions to our documentation. Please do suggest changes to the
official ``explorepy`` docs and docstrings, or increase our web presence with blog posts
and articles.

Feature requests and feedback
=============================

The best way to send feedback is to file an issue at https://github.com/Mentalab-hub/explorepy/issues.
The best way to send feedback is to file an issue at: https://github.com/Mentalab-hub/explorepy/issues.

If you are proposing a feature:

* Explain in detail how it would work.
* Keep the scope as narrow as possible, to make it easier to implement.
* Remember that this is a volunteer-driven project, and that code contributions are welcome :)

Development
===========

To set up `explorepy` for local development:
To set up ``explorepy`` for local development:

1. Fork `explorepy <https://github.com/Mentalab-hub/explorepy>`_
(look for the "Fork" button).
2. Clone your fork locally::

git clone git@github.com:your_name_here/explorepy.git
2. Clone your fork locally
::
git clone git@github.com:USERNAME/explorepy.git

3. Create a branch for local development::

git checkout -b name-of-your-bugfix-or-feature

Now you can make your changes locally.

4. When you're done making changes, run all the checks, doc builder and spell checker with `tox <http://tox.readthedocs.io/en/latest/install.html>`_ one command::

tox

5. Commit your changes and push your branch to GitHub::
3. Create a branch for local development
::
git checkout -b name-of-bugfix-or-feature

4. Commit your changes and push your branch to GitHub
::
git add .
git commit -m "Your detailed description of your changes."
git push origin name-of-your-bugfix-or-feature
git commit -m "Detailed description of changes."
git push origin name-of-bugfix-or-feature

6. Submit a pull request through the GitHub website.
5. Submit a pull request to the develop branch through the GitHub website.

Pull Request Guidelines
-----------------------

If you need some code review or feedback while you're developing the code just make the pull request.

For merging, you should:

1. Include passing tests (run ``tox``) [1]_.
2. Update documentation when there's new API, functionality etc.
3. Add a note to ``CHANGELOG.rst`` about the changes.
4. Add yourself to ``AUTHORS.rst``.

.. [1] If you don't have all the necessary python versions available locally you can rely on Travis - it will
`run the tests <https://travis-ci.org/Mentalab-hub/explorepy/pull_requests>`_ for each change you add in the pull request.
It will be slower though ...
Tips
----

To run a subset of tests::

tox -e envname -- pytest -k test_myfeature
For a code review or feedback, create a pull request to the develop branch.

To run all the test environments in *parallel* (you need to ``pip install detox``)::
For merge approval:

detox
1. Update the documentation when appropriate.
2. Add a note to ``CHANGELOG.rst`` about the changes.
3. Add yourself to ``AUTHORS.rst``.
2 changes: 1 addition & 1 deletion MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ include LICENSE
include README.rst
recursive-include lib *

include tox.ini .travis.yml appveyor.yml
include tox.ini

global-exclude *.py[cod] __pycache__ *.dylib
49 changes: 23 additions & 26 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,21 @@

.. start-badges
|docs| |version| |wheel| |supported-versions| |commits-since| |travis|
|docs| |version| |wheel| |supported-versions| |commits-since|

.. |docs| image:: https://readthedocs.org/projects/explorepy/badge/?style=flat
:target: https://readthedocs.org/projects/explorepy
:alt: Documentation Status

.. |travis| image:: https://travis-ci.org/Mentalab-hub/explorepy.svg?branch=master
:alt: Travis-CI Build Status
:target: https://travis-ci.org/Mentalab-hub/explorepy

.. |version| image:: https://img.shields.io/pypi/v/explorepy.svg
:alt: PyPI Package latest release
:target: https://pypi.org/project/explorepy


.. |commits-since| image:: https://img.shields.io/github/commits-since/Mentalab-hub/explorepy/v1.6.0.svg
.. |commits-since| image:: https://img.shields.io/github/commits-since/Mentalab-hub/explorepy/v1.6.1.svg
:alt: Commits since latest release
:target: https://github.com/Mentalab-hub/explorepy/compare/v1.6.0...master
:target: https://github.com/Mentalab-hub/explorepy/compare/v1.6.1...master


.. |wheel| image:: https://img.shields.io/pypi/wheel/explorepy.svg
Expand All @@ -41,33 +38,31 @@
.. end-badges
==================
Explorepy overview
``explorepy`` overview
==================

Explorepy is an open-source Python API designed to collect and process biosignal data using Mentalab’s Explore device. Amongst other things, Explorepy provides the following features:

* Real-time streaming of ExG, orientation and environmental data
* Real-time visualization
* Data recording in CSV and BDF+ formats
* LSL integration
* Impedance measurement
* Explore device configuration
``explorepy`` is an open-source Python API designed to collect and process ExG data using Mentalab's Explore device. Amongst other things, ``explorepy`` provides the following features:

* Real-time streaming of ExG, orientation and environmental data.
* Real-time visualization of ExG, orientation and environmental data.
* Data recording in CSV and BDF+ formats.
* Integration with LabStreaming Layer.
* Electrode impedance measurements.
* Explore device configuration.

Quick installation
==================
For Windows users, the best way to install Explorepy is to download the latest Explorepy version from the
the `release page <https://github.com/Mentalab-hub/explorepy/releases>`_ or use pip. Please note that dependencies will install automatically from the release page.
For Windows users, the best way to install ``explorepy`` is to download the latest ``explorepy`` version from the `release page <https://github.com/Mentalab-hub/explorepy/releases>`_. Please note that dependencies will install automatically from the release page.

For other operating systems, or to build the package manually on Windows, please refer to the information below.


Requirements
------------

* Python 3.6 or newer versions
* Visual Studio 2015 community edition (only Windows, in case of building the package)
* Bluetooth header files (only Linux -> use this command: ``sudo apt-get install libbluetooth-dev``)
* Python 3.6 to Python 3.9.
* Visual Studio 2015 community edition (Windows only. For package building).
* Bluetooth header files (Linux only. Use: ``sudo apt-get install libbluetooth-dev``).


Detailed installation instructions can be found on the `installation page <https://explorepy.readthedocs.io/en/latest/installation.html>`_.
Expand All @@ -89,17 +84,19 @@ Get started

CLI command
-----------
For a simple, quick start of Explorepy, run:

``explorepy acquire -n Explore_XXXX``
To check ``explorepy`` is running use:
::
explorepy acquire -n Explore_XXXX

Enter ``explorepy -h`` for help.
For help, use:
::
explorepy -h


Python code
-----------

When working in Python, the following connects to the Explore device and prints the data.
In Python you can connect to the Explore device and print data using:

::

Expand Down Expand Up @@ -132,7 +129,7 @@ ECG with heart beat detection:
Documentation
=============

For full API documentation, visit: https://explorepy.readthedocs.io/
For full API documentation, visit: https://explorepy.readthedocs.io/.

Troubleshooting
===============
Expand Down
Loading

0 comments on commit 12b6d21

Please sign in to comment.