AlexsLemonade / refinebio

Refine.bio harmonizes petabytes of publicly available biological data into ready-to-use datasets for cancer researchers and AI/ML scientists.
https://www.refine.bio/
Other
128 stars 19 forks source link

Rollback Bioconductor to ver 3.6 #3192

Closed davidsmejia closed 1 year ago

davidsmejia commented 1 year ago

Context

Refinebio workers should be running Bioconductor 3.6 on R version 3.4.2. The current version on production and staging has packages installed with version 3.11. This was done in an effort to get the images to build so that we could deploy.

At the time of updating to 3.11/12 the tool that we had for pinning R dependencies was cranlock and now that we have a solution in place using renv we should be able to pin nested dependencies.

After going through the history we started with 3.6 then switched to the latest release, then to 3.12, then rolled back to 3.11. Over that time many of the dependencies have switched versions and will most likely need to be rolled back as well.

Here are the more important commits that capture the changes we want to "revert".

For more context, this is a more holistic view of what has changed, but this includes changes we want to keep. This is more for reference as you roll back specific images I believe this will be useful.

Also here is the commit history of affymetrix_dependencies.R which is the starting point I used to go commit by commit until I reached a point in time where we were installing version 3.6.

Problem or idea

The obvious problem here is that we want to go back to using bioconductor 3.6. As we currently have a PR for switching to renv for managing R dependencies we should incorporate the rollback and pinning into that PR. The strategy will remain the same and we just want to make sure that we rebuild the lockfile before merging.

Also, we expect this rollback to cause issues with builds and tests. I think it makes sense for us to first solve for the building after rolling back and then create separate issues for the tests.

Solution or next step

Essentially we want the builds to be successful after the rollback and we will tackle any breaking tests in future PRs.

arkid15r commented 1 year ago

Resolved by PRs linked above.