Skip to main content

Fluvial Particle

PyPI Status Python Version License Read the Docs

Tests Codecov pre-commit Black

Features

  • TODO

Requirements

per Cliff Hills setup description: https://code.usgs.gov/wma/nhgf/pygeoapi-plugin-cookiecutter

To set up your development environment do the following.

  • fork the reposistory
# to remind yourself your working on a fork
git clone git@code.usgs.gov:<user_id>/fluvparticle.git fluvial-partile-fork

Setup Development Environment

conda env create -f environment.yml
conda develop -n {{cookiecutter.project_name}} src
conda activate {{cookiecutter.project_name}}
pip install -r requirements.dev

It is important to get preccommit enabled on the project, to ensure that certain standards are always met on a git commit. With several of these, it might fail if files are changed, but it will change them, and trying the commit a second time will actually work.

Git hook configuration

pre-commit install --install-hooks

Testing

Nox is used for testing everything, with several sessions built-in. To run the full suite of tests, simply use:

nox

The different sessions are:

  • pre-commit -- validates that the preccommit checks all come back clean.
  • safety -- validates the Safety of all production dependencies.
  • mypy -- validates the type-hints for the application using mypy.
  • tests -- runs all pytest tests.
  • typeguard -- runs all pytest tests, validates with Typeguard.
  • xdoctest -- runs any and all documentation examples with xdoctest.
  • docs-build -- builds the full set of generated API docs with Sphinx.

These can be run individually with the following command:

nox -s <session>

Replace <session> with the name of the session give above, i.e.:

nox -s mypy

You can also simply run pytest tests, by using the command:

pytest tests

Dependencies

Production dependencies are duplicated, in both requirements.txt and environment.yml due to how conda does not work with the requirements.txt file. It is necessary for both files to be updated as dependencies are added.

Development dependencies are contained in requirements.dev.

Version Management

The projects made by this cookiecutter use Bump2version for version management. The default version that the project starts with is a developmental version, 0.0.1-dev0. In github, this should be auto-incremented on each commit to the next dev build number. To manage the version changes yourself, you can use the Bump2version command:

bump2version <part>

Where <part> is one of:

  • major
  • minor
  • patch
  • build

Note: : This makes a dev version, which does not write a tag into git. It is just useful for development purposes and not the version that is recommended for a release version. The version string will be formatted as: <major>.<minor>.<patch>-dev<build>

To do a production release, use the command:

bump2version --tag release

This will add a tag in the git repository noting the version.

Note: : The version string for this will be: <major>.<minor>.<patch>

Utilities

Installation

You can install Fluvial_Particle via pip from PyPI_:

$ pip install fluvial-particle

Usage

TODO

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide_.

License

Distributed under the terms of the CCO 1.0 license_, Fluvial Particle is free and open source software.

Issues

If you encounter any problems, please file an issue_ along with a detailed description.

Credits

This project was generated from @hillc-usgs_'s Pygeoapi Plugin Cookiecutter_ template.

.._@hillc-usgs: https://github.com/hillc-usgs .._Cookiecutter: https://github.com/audreyr/cookiecutter .._CCO 1.0 license: https://creativecommons.org/publicdomain/zero/1.0/legalcode .._PyPI: https://pypi.org/ .._Pygeoapi Plugin Cookiecutter: https://code.usgs.gov/wma/nhgf/pygeoapi-plugin-cookiecutter .._file an issue: https://github.com/rmcd-mscb/fluvial-particle/issues .._pip: https://pip.pypa.io/ .. github-only .._Contributor Guide: CONTRIBUTING.rst .._Usage: https://fluvial-particle.readthedocs.io/en/latest/usage.html

Metadata

Release files for fluvial-particle 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fluvial-particle 0.0.1
File Size Uploaded
fluvial-particle-0.0.1.tar.gz 31.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fluvial-particle 0.0.1
File Interpreter ABI Platform
fluvial_particle-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 63.6 kB

Release files / fluvial-particle-0.0.1.tar.gz

Download URL fluvial-particle-0.0.1.tar.gz
Size 31.5 kB
Tags Source
SHA-256 checksum
How to use checksums
c4493da662f0d6c9dc7ff349f2116177ea4226709aaf1f250add393df28cc9cf
BLAKE2b-256 checksum
How to use checksums
da14b6ea5ee059dd76a489987a463ec8d4cae89a0657cdbd6131434f7d11ae00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.9.13 Linux/5.10.16.3-microsoft-standard-WSL2

Release files / fluvial_particle-0.0.1-py3-none-any.whl

Download URL fluvial_particle-0.0.1-py3-none-any.whl
Size 32.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b4b0d541a449aa0f6744eb4a694a6ca03635f849a9b6cdcb5b1b6bcf83135515
BLAKE2b-256 checksum
How to use checksums
7bf09cd310a91d4a6ea57630a20108217f18e435c59e0b9734896ea38962e65f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.9.13 Linux/5.10.16.3-microsoft-standard-WSL2

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page