-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Swap to FCIS architecture #154
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For now this looks good.
In a further release we will have to restructure and simplify the code/testing.
Co-authored-by: Marc White <mwhite1206@gmail.com>
4b471a7
to
096659f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me, modulo very small removal of some commented-out development code.
This PR closes the main section of #145. Remaining tasks will be split off into smaller issues.
This finishes off the implementation of the FCIS architecture, where IO steps are all separated into an "imperative shell", and all cube modifications are handled in the "functional core"
process_cubes()
function, making the main parts of the code testable.These changes were put together over a couple of smaller steps into the feature branch
145/fcis-architecture
, and the purpose of this PR is to bring the changes intomain
- hence the changes may look familiar!The changes to
um2netcdf.py
include:cubewrite()
intoprocess_cubes()
cubewrite()
intoprocess()
cubewrite()
is then deleted.The changes to
test_um2netcdf.py
are there to make the tests work with the updated structure, and were previously discussed in #148.