https://github.com/rmcd-mscb/grd2shp_xagg
https://github.com/rmcd-mscb/grd2shp_xagg
Last synced: 6 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/rmcd-mscb/grd2shp_xagg
- Owner: rmcd-mscb
- License: mit
- Created: 2021-08-03T00:45:21.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-02-28T19:58:58.000Z (over 3 years ago)
- Last Synced: 2024-06-06T18:22:23.764Z (about 2 years ago)
- Language: Jupyter Notebook
- Size: 55.7 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Changelog: HISTORY.rst
- Contributing: CONTRIBUTING.rst
- License: LICENSE.rst
- Code of conduct: CODE_OF_CONDUCT.rst
Awesome Lists containing this project
README
# Grd2Shp_Xagg
[](https://pypi.org/project/grd2shp_xagg/)
[](https://pypi.org/project/grd2shp_xagg/)
[](https://pypi.org/project/grd2shp_xagg)
[](https://opensource.org/licenses/MIT)
[](https://grd2shp_xagg.readthedocs.io/)
[](https://github.com/rmcd-mscb/grd2shp_xagg/actions?workflow=Tests)
[](https://codecov.io/gh/rmcd-mscb/grd2shp_xagg)
[](https://github.com/pre-commit/pre-commit)
[](https://github.com/psf/black)
## Features2
- TODO
## Requirements
- TODO
## Installation
You can install _Grd2Shp_Xagg_ via [pip](https://pip.pypa.io/) from
[PyPI](https://pypi.org/):
```console
$ pip install grd2shp_xagg
```
## Usage
Please see the [Command-line Reference](#usage) for details.
## Contributing
Contributions are very welcome. To learn more, see the [Contributor
Guide](CONTRIBUTING.rst).
## License
Distributed under the terms of the [MIT
license](https://opensource.org/licenses/MIT), _Grd2Shp_Xagg_ is free
and open source software.
## Issues
If you encounter any problems, please [file an
issue](https://github.com/rmcd-mscb/grd2shp_xagg/issues) along with a
detailed description.
### Develop
```console
$ 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 [pre-commit]() 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
```console
$ 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:
```console
$ nox
```
The different sessions are:
- `pre-commit` -- validates that the [pre-commit]() 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:
```console
$ nox -s
```
Replace `` with the name of the session give above, i.e.:
```console
$ nox -s mypy
```
You can also simply run [pytest]() tests, by using the command:
```console
$ 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
- Warning:
Do not set the initial version to `0.0.0`. This will break, due to
an unknown bug in [Bump2version]() at this time.
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:
```console
$ bump2version
```
Where `` 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: `..-dev`
To do a production release, use the command:
```console
$ bump2version --tag release
```
This will add a tag in the git repository noting the version.
- Note:
The version string for this will be: `..`
The template supports Python 3.8 and 3.9.
## Credits
This project was generated from
[@hillc-usgs](https://github.com/hillc-usgs)'s [Pygeoapi Plugin
Cookiecutter](https://code.usgs.gov/wma/nhgf/pygeoapi-plugin-cookiecutter)
template.