Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2894 commits
Select commit Hold shift + click to select a range
73ec9a2
Updated test_hydrology_model.py
davidorme Oct 12, 2023
2141e7a
More robust testing of model init properties
davidorme Oct 12, 2023
1297094
Updated test_litter_models.py
davidorme Oct 12, 2023
a6077f6
Updated test_soil_models.py
davidorme Oct 12, 2023
cf5a41c
test_main fixes and minor changes
davidorme Oct 12, 2023
b34553e
Turning on autoclear of MODULE_REGISTRY to enforce correct per test r…
davidorme Oct 12, 2023
1fa69d8
Doc build fixes
davidorme Oct 12, 2023
3ed36f6
Updating definining_new_models.md
davidorme Oct 12, 2023
6e2d949
Merge branch 'develop' into 278-importing-virtual_rainforest-package-…
davidorme Oct 12, 2023
04536cc
nitpick ignore odd JSONSchema docstring issue
davidorme Oct 13, 2023
1b2266e
Does order of closing and removing handlers matter?
davidorme Oct 13, 2023
2401e2c
Handle test_logger.py more robus
davidorme Oct 13, 2023
09dc90b
Made POM decomposition enzyme explicit
jacobcook1995 Oct 13, 2023
b4075d5
Merge branch 'develop' into feature/add_enzymes
jacobcook1995 Oct 16, 2023
cd8daac
Merge pull request #323 from ImperialCollegeLondon/278-importing-virt…
davidorme Oct 16, 2023
7e5bd8b
Merge branch 'develop' into 331-test_vr_run-failing-all-unit-tests-of…
davidorme Oct 16, 2023
c7572cc
Merge pull request #332 from ImperialCollegeLondon/331-test_vr_run-fa…
davidorme Oct 16, 2023
eed4811
Merge branch 'develop' into feature/add_enzymes
jacobcook1995 Oct 17, 2023
2dff041
Added a rate constant dependance on pH
jacobcook1995 Oct 18, 2023
3f4c913
Added new pH stuff into the main carbon loop
jacobcook1995 Oct 18, 2023
6aa018a
Config changes for adding plants to vr_run
davidorme Oct 18, 2023
5eba82f
Removing redundant select_models step from vr_run (#334)
davidorme Oct 18, 2023
386a123
Updating main.py to use execution order, fixes to _get_model_sequence
davidorme Oct 18, 2023
7922603
Moving test_cli_integration out of core - it tests main.py
davidorme Oct 18, 2023
eb2009c
Updating test_main and extending error checking in get_model_sequence
davidorme Oct 18, 2023
19a0103
Adding priority configuration to module schemas
davidorme Oct 18, 2023
1d2ce7c
Accidentally set defaults
davidorme Oct 18, 2023
2c70ab2
Added function to capture impact of soil clay on effective enzyme sat…
jacobcook1995 Oct 19, 2023
fd764ec
Adding dependencies guide to defining new models
davidorme Oct 19, 2023
05ab89f
Using depends not priority, allowing unconfigured models in depends w…
davidorme Oct 19, 2023
c3637ce
Fixed reversed sense of depends compared to priorities
davidorme Oct 19, 2023
da946bb
Updated config.md to describe new system
davidorme Oct 19, 2023
84435aa
 More doc updating, stripped modules from core JSON schema
davidorme Oct 19, 2023
b0ffd95
Updated Config.build_schema to remove old core.modules use
davidorme Oct 19, 2023
9723805
Updating test configs for models
davidorme Oct 19, 2023
a2a48da
Moved plants model config into conftest.py as string and updated
davidorme Oct 19, 2023
8158a3d
Moved plants model config into conftest.py as string and updated
davidorme Oct 19, 2023
e9b7a09
Moved plants model config into conftest.py as string and updated
davidorme Oct 19, 2023
3897463
Fixing up core tests to new model configuration
davidorme Oct 19, 2023
54f97a8
Update model config in test_main
davidorme Oct 19, 2023
3407317
Added a function for the impact of clay on necromass decay
jacobcook1995 Oct 19, 2023
44b22e0
example data configuration update
davidorme Oct 19, 2023
008d5ca
Merge pull request #336 from ImperialCollegeLondon/335-models-need-a-…
davidorme Oct 19, 2023
556f4c9
Add pom decomposition to maom
jacobcook1995 Oct 19, 2023
ae6b49e
A number of changes to convert from energy to mass with accompanying …
TaranRallings Oct 19, 2023
05597a5
Merge branch 'develop' into feature/add_enzymes
jacobcook1995 Oct 20, 2023
3b85284
Add record_found_in_log helper for testing
davidorme Oct 20, 2023
59a2e60
Made [core] optional in config files - defaults to defaults with a me…
davidorme Oct 20, 2023
1298a95
Merge branch 'develop' into 333-alter-schema-structure-to-use-a-clean…
davidorme Oct 20, 2023
5b1a77d
Merge pull request #337 from ImperialCollegeLondon/333-alter-schema-s…
davidorme Oct 20, 2023
3948374
Fixed error in dummy_plants testing.
TaranRallings Oct 20, 2023
22d28fa
Merge branch 'develop' into feature/plants_model
davidorme Oct 20, 2023
0a014a4
Merge branch 'develop' into feature/animal_module
TaranRallings Oct 20, 2023
8845314
Initialising soil layer depths correctly
davidorme Oct 23, 2023
31e3ce3
Setting plant and abiotic_simple init and update dependencies
davidorme Oct 23, 2023
a32d368
Update hydrology model to select soil layers more cleanly, more effic…
davidorme Oct 23, 2023
cd60976
Noted issue with axis order in hydrology model
davidorme Oct 23, 2023
5f42d02
Changed microbial uptake to follow form used in the enzyme-explict model
jacobcook1995 Oct 23, 2023
8bcf607
Merge branch 'develop' into feature/add_enzymes
jacobcook1995 Oct 23, 2023
6b93220
Added some update cycle logger messages to vr_run
davidorme Oct 23, 2023
c1912b3
dummy data recipes moved to example data
vgro Oct 23, 2023
2adae11
Updated testing data instance so that it include air temperature and …
TaranRallings Oct 23, 2023
5162fad
docs further updated, tests breaking
vgro Oct 24, 2023
4b837cb
timeindex in climate dummy fixed
vgro Oct 24, 2023
5b9dda8
Added a mechanistic function for nutrient leaching
jacobcook1995 Nov 15, 2023
8b5ba09
Added explicit MAOM enzyme pool
jacobcook1995 Nov 15, 2023
1b8e8cc
Small modifications to address reviews. Exponental formats, error han…
TaranRallings Nov 15, 2023
95d1753
Made enzyme decomp function generic
jacobcook1995 Nov 15, 2023
07813cd
Removed outdated lmwc to maom transfer functions
jacobcook1995 Nov 16, 2023
f840129
Changed plant resource mass determination to only calculate for the s…
TaranRallings Nov 16, 2023
8a586fe
Merge pull request #338 from ImperialCollegeLondon/feature/animal_module
TaranRallings Nov 16, 2023
7ed0d3b
Added step to break MAOM down into LMWC
jacobcook1995 Nov 20, 2023
b7f8584
Wrote function to calculate set of environmental factors
jacobcook1995 Nov 20, 2023
10f7ea7
Started using environmental factors function in main simulation flow
jacobcook1995 Nov 20, 2023
33746ba
Fixed broken docstring
jacobcook1995 Nov 20, 2023
71dd83f
Merge branch 'develop' into feature/add_enzymes
jacobcook1995 Nov 20, 2023
bea6655
Constants rework into dataclass format.
TaranRallings Nov 24, 2023
636cbd0
Removed unnecessary layer selection for vertical flow
jacobcook1995 Nov 27, 2023
682131e
Renamed environmental factors function
jacobcook1995 Nov 27, 2023
60b29fc
Added extra test for too high water potentials
jacobcook1995 Nov 27, 2023
8b78874
Fixed a small bug in plant_resource testing.
TaranRallings Nov 28, 2023
49e159c
Merge pull request #343 from ImperialCollegeLondon/feature/animal_module
TaranRallings Nov 28, 2023
891abbe
Merge branch 'develop' into feature/add_enzymes
jacobcook1995 Nov 28, 2023
afdc368
Switched to using map(str as it is cleaner
jacobcook1995 Nov 30, 2023
94d8776
Merge branch 'develop' into feature/update_example_data_code
jacobcook1995 Dec 1, 2023
0ba8e0e
Renamed response curvature constant to make it clearer what it actual…
jacobcook1995 Dec 1, 2023
abf19b1
Changed depth of first soil level to match depth used in the soil and…
jacobcook1995 Dec 4, 2023
d80b5a0
Removed unneccessary line from soil_model_fixture
jacobcook1995 Dec 4, 2023
9f76084
Added extra TODOs for vertical flow averaging issue
jacobcook1995 Dec 5, 2023
235815d
Merge pull request #341 from ImperialCollegeLondon/feature/add_enzymes
jacobcook1995 Dec 5, 2023
70231d2
Merge branch 'develop' into feature/update_example_data_code
jacobcook1995 Dec 5, 2023
232c159
Adding netCDF4 for xarray io
davidorme Dec 5, 2023
cbaf906
Test tweaks to get plants running
davidorme Dec 5, 2023
26576c7
Adding above canopy, subcanopy and surface layers into config and gen…
davidorme Dec 6, 2023
20df064
Updating plant tests to LayerStructure
davidorme Dec 6, 2023
8511a61
Updating config with layer structure heights
davidorme Dec 6, 2023
0151d45
Adding plant model input data to example_data
davidorme Dec 6, 2023
f48a0b7
Do not update some plant variables, fix data type in decomposed_excre…
davidorme Dec 6, 2023
c853ef5
Merge branch 'feature/plants_model' into feature/update_example_data_…
davidorme Dec 6, 2023
ea90efc
vertical flow averades instead of accumulated
vgro Dec 6, 2023
396023a
docstring fixed
vgro Dec 6, 2023
1221ee4
Changed soil model to reflect the fact that average flow is now calcu…
jacobcook1995 Dec 6, 2023
8943a9d
Restructure of example_data directory and script updates
davidorme Dec 6, 2023
2330780
Restructure of example_data directory and script updates
davidorme Dec 6, 2023
6946f8a
PlantsModel.estimate_gpp now sets evapotranspiration
davidorme Dec 6, 2023
395c3d3
Removed evapotranspiration from hydrology init vars, only used in upd…
davidorme Dec 7, 2023
24f20bf
Removing external evapotranspiration input and resolving model order …
davidorme Dec 7, 2023
2b95304
vertical flow in data includes only topsoil flow
vgro Dec 7, 2023
5577694
Merge branch 'feature/vertical_flow_average' of https://github.com/Im…
vgro Dec 7, 2023
5c9b2c0
Removing commented out evapotranspiration changes
davidorme Dec 7, 2023
f460c8f
Merge branch 'develop' into feature/plants_model
davidorme Dec 7, 2023
a921f4a
Update hydrology_model.py
vgro Dec 7, 2023
b2e0337
Merge pull request #351 from ImperialCollegeLondon/feature/vertical_f…
vgro Dec 7, 2023
adb395b
Updating soil layer depth defaults globally
davidorme Dec 7, 2023
e8c7969
Remove commented code in plants/conftest.py
davidorme Dec 7, 2023
8f95122
Merge branch 'feature/plants_model' into feature/update_example_data_…
davidorme Dec 8, 2023
393e71f
Failed to name elevation variable
davidorme Dec 8, 2023
40897d0
Regenerate up to date example data
davidorme Dec 8, 2023
81045f3
Reconfigure input data paths in example config
davidorme Dec 8, 2023
563f1a9
resolve relative paths to normalise in config
davidorme Dec 8, 2023
2895bf3
Update test to use new example data dir structure
davidorme Dec 8, 2023
118e611
Remove data files in root of example_data
davidorme Dec 8, 2023
e8688e8
Updating docs and tidying example config
davidorme Dec 8, 2023
1cbed61
Updating example docs
davidorme Dec 8, 2023
ce8e17b
Merge branch 'develop' into feature/plants_model
davidorme Dec 11, 2023
d74141b
Better method naming in Config, improved config filepath resolution
davidorme Dec 11, 2023
a561dc9
Doc update for new example data structure
davidorme Dec 11, 2023
51e6d93
Broken paths to climate example data code
davidorme Dec 11, 2023
23c72e8
Let pathlib handle cross OS path comparisons
davidorme Dec 11, 2023
d65dc56
Minor rewording
davidorme Dec 12, 2023
b06d1be
Merge pull request #352 from ImperialCollegeLondon/feature/plants_model
davidorme Dec 12, 2023
d6c60be
Minor wording tweaks
davidorme Dec 12, 2023
35dafff
Merge branch 'develop' into feature/update_example_data_code
davidorme Dec 13, 2023
2a170ec
Updating dask to hopefully fix occasional vr_run stall
jacobcook1995 Dec 13, 2023
0fbf838
Changed open_mfdataset to use lock=False
jacobcook1995 Dec 14, 2023
fda9d14
Update docs/source/virtual_rainforest/example_data.md
davidorme Dec 14, 2023
96b4b1c
Update docs/source/virtual_rainforest/example_data.md
davidorme Dec 14, 2023
ee562f4
Update docs/source/virtual_rainforest/example_data.md
davidorme Dec 14, 2023
42682a7
Update docs/source/virtual_rainforest/example_data.md
davidorme Dec 14, 2023
d02b93b
Merge pull request #355 from ImperialCollegeLondon/bug_fix/vr_stall
jacobcook1995 Dec 14, 2023
b72a866
Merge branch 'develop' into feature/update_example_data_code
jacobcook1995 Jan 2, 2024
e39db23
pyupgrade from 3.9 to 3.10
davidorme Jan 3, 2024
a8cb086
Remove 3.9 from CI process
davidorme Jan 3, 2024
b152555
Resolving issue with badly declared new type
davidorme Jan 3, 2024
03e7cd2
TypeAlias didn't quite work
davidorme Jan 3, 2024
8fcc1f0
Updating python versions support in pyproject.toml
davidorme Jan 4, 2024
2650769
Updating doc package versions in pyproject.toml
davidorme Jan 4, 2024
344d547
'Solving' some doc build issues
davidorme Jan 4, 2024
e7f4264
Merge branch 'feature/update_example_data_code' of https://github.com…
davidorme Jan 4, 2024
db62621
Merge branch '324-consider-dropping-python-39' into feature/update_ex…
davidorme Jan 4, 2024
4d912ce
Merge pull request #356 from ImperialCollegeLondon/324-consider-dropp…
davidorme Jan 9, 2024
d3c682d
Update example_data.md
vgro Jan 10, 2024
dd41f74
Merge pull request #339 from ImperialCollegeLondon/feature/update_exa…
vgro Jan 10, 2024
b686887
Switching up the base model and docs to the suggested structure
davidorme Jan 18, 2024
100d7a1
Updating model implementations
davidorme Jan 18, 2024
ab10f0e
Combining upper and lower time bound attributes on BaseModel into mod…
davidorme Jan 19, 2024
5d17905
Fixing up tests and minor log message changes
davidorme Jan 19, 2024
76f56a9
Removed out of date reference to exec in testing code
davidorme Jan 19, 2024
c1d9d8d
Fixing doc issues
davidorme Jan 19, 2024
e9365f0
Merge pull request #365 from ImperialCollegeLondon/363-refactor-basem…
davidorme Jan 19, 2024
685e42b
Draft implementation of CoreComponents
davidorme Jan 24, 2024
f5f6a20
Doc fixes
davidorme Jan 24, 2024
4a70211
Forgot to add new tests file
davidorme Jan 24, 2024
01fc628
Extending and fixing tests
davidorme Jan 24, 2024
9513801
Updating callable signatures to use CoreComponents - not unpacked yet.
davidorme Jan 25, 2024
45ac49a
Updating main to use CoreComponents
davidorme Jan 25, 2024
9a76bba
Unpacking core components into new BaseModel attributes
davidorme Jan 25, 2024
548c849
Revising docstrings
davidorme Jan 25, 2024
adaf95b
MoarRevising docstrings
davidorme Jan 25, 2024
b96e68e
Updating Plants Model
davidorme Jan 25, 2024
be73d57
Updating soils model
davidorme Jan 25, 2024
9f2c892
Updating litter model
davidorme Jan 25, 2024
42d8bbc
Updated hydrology_model
davidorme Jan 25, 2024
53153fd
Updated abiotic_simple_model
davidorme Jan 25, 2024
a5cd8bd
Added n_layers to LayerStructure
davidorme Jan 25, 2024
4359c6e
Use n_layers in models
davidorme Jan 25, 2024
03b5a81
Updated animal model
davidorme Jan 25, 2024
e17e368
Converted layer_roles from tuple to list - incompatible with xarray c…
davidorme Jan 25, 2024
f862264
AnimalModel loads wrong constants
davidorme Jan 25, 2024
b02d14a
Added Config and CoreComponents fixtures, updated fixtures using prev…
davidorme Jan 25, 2024
242fe2f
Removing test for deprecated extract_timing_details
davidorme Jan 25, 2024
e3c33a7
Updating plants tests to new BaseModel structure
davidorme Jan 25, 2024
086e53f
Potential solution to BaseModel._repr issue
davidorme Jan 25, 2024
a705be0
Updating soil tests
davidorme Jan 25, 2024
5d55541
Update litter model tests
davidorme Jan 25, 2024
388fc9f
Updating hydrology model tests
davidorme Jan 26, 2024
86c4c93
Updated abiotic_simple model tests
davidorme Jan 26, 2024
cb048e8
Restored BaseModel._check_update_speed functionality
davidorme Jan 26, 2024
e3181e9
Fixing core tests, log message tweaks
davidorme Jan 26, 2024
663d3c4
Deprecated input file location in tests
davidorme Jan 26, 2024
ce3396b
Updating animal model tests
davidorme Jan 26, 2024
127423e
Last test fixes
davidorme Jan 26, 2024
b1c9339
Cleaner start_time setting
davidorme Jan 26, 2024
53d820f
add _validate_canopy_layer function
davidorme Jan 26, 2024
849e651
add _validate_soil_layers function
davidorme Jan 26, 2024
162daa4
Updating core_component.py validators and adding unit tests for valid…
davidorme Jan 26, 2024
20fe796
Merge pull request #375 from ImperialCollegeLondon/369-adopting-new-core
davidorme Feb 2, 2024
42bd787
Indenting issue in RST
davidorme Feb 2, 2024
7443127
Fixing docstring issues
davidorme Feb 5, 2024
0e0cf40
Adding automodule hooks for plants model to docs and fixing issues
davidorme Feb 5, 2024
dcd4cd6
Typo
davidorme Feb 5, 2024
24b49fd
Merge pull request #380 from ImperialCollegeLondon/379-plantsmodel-mi…
davidorme Feb 5, 2024
b4fb178
Merge branch 'develop' into 369-simplifying-the-model-creation-setup
davidorme Feb 5, 2024
76f1906
Merge pull request #374 from ImperialCollegeLondon/369-simplifying-th…
davidorme Feb 5, 2024
36fed75
Updating GitHub Actions to new Node20 versions
davidorme Feb 6, 2024
2f3f5e9
Updating codecov and crossing fingers
davidorme Feb 6, 2024
1ad61b0
Adding required token - not sure it is set in the repo secrets though
davidorme Feb 6, 2024
90d870a
Copying over codecov action updates from #385
davidorme Feb 7, 2024
331a54e
Adding pre-commit.ci badge
davidorme Feb 7, 2024
184a1a6
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Feb 19, 2024
49c4beb
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Feb 19, 2024
537c701
Massive regex run to change VR to VE
davidorme Feb 21, 2024
ac9068a
Changing package name in paths and updating python version used on RTD
davidorme Feb 21, 2024
99e1324
Bunch of isort issues in tests
davidorme Feb 21, 2024
cad2cc2
Moving docs paths
davidorme Feb 21, 2024
830fe21
Catching missing files
davidorme Feb 21, 2024
b356cf1
Fixes from @vgro: better capitalisation, vr_example rename etc.
davidorme Feb 26, 2024
7264214
Fixing broken model dependency
davidorme Feb 26, 2024
45b7aed
Merge pull request #393 from ImperialCollegeLondon/390-test-failures-…
davidorme Feb 26, 2024
2af2e8a
Merge branch 'develop' into 383-our-github-actions-need-updating
davidorme Feb 26, 2024
c579470
Merge branch 'develop' into pre-commit-ci-update-config
davidorme Feb 26, 2024
1290476
Merge branch 'develop' into 391-rename-the-package
davidorme Feb 26, 2024
8220f21
Merge pull request #384 from ImperialCollegeLondon/383-our-github-act…
davidorme Feb 26, 2024
465eceb
Make core.grid.Grid.map_xy_to_cell_indexing less objectionable to mypy
davidorme Feb 26, 2024
38ed303
Log output in test out of sync with expected value
davidorme Feb 26, 2024
94d6295
Changed codecov URL too early
davidorme Feb 26, 2024
be31f7e
Merge branch 'develop' into 391-rename-the-package
davidorme Feb 26, 2024
0c584fc
Missed a few rainforest usages
davidorme Feb 26, 2024
6677c7a
Merge branch '391-rename-the-package' of https://github.com/ImperialC…
davidorme Feb 26, 2024
47c9ff8
Merge pull request #395 from ImperialCollegeLondon/394-precommit-auto…
davidorme Feb 27, 2024
68b6864
Merge branch 'develop' into pre-commit-ci-update-config
davidorme Feb 27, 2024
942b94a
Merge pull request #387 from ImperialCollegeLondon/pre-commit-ci-upda…
davidorme Feb 27, 2024
44a72fd
Merge branch 'develop' into 391-rename-the-package to resolve conflicts
davidorme Feb 29, 2024
468ee55
Merge pull request #392 from ImperialCollegeLondon/391-rename-the-pac…
davidorme Feb 29, 2024
a10c6b6
Fixing RTD poetry install
davidorme Feb 29, 2024
26c7450
Updating xarray to remove deprecation warnings
davidorme Feb 29, 2024
446723d
xarray missing variable messages got more verbose and broke testing
davidorme Mar 1, 2024
e1ac1ad
Merge pull request #398 from ImperialCollegeLondon/397-borked-rtd-con…
davidorme Mar 1, 2024
d394943
Adding explicit ipykernel install step to RTD
davidorme Mar 1, 2024
c55edd0
Merge pull request #400 from ImperialCollegeLondon/399-the-vr_python3…
davidorme Mar 1, 2024
6e808dd
Bump version to prerelease
davidorme Mar 1, 2024
13b42cb
File location changes from @dalonsoa
davidorme Mar 4, 2024
6b76edf
Add n_updates to ModelTiming core component
davidorme Mar 4, 2024
085be52
Add draft progress statements to ve_run
davidorme Mar 4, 2024
e3050c9
Adding tqdm and types-tqdm
davidorme Mar 4, 2024
144660e
Remove oddly located print statement in ve_run_cli
davidorme Mar 4, 2024
27ef480
Updating tests
davidorme Mar 4, 2024
34c16ae
Missed a VR reference - changed to Virtual Ecosystem
davidorme Mar 4, 2024
c94cef6
Merge pull request #403 from ImperialCollegeLondon/402-add-progress-o…
davidorme Mar 4, 2024
e578c55
Merge branch 'develop' into release/0.1.0
davidorme Mar 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: 'bug'
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:

1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**

- OS: [e.g. iOS]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
23 changes: 23 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Description

Please include a summary of the change and which issue is fixed. Please also include
relevant motivation and context. List any dependencies that are required for this
change.

Fixes # (issue)

## Type of change

- [ ] New feature (non-breaking change which adds functionality)
- [ ] Optimization (back-end change that speeds up the code)
- [ ] Bug fix (non-breaking change which fixes an issue)

## Key checklist

- [ ] Make sure you've run the `pre-commit` checks: `$ pre-commit run -a`
- [ ] All tests pass: `$ poetry run pytest`

## Further checks

- [ ] Code is commented, particularly in hard-to-understand areas
- [ ] Tests added that prove fix is effective or that feature works
17 changes: 17 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@


# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
80 changes: 80 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Test and build

on: [push, pull_request, release]

jobs:
qa:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- uses: pre-commit/action@v3.0.0

test:
needs: qa
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-latest, windows-latest ]
python-version: [ "3.10", "3.11" ]

steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install Poetry
uses: abatilo/actions-poetry@v2.3.0
with:
poetry-version: 1.5.1

- name: Install dependencies
run: poetry install

- name: Run tests
run: poetry run pytest --cov-report xml

- name: Upload coverage to Codecov
if: (matrix.os == 'ubuntu-latest' && matrix.python-version == '3.10')
uses: codecov/codecov-action@v4
with:
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
docs_build:
needs: qa
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: Install Poetry
uses: abatilo/actions-poetry@v2.3.0
with:
poetry-version: 1.5.1

- name: Install dependencies
run: poetry install

- name: Set ipython kernel
run: poetry run python -m ipykernel install --user --name=vr_python3

- name: Build docs using sphinx
run: |
cd docs
poetry run sphinx-build -W --keep-going source build

- name: Archive built docs for error checking on failure
if: failure()
uses: actions/upload-artifact@v3
with:
name: built-docs
path: docs/build
retention-days: 2
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ coverage.xml
*.py,cover
.hypothesis/
.pytest_cache/
reports

# Translations
*.mo
Expand All @@ -75,7 +76,9 @@ docs/_build/
target/

# Jupyter Notebook
# - deliberately excluding ipynb files. Using Jupytext to maintain paired Myst Markdown with only MD under version control
.ipynb_checkpoints
*.ipynb

# IPython
profile_default/
Expand Down
4 changes: 4 additions & 0 deletions .markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# MD013/line-length - Line length
MD013:
# Number of characters
line_length: 88
9 changes: 9 additions & 0 deletions .mdformat.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# .mdformat.toml
#
# This file shows the default values and is equivalent to having
# no configuration file at all. Change the values for non-default
# behavior.
#
wrap = 88 # possible values: {"keep", "no", INTEGER}
number = false # possible values: {false, true}
end_of_line = "lf" # possible values: {"lf", "crlf"}
34 changes: 34 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
hooks:
- id: check-merge-conflict
- id: debug-statements
- repo: https://github.com/PyCQA/isort
rev: "5.13.2"
hooks:
- id: isort
additional_dependencies: [toml]
- repo: https://github.com/psf/black
rev: "24.2.0"
hooks:
- id: black
- repo: https://github.com/PyCQA/flake8
rev: 7.0.0
hooks:
- id: flake8
additional_dependencies: [flake8-docstrings]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v1.8.0"
hooks:
- id: mypy
additional_dependencies: [types-jsonschema, xarray]
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.39.0
hooks:
- id: markdownlint
- repo: https://github.com/asottile/pyupgrade
rev: v3.15.1
hooks:
- id: pyupgrade
args: [--py310-plus]
41 changes: 41 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-20.04
tools:
python: "3.10"
jobs:
post_create_environment:
# Install poetry
# https://python-poetry.org/docs/#installing-manually
- pip install poetry

post_install:
# Install dependencies with 'docs' dependency group
# https://python-poetry.org/docs/managing-dependencies/#dependency-groups
# VIRTUAL_ENV needs to be set manually for now.
# See https://github.com/readthedocs/readthedocs.org/pull/11152/
- VIRTUAL_ENV=$READTHEDOCS_VIRTUALENV_PATH poetry install --with docs
- VIRTUAL_ENV=$READTHEDOCS_VIRTUALENV_PATH poetry run python -m ipykernel install --user --name=vr_python3

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/source/conf.py

# If using Sphinx, optionally build your docs in additional formats such as PDF
# formats:
# - pdf

# Optionally declare the Python requirements required to build your docs
# These are installed as dev requirements via poetry (but note that this will need to be
# updated for poetry 1.2).
#
# python:
# install:
# - requirements: docs/requirements.txt
12 changes: 12 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"recommendations": [
"Gruntfuggly.todo-tree",
"ms-python.python",
"ms-python.vscode-pylance",
"ms-toolsai.jupyter",
"ms-toolsai.jupyter-keymap",
"ms-toolsai.jupyter-renderers",
"ms-vsliveshare.vsliveshare",
"stkb.rewrap"
]
}
25 changes: 25 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"python.linting.flake8Enabled": true,
"python.linting.mypyEnabled": true,
"python.linting.enabled": true,
"python.formatting.provider": "none",
"editor.formatOnSave": true,
"editor.rulers": [
88
],
"python.testing.unittestEnabled": false,
"python.testing.pytestEnabled": true,
"python.testing.pytestArgs": [
"-s",
"tests",
// --no-cov needed so that breakpoints work: https://github.com/microsoft/vscode-python/issues/693
"--no-cov"
],
"workbench.editorAssociations": {
"*.ipynb": "jupyter-notebook"
},
"cSpell.words": [],
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter"
},
}
Loading