From 000c39ded4f214b76cfbf5f80495c8f079038a08 Mon Sep 17 00:00:00 2001 From: Kattni Rembor Date: Mon, 6 Aug 2018 12:05:57 -0400 Subject: [PATCH 1/3] PyPi setup. --- .gitignore | 8 ++++-- .travis.yml | 39 +++++++++++++++-------------- adafruit_mma8451.py | 6 +++-- docs/conf.py | 2 +- requirements.txt | 3 ++- setup.py | 60 +++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 93 insertions(+), 25 deletions(-) create mode 100644 setup.py diff --git a/.gitignore b/.gitignore index 77282a4..55f127b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,12 @@ +*.mpy +.idea __pycache__ _build *.pyc .env build* bundles -*.mpy - +*.DS_Store +.eggs +dist +**/*.egg-info \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 7322b5c..52e9206 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,32 +1,33 @@ -# This is a common .travis.yml for generating library release zip files for -# CircuitPython library releases using circuitpython-build-tools. -# See https://github.com/adafruit/circuitpython-build-tools for detailed setup -# instructions. - dist: trusty sudo: false language: python python: - - "3.6" - +- '3.6' cache: - pip: true - + pip: true deploy: - provider: releases - api_key: $GITHUB_TOKEN +- provider: releases + api_key: "$GITHUB_TOKEN" file_glob: true - file: $TRAVIS_BUILD_DIR/bundles/* + file: "$TRAVIS_BUILD_DIR/bundles/*" skip_cleanup: true overwrite: true on: tags: true - +- provider: pypi + user: adafruit-travis + on: + tags: true + password: + secure: b+OqJ0k0AGDQBy4Z6HakuHMjdlkGjs443YTWpAc42efYQ201YeX7n/HkjzN32cjsuXF+OKlf6ZPOwnfS4OXbXThVgN7582LWSkzCQy+tlQKzFwDCbMvjNtB5d8kZoAPkoLUZ6FYjDH6AAicaF1rSgfvHzdWm+1nPs7QgWHs0v9XMTUMMykBU3jMI+Yky88cQSP0cJM7+3yjLDA4GNpzqJdB69tUaJvvSzGdVTeqM+K0oprwkpb/AvruKixX6K4UVr4a8nAznvpzMTFq93fUoUBMA7ptFD1Ozolw9kHkGkWJ1s48Ws3Ga/+vHUFtgGGwwF2Xttru1CEexNLdpUAT/7LrbB2uwkolgSiKEF9YKAdDJ4ePeP57qjt38hLsnZQ2EZXgUdZdJdmmotFS6t+d0hj7HAywAyzHrzPp+XvAWOZSYjOISy+Cn6RD6DGpRqUk/QF6iV6PEBCq22WfJVOiRXDKjgVhbbCPv1uNAIOPYaDa1bxFqushfO2uvtCLnFlaLbA0sOww/4+xkWgEQqsIE9/naHKPggzTYmuJJfUkpGUJULaWWl/mvgetkoG4d0pbhZNVI4R7vSRCR6cnnOsjPbFDLXnWNu0p30j0Wb7qVxkTdRHar8bBRVYh9zkZUZ4O127RIhwuIBQy3EGwtVGNSVA8/ss4JHQJAAaUbR20aSlE= install: - - pip install pylint circuitpython-build-tools Sphinx sphinx-rtd-theme - +- pip install -r requirements.txt +- pip install pylint circuitpython-build-tools Sphinx sphinx-rtd-theme +- pip install --force-reinstall pylint==1.9.2 script: - - pylint adafruit_mma8451.py - - ([[ ! -d "examples" ]] || pylint --disable=missing-docstring,invalid-name,bad-whitespace examples/*.py) - - circuitpython-build-bundles --filename_prefix adafruit-circuitpython-mma8451 --library_location . - - cd docs && sphinx-build -E -W -b html . _build/html +- pylint adafruit_mma8451.py +- ([[ ! -d "examples" ]] || pylint --disable=missing-docstring,invalid-name,bad-whitespace + examples/*.py) +- circuitpython-build-bundles --filename_prefix adafruit-circuitpython-mma8451 --library_location + . +- cd docs && sphinx-build -E -W -b html . _build/html && cd .. diff --git a/adafruit_mma8451.py b/adafruit_mma8451.py index 5dfc29b..10ff2fb 100644 --- a/adafruit_mma8451.py +++ b/adafruit_mma8451.py @@ -35,7 +35,7 @@ from micropython import const -import adafruit_bus_device.i2c_device as i2c_device +import adafruit_bus_device.i2c_device as i2c_dev __version__ = "0.0.0-auto.0" @@ -94,7 +94,7 @@ class MMA8451: _BUFFER = bytearray(6) def __init__(self, i2c, *, address=_MMA8451_DEFAULT_ADDRESS): - self._device = i2c_device.I2CDevice(i2c, address) + self._device = i2c_dev.I2CDevice(i2c, address) # Verify device ID. if self._read_u8(_MMA8451_REG_WHOAMI) != 0x1A: raise RuntimeError('Failed to find MMA8451, check wiring!') @@ -185,6 +185,8 @@ def data_rate(self, val): @property def acceleration(self): + # pylint: disable=no-else-return + # This needs to be refactored when it can be tested """Get the acceleration measured by the sensor. Will return a 3-tuple of X, Y, Z axis acceleration values in m/s^2. """ diff --git a/docs/conf.py b/docs/conf.py index 2261eed..3dc3646 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -18,7 +18,7 @@ # Uncomment the below if you use native CircuitPython modules such as # digitalio, micropython and busio. List the modules you use. Without it, the # autodoc module docs will fail to generate with a warning. -autodoc_mock_imports = ["digitalio", "busio", "micropython", "adafruit_bus_device", "adafruit_bus_device.i2c_device"] +# autodoc_mock_imports = ["digitalio", "busio", "micropython", "adafruit_bus_device", "adafruit_bus_device.i2c_device"] intersphinx_mapping = {'python': ('https://docs.python.org/3.4', None),'BusDevice': ('https://circuitpython.readthedocs.io/projects/bus_device/en/latest/', None),'CircuitPython': ('https://circuitpython.readthedocs.io/en/latest/', None)} diff --git a/requirements.txt b/requirements.txt index c47d35a..3031961 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1,2 @@ -adafruit-circuitpython-bus-device +Adafruit-Blinka +adafruit-circuitpython-busdevice diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..c9480c8 --- /dev/null +++ b/setup.py @@ -0,0 +1,60 @@ +"""A setuptools based setup module. + +See: +https://packaging.python.org/en/latest/distributing.html +https://github.com/pypa/sampleproject +""" + +# Always prefer setuptools over distutils +from setuptools import setup, find_packages +# To use a consistent encoding +from codecs import open +from os import path + +here = path.abspath(path.dirname(__file__)) + +# Get the long description from the README file +with open(path.join(here, 'README.rst'), encoding='utf-8') as f: + long_description = f.read() + +setup( + name='adafruit-circuitpython-mma8451', + + use_scm_version=True, + setup_requires=['setuptools_scm'], + + description='CircuitPython library for MMA8451 3-axis accelerometer..', + long_description=long_description, + long_description_content_type='text/x-rst', + + # The project's main homepage. + url='https://github.com/adafruit/Adafruit_CircuitPython_MMA8451', + + # Author details + author='Adafruit Industries', + author_email='circuitpython@adafruit.com', + + install_requires=['Adafruit-Blinka', 'adafruit-circuitpython-busdevice'], + + # Choose your license + license='MIT', + + # See https://pypi.python.org/pypi?%3Aaction=list_classifiers + classifiers=[ + 'Development Status :: 3 - Alpha', + 'Intended Audience :: Developers', + 'Topic :: Software Development :: Libraries', + 'Topic :: System :: Hardware', + 'License :: OSI Approved :: MIT License', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + ], + + # What does your project relate to? + keywords='adafruit mma8451 axis accelerometer breakout hardware micropython circuitpython', + + # You can just specify the packages manually here if your project is + # simple. Or you can use find_packages(). + py_modules=['adafruit_mma8451'], +) From c3e711949d7da63700b52fcd136ea4f56f2888dd Mon Sep 17 00:00:00 2001 From: Kattni Rembor Date: Mon, 6 Aug 2018 12:29:45 -0400 Subject: [PATCH 2/3] pylint disable added --- adafruit_mma8451.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/adafruit_mma8451.py b/adafruit_mma8451.py index 10ff2fb..7758e18 100644 --- a/adafruit_mma8451.py +++ b/adafruit_mma8451.py @@ -34,8 +34,8 @@ import ustruct as struct from micropython import const - -import adafruit_bus_device.i2c_device as i2c_dev +# pylint: disable=useless-import-alias +import adafruit_bus_device.i2c_device as i2c_device __version__ = "0.0.0-auto.0" @@ -94,7 +94,7 @@ class MMA8451: _BUFFER = bytearray(6) def __init__(self, i2c, *, address=_MMA8451_DEFAULT_ADDRESS): - self._device = i2c_dev.I2CDevice(i2c, address) + self._device = i2c_device.I2CDevice(i2c, address) # Verify device ID. if self._read_u8(_MMA8451_REG_WHOAMI) != 0x1A: raise RuntimeError('Failed to find MMA8451, check wiring!') From 1dfff6bcd0ba6a4e6db60333a2f9303413a5c02f Mon Sep 17 00:00:00 2001 From: Kattni Rembor Date: Mon, 6 Aug 2018 12:31:11 -0400 Subject: [PATCH 3/3] remove pylint disable --- adafruit_mma8451.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adafruit_mma8451.py b/adafruit_mma8451.py index 7758e18..d483df8 100644 --- a/adafruit_mma8451.py +++ b/adafruit_mma8451.py @@ -34,7 +34,7 @@ import ustruct as struct from micropython import const -# pylint: disable=useless-import-alias + import adafruit_bus_device.i2c_device as i2c_device