Currently in the requirements.py file, there are some independent functions for checking that the correct version of libraries are installed and displaying warning messages. These entities do not have any consistency holding them together.
What is the solution?
This problem can be solved by applying aggregate patterns. We can treat the cluster domains as one single unit. This can be done by putting the functions into a class: check_dependencies. Inside the check_dependencies aggregate the following functions will exist: check_sciris() and check_synthpops().
What is the current problem?
Currently in the requirements.py file, there are some independent functions for checking that the correct version of libraries are installed and displaying warning messages. These entities do not have any consistency holding them together.
What is the solution?
This problem can be solved by applying aggregate patterns. We can treat the cluster domains as one single unit. This can be done by putting the functions into a class:
check_dependencies
. Inside thecheck_dependencies
aggregate the following functions will exist:check_sciris()
andcheck_synthpops()
.Note: This change is for a school lab project.