httpx/noxfile.py
Tom Christie 1ce3cc3269 First pass at autodoc support (#464)
* First pass at autodoc support

* Add mkautodoc requirement for docs builds

* Linting

* pip install httpx when building docs, to make it available to mkautodoc

* Fix code example in docstring slightly

* Use latest mkautodoc to resolve rendering of code snippets in docstrings

* Fill in 'Helper functions' API docs

* First pass at documenting Client

* Add autodoc for Client

* Update to mkautodoc 0.1

* Fix typos
2019-10-30 16:21:39 +01:00

63 lines
1.6 KiB
Python

import nox
nox.options.stop_on_first_error = True
nox.options.reuse_existing_virtualenvs = True
nox.options.keywords = "not serve"
source_files = ("httpx", "tools", "tests", "setup.py", "noxfile.py")
@nox.session
def lint(session):
session.install(
"--upgrade", "autoflake", "black", "flake8", "isort", "seed-isort-config"
)
session.run("autoflake", "--in-place", "--recursive", *source_files)
session.run("seed-isort-config", "--application-directories=httpx")
session.run("isort", "--project=httpx", "--recursive", "--apply", *source_files)
session.run("black", "--target-version=py36", *source_files)
check(session)
@nox.session
def check(session):
session.install(
"--upgrade",
"black",
"flake8",
"flake8-bugbear",
"flake8-comprehensions",
"flake8-pie",
"isort",
"mypy",
)
session.run("black", "--check", "--diff", "--target-version=py36", *source_files)
session.run("flake8", *source_files)
session.run("mypy", "httpx")
session.run(
"isort", "--check", "--diff", "--project=httpx", "--recursive", *source_files
)
@nox.session
def docs(session):
session.install("--upgrade", "mkdocs", "mkdocs-material", "mkautodoc>=0.1.0")
session.install("-e", ".")
session.run("mkdocs", "build")
@nox.session(reuse_venv=True)
def serve(session):
session.install("--upgrade", "mkdocs", "mkdocs-material")
session.run("mkdocs", "serve")
@nox.session(python=["3.6", "3.7", "3.8"])
def test(session):
session.install("--upgrade", "-r", "test-requirements.txt")
session.run("python", "-m", "pytest", *session.posargs)