Use rst2pyi to generate type stubs and package
This commit is contained in:
parent
63b253c33a
commit
7f7665c1c0
3
.gitignore
vendored
3
.gitignore
vendored
@ -12,6 +12,8 @@
|
||||
|
||||
# Packages
|
||||
############
|
||||
dist/
|
||||
*.egg-info
|
||||
|
||||
# Logs and Databases
|
||||
######################
|
||||
@ -25,6 +27,7 @@
|
||||
######################
|
||||
build/
|
||||
bin/
|
||||
circuitpython-stubs/
|
||||
|
||||
# Test failure outputs
|
||||
######################
|
||||
|
14
Makefile
14
Makefile
@ -17,6 +17,13 @@ CONFDIR = .
|
||||
FORCE = -E
|
||||
VERBOSE = -v
|
||||
|
||||
# path to generated type stubs
|
||||
STUBDIR = circuitpython-stubs
|
||||
# Run "make VALIDATE= stubs" to avoid validating generated stub files
|
||||
VALIDATE = -v
|
||||
# path to pypi source distributions
|
||||
DISTDIR = dist
|
||||
|
||||
# Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the
|
||||
# full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the
|
||||
# executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
|
||||
@ -31,7 +38,7 @@ I18NSPHINXOPTS = $(BASEOPTS)
|
||||
|
||||
TRANSLATE_SOURCES = extmod lib main.c ports/atmel-samd ports/nrf py shared-bindings shared-module supervisor
|
||||
|
||||
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
|
||||
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext stubs
|
||||
|
||||
help:
|
||||
@echo "Please use \`make <target>' where <target> is one of"
|
||||
@ -60,6 +67,7 @@ help:
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILDDIR)/*
|
||||
rm -rf $(STUBDIR) $(DISTDIR)
|
||||
|
||||
html:
|
||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
||||
@ -203,3 +211,7 @@ translate: locale/circuitpython.pot
|
||||
|
||||
check-translate: locale/circuitpython.pot $(wildcard locale/*.po)
|
||||
$(PYTHON) tools/check_translations.py $^
|
||||
|
||||
stubs:
|
||||
rst2pyi $(VALIDATE) shared-bindings/ $(STUBDIR)
|
||||
python setup.py sdist
|
||||
|
1
requirements-dev.txt
Normal file
1
requirements-dev.txt
Normal file
@ -0,0 +1 @@
|
||||
rst2pyi=0.1.0
|
22
setup.py
Normal file
22
setup.py
Normal file
@ -0,0 +1,22 @@
|
||||
from datetime import datetime
|
||||
from setuptools import setup
|
||||
from pathlib import Path
|
||||
|
||||
stub_root = Path("circuitpython-stubs")
|
||||
stubs = [p.relative_to(stub_root).as_posix() for p in stub_root.glob("*.pyi")]
|
||||
|
||||
now = datetime.utcnow()
|
||||
version = now.strftime("%Y.%m.%d")
|
||||
|
||||
setup(
|
||||
name="circuitpython-stubs",
|
||||
description="PEP 561 type stubs for CircuitPython",
|
||||
url="https://github.com/adafruit/circuitpython",
|
||||
author="John Reese",
|
||||
author_email="john@noswap.com",
|
||||
version=version,
|
||||
license="MIT",
|
||||
package_data={"circuitpython-stubs": stubs},
|
||||
packages=["circuitpython-stubs"],
|
||||
setup_requires=["setuptools>=38.6.0"],
|
||||
)
|
Loading…
Reference in New Issue
Block a user