DSGT-DLP / Deep-Learning-Playground

Web Application where people new to Deep Learning can input a dataset and toy around with basic Pytorch modules without writing any code
MIT License
26 stars 8 forks source link

Upgrade to Poetry #853

Closed karkir0003 closed 1 year ago

karkir0003 commented 1 year ago

Currently, our python backend strongly depends on anaconda to manage the environment + packages. This results in a lack of dev/prod separation.

Solution: Use poetry as a python package manager tool to better define our dev/prod dependencies.

  1. Create pyproject.toml file in the poetry-setup branch. the initial file is created, but you will have to populate the dependencies (look in conda/environment.yml or requirements.txt for inspiration)
  2. add python dependencies to be used in dev or prod mode
  3. update python build check github actions to use poetry to setup environment
  4. update dockerfiles to use poetry to setup environment
  5. Ensure that if u install a python dependency, the pyproject.toml file is updated (we don't want to manually add dependencies to environment.yml file or requirements.txt)

Goal: our frontend and backend both have package manager support that automatically gives the updated set of dependencies for setting up frontend and backend services

Branch setup instructions:

git switch poetry-setup

if that doesn't work, try the following

git fetch origin
git switch -c poetry-setup origin/poetry-setup