Skip to content

Commit 53c273e

Browse files
committed
PyPI setup
1 parent f9a1e2e commit 53c273e

File tree

4 files changed

+111
-21
lines changed

4 files changed

+111
-21
lines changed

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
1+
*.mpy
2+
.idea
13
__pycache__
24
_build
35
*.pyc
46
.env
57
build*
68
bundles
9+
*.DS_Store
10+
.eggs
11+
dist
12+
**/*.egg-info

.travis.yml

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,33 @@
1-
# This is a common .travis.yml for generating library release zip files for
2-
# CircuitPython library releases using circuitpython-build-tools.
3-
# See https://github.com/adafruit/circuitpython-build-tools for detailed setup
4-
# instructions.
5-
61
dist: trusty
72
sudo: false
83
language: python
94
python:
10-
- "3.6"
11-
5+
- '3.6'
126
cache:
13-
pip: true
14-
7+
pip: true
158
deploy:
16-
provider: releases
17-
api_key: $GITHUB_TOKEN
9+
- provider: releases
10+
api_key: "$GITHUB_TOKEN"
1811
file_glob: true
19-
file: $TRAVIS_BUILD_DIR/bundles/*
12+
file: "$TRAVIS_BUILD_DIR/bundles/*"
2013
skip_cleanup: true
2114
overwrite: true
2215
on:
2316
tags: true
24-
17+
- provider: pypi
18+
user: adafruit-travis
19+
on:
20+
tags: true
21+
password:
22+
secure: m2YkBNLO2NFz4ZKpQNW/+m5Wc1/W2aP24BOu9TpoJlE0pUPtag0GUFzOb2roHDbUzLl7y0anHaVVcsVztZyS0b64KiNzZ2iWdN39S5X0nsq0aQAKcKI6TTNl//IPIn23LgrzjQF05k8YKKuY3QnSz9oo3inswVOEeQbZwkPtaVHiJgL9uCqdivy82xyjrnoxgfy1V587tvQwpiJ0Tc10seyyuBjzw33Zb5hgJGsWeS8fuqTl/8nnUGDXCnNPPyyHkxYLjDrbH9x87Hp+eR8URctwrjIn39o4uuF3pgmnmEA1u5fpKyCGuVAsLSlSvmYPzkf0fLD3YDpws4KEm2dr9bBX+x0SlZMpRKr+snW+nzMtK0ltZKOBBS9g1suohOo5qjexNl70ykLU7OchKWCmAWclRlP3GWnpX2gcKGk+fzvv5OqKFI8+6UMcOHLOLzsPkl/9hMisci+VijBIUs7rZckAy2terRayqqwOEq15j3YLCTzlLP1vIfPc8S6ukH1A6+rEoNvGMqmCIAQntbQSwzjgL+4xAlfc5SDBQG9+dKANHCH4zJlKnXfbLxn3SMchtPr8jz6JE/UtOTc7+/9as8bOxfre3ElCPzDZv6M3k5CQHr+hANAepQR8Om86aRry7a7vYym/ESoJdqBURpmq6/+/I2bxnj/1MqlGRahPx1U=
2523
install:
26-
- pip install -r requirements.txt
27-
- pip install circuitpython-build-tools Sphinx sphinx-rtd-theme
28-
- pip install --force-reinstall pylint==1.9.2
29-
24+
- pip install -r requirements.txt
25+
- pip install circuitpython-build-tools Sphinx sphinx-rtd-theme
26+
- pip install --force-reinstall pylint==1.9.2
3027
script:
31-
- pylint adafruit_mlx90393.py
32-
- ([[ ! -d "examples" ]] || pylint --disable=missing-docstring,invalid-name,bad-whitespace examples/*.py)
33-
- circuitpython-build-bundles --filename_prefix adafruit_circuitpython_mlx90393 --library_location .
34-
- cd docs && sphinx-build -E -W -b html . _build/html
28+
- pylint adafruit_mlx90393.py
29+
- ([[ ! -d "examples" ]] || pylint --disable=missing-docstring,invalid-name,bad-whitespace
30+
examples/*.py)
31+
- circuitpython-build-bundles --filename_prefix adafruit_circuitpython_mlx90393 --library_location
32+
.
33+
- cd docs && sphinx-build -E -W -b html . _build/html

README.rst

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,31 @@ Please ensure all dependencies are available on the CircuitPython filesystem.
2626
This is easily achieved by downloading
2727
`the Adafruit library and driver bundle <https://github.com/adafruit/Adafruit_CircuitPython_Bundle>`_.
2828

29+
Installing from PyPI
30+
--------------------
31+
32+
On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally `from
33+
PyPI <https://pypi.org/project/adafruit-circuitpython-mlx90939/>`_. To install for current user:
34+
35+
.. code-block:: shell
36+
37+
pip3 install adafruit-circuitpython-mlx90939
38+
39+
To install system-wide (this may be required in some cases):
40+
41+
.. code-block:: shell
42+
43+
sudo pip3 install adafruit-circuitpython-mlx90939
44+
45+
To install in a virtual environment in your current project:
46+
47+
.. code-block:: shell
48+
49+
mkdir project-name && cd project-name
50+
python3 -m venv .env
51+
source .env/bin/activate
52+
pip3 install adafruit-circuitpython-mlx90939
53+
2954
Usage Example
3055
=============
3156

setup.py

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
"""A setuptools based setup module.
2+
3+
See:
4+
https://packaging.python.org/en/latest/distributing.html
5+
https://github.com/pypa/sampleproject
6+
"""
7+
8+
# Always prefer setuptools over distutils
9+
from setuptools import setup, find_packages
10+
# To use a consistent encoding
11+
from codecs import open
12+
from os import path
13+
14+
here = path.abspath(path.dirname(__file__))
15+
16+
# Get the long description from the README file
17+
with open(path.join(here, 'README.rst'), encoding='utf-8') as f:
18+
long_description = f.read()
19+
20+
setup(
21+
name='adafruit-circuitpython-mlx90939',
22+
23+
use_scm_version=True,
24+
setup_requires=['setuptools_scm'],
25+
26+
description='CircuitPython driver for the MLX90393 3-axis magnetometer.',
27+
long_description=long_description,
28+
long_description_content_type='text/x-rst',
29+
30+
# The project's main homepage.
31+
url='https://github.com/adafruit/Adafruit_CircuitPython_MLX90393',
32+
33+
# Author details
34+
author='Adafruit Industries',
35+
author_email='circuitpython@adafruit.com',
36+
37+
install_requires=['Adafruit-Blinka', 'adafruit-circuitpython-busdevice'],
38+
39+
# Choose your license
40+
license='MIT',
41+
42+
# See https://pypi.python.org/pypi?%3Aaction=list_classifiers
43+
classifiers=[
44+
'Development Status :: 3 - Alpha',
45+
'Intended Audience :: Developers',
46+
'Topic :: Software Development :: Libraries',
47+
'Topic :: System :: Hardware',
48+
'License :: OSI Approved :: MIT License',
49+
'Programming Language :: Python :: 3',
50+
'Programming Language :: Python :: 3.4',
51+
'Programming Language :: Python :: 3.5',
52+
],
53+
54+
# What does your project relate to?
55+
keywords='adafruit three-axis magnetometer magnet mlx90393 hardware micropython circuitpython',
56+
57+
# You can just specify the packages manually here if your project is
58+
# simple. Or you can use find_packages().
59+
py_modules=['adafruit_mlx90393'],
60+
)

0 commit comments

Comments
 (0)