Skip to content

Consistent Dependency Management

Summary

The process of building the container triggers three separate python environment update and resolution steps, with a recent refactoring adding a fourth python environment update to install dependencies when providing a custom config file at runtime. Additionally the builder uses two separate dependency management systems; poetry and conda. This combination of multiple environment updates and multiple dependency management systems makes it difficult to determine where to set dependency restrictions, as was recently required for #30 (closed). The multiple python environment update steps also makes this whole build process slower (as resolving python environments is a relatively slow step).

Closure Criteria

  • Builder has been updated to a single unified dependency management system.
  • Unnecessary environment update steps have been eliminated. I believe it possible to get down to two during build and one additional situationally during run time.
  • Documentation is updated to better instruct maintainers how to set and update dependencies.
Edited by Paul Tomasula