Skip to content

Conversation

mbackenkoehler
Copy link
Collaborator

@mbackenkoehler mbackenkoehler commented Jan 29, 2024

Description

WIP

Playing around with Github actions to get an idea of how to set up a new CI with separated environments.

@mbackenkoehler mbackenkoehler added the work-in-progress Work still ongoing label Jan 29, 2024
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@ijpulidos
Copy link

ijpulidos commented Jan 30, 2024

Can you explain in more detail what are the current issues being faced with having a single big environment? And I guess also some comment on why having a separate one for each talktorial?

While separating environments could make things easier for people to use the talktorials (in specific circumstances), it does create a significant burden in maintaining each of the environments separately. And maybe even will make things harder for users to add packages to the environments if these are not maintained or kept up to date (since they will probably be harder to maintain if we separate them).

@ijpulidos
Copy link

Does it make sense having separate environments but not necessarily one for each talktorial? As in, maybe just having one separate environment for the ML/DL stuff, and the rest in another one. If that makes any sense. Apologies that I'm not that familiar with this project, so I'm just starting to wrap my head around this. Thanks!

@mbackenkoehler
Copy link
Collaborator Author

While separating environments could make things easier for people to use the talktorials (in specific circumstances), it does create a significant burden in maintaining each of the environments separately.

The reasoning is somewhat opposite. The environment for everything is very heavy and complex. Introducing or updating packages is difficult because we are in dependency hell. It's the main reason, everything is still on python 3.8. With packages not being able to be updated easily, tutorials sometimes make use of deprecated behaviors.

The goal therefore is mainly maintainability. From a user's perspective it is probably more cumbersome to install and activate one environment for every talktorial. There are other complications like the CLI (which I have not looked at so far at all) and the teachopencadd conda package.

Merging environments for groups of talktorials is something, we have in mind and likely will do. This has advantages for usability and the CI. We should probably keep one file per talktorial for the sake of consistency, though.

@mbackenkoehler mbackenkoehler mentioned this pull request Feb 27, 2024
1 task
@mbackenkoehler
Copy link
Collaborator Author

This is replaced by #417

@sakhawathsumit sakhawathsumit deleted the sepenv branch June 14, 2025 07:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

work-in-progress Work still ongoing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants