Skip to content

Latest commit

 

History

History
95 lines (73 loc) · 2.43 KB

CONTRIBUTING.md

File metadata and controls

95 lines (73 loc) · 2.43 KB

Development - Contributing

For most issues, we recommend opening a PR against the upstream TiTiler project maintained by Development Seed. We still pull from the upstream frequently. https://github.com/developmentseed/titiler/issues

dev install

git clone https://github.com/Element84/titiler-mosaicjson.git
cd titiler-mosaicjson

python -m pip install \
   pre-commit \
   -e src/titiler/core["test"] \
   -e src/titiler/extensions["test,cogeo,stac"] \
   -e src/titiler/mosaic["test"] \
   -e src/titiler/application["test"]

pre-commit

This repo is set to use pre-commit to run isort, flake8, pydocstring, black ("uncompromising Python code formatter") and mypy when committing new code.

pre-commit install

Run tests

Each titiler's modules has its own test suite which can be ran independently

# titiler.core
python -m pytest src/titiler/core --cov=titiler.core --cov-report=xml --cov-append --cov-report=term-missing

# titiler.extensions
python -m pytest src/titiler/extensions --cov=titiler.extensions --cov-report=xml --cov-append --cov-report=term-missing

# titiler.mosaic
python -m pytest src/titiler/mosaic --cov=titiler.mosaic --cov-report=xml --cov-append --cov-report=term-missing

# titiler.application
python -m pytest src/titiler/application --cov=titiler.application --cov-report=xml --cov-append --cov-report=term-missing

Docs

git clone https://github.com/Element84/titiler-mosaicjson.git
cd titiler
python -m pip install nbconvert mkdocs mkdocs-material mkdocs-jupyter pygments pdocs

Hot-reloading docs:

mkdocs serve -f docs/mkdocs.yml

To manually deploy docs (note you should never need to do this because Github Actions deploys automatically for new commits.):

mkdocs gh-deploy -f docs/mkdocs.yml
pdocs as_markdown \
   --output_dir docs/src/api \
   --exclude_source \
   --overwrite \
   titiler.core.dependencies \
   titiler.core.factory \
   titiler.core.utils \
   titiler.core.routing \
   titiler.core.errors \
   titiler.core.resources.enums \
   titiler.core.middleware

pdocs as_markdown \
   --output_dir docs/src/api \
   --exclude_source \
   --overwrite \
   titiler.extensions.cogeo \
   titiler.extensions.viewer \
   titiler.extensions.stac

pdocs as_markdown \
   --output_dir docs/src/api \
   --exclude_source \
   --overwrite \
   titiler.mosaic.factory \
   titiler.mosaic.resources.enums \
   titiler.mosaic.errors