-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #10 from nsidc/cleanup-cdr-logic-from-pmicecon
Cleanup duplicate CDR logic from `pm_icecon`
- Loading branch information
Showing
14 changed files
with
109 additions
and
738 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
While developing at NSIDC, the workflow is: | ||
|
||
### For developers at NSIDC | ||
|
||
For developers at NSIDC, the [seaice_ecdr_vm | ||
repository](https://bitbucket.org/nsidc/seaice_ecdr_vm/src/main/) provides the | ||
NSIDC VM configuration for this project. | ||
|
||
`pm_icecon`, `seaice_ecdr`, and `pm_tb_data` will be checked out to | ||
`/home/vagrant/{project_name}`. | ||
|
||
### Adding dependencies | ||
|
||
To add new dependencies to this project, update the `environment.yml` file with | ||
the new dependency. Then update your conda environment: | ||
|
||
``` | ||
$ mamba env update | ||
``` | ||
|
||
Once the conda environment has been updated, lock the environment using `conda-lock`: | ||
|
||
``` | ||
$ conda-lock | ||
``` | ||
|
||
Commit the changes for the `environment.yml` and the `conda-lock.yml` files. | ||
|
||
|
||
### Running tests/CI | ||
|
||
#### Linting / formatting | ||
This project uses [pre-commit](https://pre-commit.com/) to run pre-commit hooks | ||
that check and format this project's code for stylistic consistency (using | ||
`ruff` and `black`) . | ||
|
||
The pre-commit configuration for this project can be found in | ||
`.pre-commit-config.yaml`. Configuration for specific tools (e.g., `mypy`) is | ||
given in the included `pyproject.toml`. | ||
|
||
For more information about using `pre-commit`, please sese the [Scientific | ||
Python Library Development Guide's section on | ||
pre-commit](https://learn.scientific-python.org/development/guides/gha-basic/#pre-commit). | ||
|
||
To install pre-commit to run checks for each commit you make: | ||
|
||
``` | ||
$ pre-commit install | ||
``` | ||
|
||
To manually run the pre-commit hooks without a commit: | ||
|
||
``` | ||
$ pre-commit run --all-files | ||
``` | ||
|
||
#### Running unit tests | ||
|
||
Use `pytest` to run unit tests: | ||
|
||
``` | ||
$ python -m pytest | ||
``` | ||
|
||
Alternatively, use `scripts/run_ecdr_pytest.sh`. | ||
|
||
#### Type-checking | ||
|
||
Use `mypy` to run static typechecking | ||
|
||
``` | ||
$ mypy | ||
``` | ||
|
||
## Running tests / generating sample data | ||
|
||
Can run unit and integration tests -- or manual subsets of -- with: | ||
|
||
./scripts/run_ecdr_pytest.sh | ||
|
||
Create an Initial Daily ECDR file with e.g.,: | ||
|
||
./scripts/cli.sh idecdr --date 2021-04-05 --hemisphere north --resolution 12 --output-dir /tmp/ |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
Oops, something went wrong.