pacificclimate / chickadee Goto Github PK
View Code? Open in Web Editor NEWA Web Processing Service for PCIC's ClimDown package
License: Other
A Web Processing Service for PCIC's ClimDown package
License: Other
Using readthedocs
.
The analogues from the CA step of climDown are a 2 dimensional vector in R. It should be saved to an Rdata file.
Complex .rda file output in wps_CA.py
Some process inputs can accept the FORMATS.DODS
format, but there are no test instances for that input type.
Add online tests with OPeNDAP from the TREDDS data server
None
When installing the bird using the Makefile and running make, the following incompatible dependency error occurs and should be fixed by upgrading the nbconvert
version.
ERROR: jupyter-server 1.17.0 has requirement nbconvert>=6.4.4, but you'll have nbconvert 5.6.1 which is incompatible.
We would like ClimDown
's ci.netcdf.wrapper
turned into a wps process.
Since we are translating between R
and python
we need to use rpy2
. Other than that wrinkle this should follow the standard we use for other birds.
None.
My username will be in the place where pacificclimate
should be in several places. Also the docs will still refer to conda in some places which should be removed.
The container is spitting out a bunch of logs we are not interested in that are coming from sqlalchemy.
Steps to reproduce the behavior:
docker-compose up
Only logging from the actual app should be there.
Wrap rerank.netcdf.wrapper
into pywps
process.
Use rpy2
to translate between R
and python
.
None.
The imports have built up and there may be a cleaner way of importing functions. For example what we have now:
from chickadee.io import (
gcm_file,
obs_file,
varname,
out_file,
num_cores,
general_options_input,
ca_options_input,
qdm_options_input,
)
Versus what we could do instead:
import chickadee.utils as utils
import chickadee.io as cio
...
self.handler_inputs = [
cio.gcm_file,
cio.obs_file,
cio.varname,
cio.out_file,
cio.num_cores,
cio.log_level,
]
The recent change to the Dockerfile
has made the rebuild process extremely inefficient.
Use cachable RUN
commands.
Each of the github action workflows are failing.
Steps to reproduce the behavior:
No errors.
Several steps that are attached to notebook processing and virtual environments.
We're currently using wps_tools.output_handling
when asobj=True
is simpler and doesn't require extra imports
output.get(asobj=True)
wps_tools.output_handling
Continue using wps_tools.output_handling
We want to take advantage of the docker tools we have to make development easier. That means re configuring the docker-compose and rewriting some of the dockerfile.
Update dockerfile and docker-compose.
None.
Translate ClimDown
's ca.netcdf.wrapper
into a wps process.
Use rpy2
to translate between R
and python
.
None.
Replace other forms of CI/CD.
Is your feature request related to a problem? Please describe.
The multi-stage build is a strategy to reduce image sizes and build time. Apply this strategy in the Dockerfile
Describe the solution you'd like
Separate a single stage into two stages, build and execution, by having multiple FROM
statements.
Describe alternatives you've considered
None
Title.
black . --check
fails in actions but not locally
Steps to reproduce the behavior:
black .
locallypython-ci
workflowRunning black . --check
locally and in actions should show the same results
Some of the methods the processes use can be shared.
Refactor the code to use methods from a common utils module
A vulnerability has been detected in the dockerfile.
Steps to reproduce the behavior:
anchore
scanNo vulnerabilities should be detected
R objects can be stored in rda
or rds
files the current implementation of wps_rerank.py
only accepts rda
files. Adding an rds
option would be more flexible for the user.
Add an input option with the .rds
extension and handle rds
or rda
input in the _handler
method.
Just accept only rdata or only RDS
A gunicorn timout occurs for the bccaq wrapper process on some machines but not others. Ideally, a more secure implementation would have consistent behaviour.
Steps to reproduce the behavior:
wps_bccaq_demo
online with make test-notebooks-online
No timeout error on all machines.
Version 0.4.0 of wps-tools has shared chickadee and quail functions which should be implemented in chickadee
Use wps-tools 0.4.0 in chickadee where possible
None
Translate ClimDown
's qdm.netcdf.wrapper
using rpy2
.
Follow the standards from other birds in the project.
None.
User errors always say "Sorry, process failed. Please check server error log." we can add some more specific error messages.
Add processError() to processes
None
The main script in climdown
is the bccaq.netcdf.wrapper
which is a downscaling method. We want to turn this R
script into a process.
Since we are translating between R
and python
we need to use rpy2
. Other than that wrinkle this should follow the standard we use for other birds.
We may have to consider using different R
translator packages if rpy2
does not provide everything we need.
wps-tools
0.3.0 is released. Use the newly added functionalities.
chickadee
's collect_args
function to the wps-tools
versionchickadee
's common_status_percentages
dictionary to the wps-tools
versionlocal_path
and url_path
functions for constructing test parametersNone
Modules were reorganized in wps-tools 1.0.1 and output handling tools were added. Imports in chickadee should reflect these changes and the output_handling methods can be added to the demos.
analogues_object in wps_rerank.py
should be ComplexInput with
supported_formats=[Format("application/rda", extension=".rda", encoding="base64")]
The process should be able to read files in the user's local directory
None
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.