Skip to content

Commit

Permalink
Incorporate nengobones
Browse files Browse the repository at this point in the history
- removed setup.py from nengobones.yml generation because of cython
complications
- TODO: in the future look at cython compiling the threejoint arm on
demand rather than at setup time
- added LICENCE template to include open source licences used in this
repo
  • Loading branch information
studywolf committed Jan 22, 2020
1 parent 09809a9 commit 6ffba4f
Show file tree
Hide file tree
Showing 7 changed files with 383 additions and 62 deletions.
9 changes: 9 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,19 @@
# Automatically generated by nengo-bones, do not edit this file directly

codecov:
ci:
- "!ci.appveyor.com"
notify:
require_ci_to_pass: no

coverage:
status:
project:
default:
enabled: yes
target: auto
patch:
default:
enabled: yes
target: 100%
changes: no
69 changes: 69 additions & 0 deletions .nengobones.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
project_name: ABR Control
pkg_name: abr_control
repo_name: abr/abr_control
author_email: travis.dewolf@appliedbrainresearch.com
description: Robotic arm control in Python

copyright_start: 2017

license_rst: {
type: nengo
}

contributing_rst: {}

# contributors_rst: {}

setup_cfg:
coverage:
omit_files:
- "abr_control/_vendor/*"
- "abr_control/interfaces/coppeliasim_files"
- "abr_control/arms/threejoint/arm_files"
flake8:
exclude:
- abr_control/_vendor
- abr_control/interfaces/coppeliasim_files
- abr_control/arms/threejoint/arm_files
pytest:
norecursedirs:
- "examples"
- "abr_control/_vendor"
pylint:
ignore:
- _vendor
- arm_files
- coppeliasim_files
known_third_party:
- mpl_toolkits
- nengo
- nengolib
- scipy

travis_yml:
jobs:
- script: static
- script: test
- script: test-coverage
test_args: --plots
pypi_user: tbekolay
deploy_dists:
- sdist
- bdist_wheel

ci_scripts:
- template: static
codespell_ignore_words:
- DOF
- dof
- hist
codespell_skip:
- arm_files
- coppeliasim_files
- _vendor
- template: test
- template: test
output_name: test-coverage
coverage: true

codecov_yml: {}
47 changes: 47 additions & 0 deletions .templates/LICENSE.rst.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{% include "templates/LICENSE.rst.template" %}

Licensed code
=============

ABR Control imports several open source libraries:

* `NumPy <https://numpy.org/>`_ - Used under
`BSD license <https://numpy.org/license.html>`__
* `Cython <https://github.com/cython/cython>`_ - Used under
`Apache license <https://github.com/cython/cython/blob/master/LICENSE.txt>`__
* `setuptools <https://github.com/pypa/setuptools>`_ - Used under
`MIT license <https://github.com/pypa/setuptools/blob/master/LICENSE>`__
* `SciPy <https://github.com/scipy/scipy>`_ - Used under
`BSD 3-Clause license <https://github.com/scipy/scipy/blob/master/LICENSE.txt>`__
* `Cloudpickle <https://github.com/cloudpipe/cloudpickle>`_ - Used under
`Custom license <https://github.com/cloudpipe/cloudpickle/blob/master/LICENSE>`__
* `SymPy <https://github.com/sympy/sympy>`_ - Used under
`Custom license <https://github.com/sympy/sympy/blob/master/LICENSE>`__
* `matplotlib <https://matplotlib.org/>`_ - Used under
`modified PSF license <https://matplotlib.org/users/license.html>`__

ABR_Control also includes code modified from other libraries.

The file ``abr_control/utils/transformations.py`` contains code with the
following license:

Copyright (c) 2006-2015, Christoph Gohlke
Copyright (c) 2006-2015, The Regents of the University of California
Produced at the Laboratory for Fluorescence Dynamics
All rights reserved.


To run the tests, ABR Control uses:

* `codespell <https://github.com/codespell-project/codespell>`_ - Used under
`GPL license <https://github.com/codespell-project/codespell/blob/master/COPYING>`__
* `pylint <https://www.pylint.org/>`_ - Used under
`GPL license <https://github.com/PyCQA/pylint/blob/master/COPYING>`__
* `pytest <https://docs.pytest.org/en/latest/>`_ - Used under
`MIT license <https://docs.pytest.org/en/latest/license.html>`__
* `pytest-cov <https://github.com/pytest-dev/pytest-cov>`_ - Used under
`MIT license <https://github.com/pytest-dev/pytest-cov/blob/master/LICENSE>`__
* `pytest-rng <https://www.nengo.ai/pytest-rng/>`__ Used under
`MIT license <https://github.com/nengo/pytest-rng/blob/master/LICENSE.rst>`__
* `pytest-xdist <https://github.com/pytest-dev/pytest-xdist>`_ - Used under
`MIT license <https://github.com/pytest-dev/pytest-xdist/blob/master/LICENSE>`__
102 changes: 83 additions & 19 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,38 +1,102 @@
language: minimal
sudo: false
# Automatically generated by nengo-bones, do not edit this file directly

language: python
python: 3.6
notifications:
email:
- travis.dewolf@appliedbrainresearch.com
cache:
directories:
- $HOME/miniconda
timeout: 600
on_success: change
on_failure: change
cache: pip

dist: xenial

env:
global:
- PYTHON="3.6"
- PIP_UPGRADE="true"
- PIP_UPGRADE_STRATEGY="eager"
- SCRIPT="test"
- TEST_ARGS=""
- BRANCH_NAME="${TRAVIS_PULL_REQUEST_BRANCH:-$TRAVIS_BRANCH}"

matrix:
jobs:
include:
- env: MODE="test"
- env: MODE="static"
-
env:
SCRIPT="static"
-
env:
SCRIPT="test"
-
env:
SCRIPT="test-coverage"
TEST_ARGS="--plots"
- stage: deploy
if: branch =~ ^release-candidate-* OR tag =~ ^v[0-9]*
env: SCRIPT="deploy"
cache: false
deploy:
- provider: pypi
server: https://test.pypi.org/legacy/
user: tbekolay
password: $PYPI_TOKEN
distributions: "sdist bdist_wheel "
on:
all_branches: true
condition: $TRAVIS_BRANCH =~ ^release-candidate-*
condition: $TRAVIS_TAG = ""
- provider: pypi
user: tbekolay
password: $PYPI_TOKEN
distributions: "sdist bdist_wheel "
on:
all_branches: true
condition: $TRAVIS_TAG =~ ^v[0-9]*

before_install:
- source .ci/conda.sh install
# export travis_terminate for use in scripts, from here:
# https://github.com/travis-ci/travis-build/blob/master/lib/travis/build/bash/travis_terminate.bash
- export -f travis_terminate
_travis_terminate_agent
_travis_terminate_freebsd
_travis_terminate_linux
_travis_terminate_osx
_travis_terminate_unix
_travis_terminate_windows
# upgrade pip
- pip install pip --upgrade
# install/run nengo-bones
- pip install nengo-bones
- bones-generate --output-dir .ci ci-scripts
- if [[ "$TRAVIS_PYTHON_VERSION" < "3.6" ]]; then
echo "Skipping bones-check because Python $TRAVIS_PYTHON_VERSION < 3.6";
else
bones-check;
fi
# display environment info
- pip freeze

install:
- .ci/$MODE.sh install
- .ci/$SCRIPT.sh install
- pip freeze

before_script:
- .ci/$SCRIPT.sh before_script

script:
- .ci/$MODE.sh script
- .ci/$SCRIPT.sh script

before_cache:
- .ci/conda.sh before_cache
- .ci/$SCRIPT.sh before_cache

after_success:
- .ci/$MODE.sh after_success
- .ci/$SCRIPT.sh after_success

after_failure:
- .ci/$SCRIPT.sh after_failure

before_deploy:
- .ci/$SCRIPT.sh before_deploy

after_deploy:
- .ci/$SCRIPT.sh after_deploy

after_script:
- .ci/$MODE.sh after_script
- .ci/$SCRIPT.sh after_script
46 changes: 46 additions & 0 deletions CONTRIBUTING.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
.. Automatically generated by nengo-bones, do not edit this file directly
***************************
Contributing to ABR Control
***************************

Issues and pull requests are always welcome!
We appreciate help from the community to make ABR Control better.

Filing issues
=============

If you find a bug in ABR Control,
or think that a certain feature is missing,
please consider
`filing an issue <https://github.com/abr/abr_control/issues>`_!
Please search the currently open issues first
to see if your bug or feature request already exists.
If so, feel free to add a comment to the issue
so that we know that multiple people are affected.

Making pull requests
====================

If you want to fix a bug or add a feature to ABR Control,
we welcome pull requests.
Ensure that you fill out all sections of the pull request template,
deleting the comments as you go.
We check most aspects of code style automatically.
Please refer to our
`code style guide <https://www.nengo.ai/nengo-bones/style.html>`_
for things that we check manually.

Contributor agreement
=====================

We require that all contributions be covered under
our contributor assignment agreement. Please see
`the agreement <https://www.nengo.ai/caa/>`_
for instructions on how to sign.

More details
============

For more details on how to contribute to Nengo,
please see the `developer guide <https://www.nengo.ai/contributing/>`_.
Loading

0 comments on commit 6ffba4f

Please sign in to comment.