Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fragile dependencies #976

Closed
effigies opened this issue Sep 5, 2023 · 2 comments · Fixed by #998
Closed

Fragile dependencies #976

effigies opened this issue Sep 5, 2023 · 2 comments · Fixed by #998

Comments

@effigies
Copy link
Contributor

effigies commented Sep 5, 2023

Summary

There are currently hard pins of bokeh and jinja2, which make it very difficult to install tedana alongside other tools that may require more recent versions. For example, installing jupyterlab into an environment with tedana installed produces:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
tedana 23.0.1 requires jinja2==3.0.1, but you have jinja2 3.1.2 which is incompatible.

This is not currently a problem for me, as I am not using these features of tedana, but using ==, or < pins tends to make it difficult to resolve dependencies.

It looks like these were added in #793 and #870, which are 2 and 1.5 years old, respectively. It is not uncommon for tools to only support dependencies released within the last 2 years or so, so it is going to become increasingly difficult to install tedana into the same environment as other tools in the near future.

A little related to #934, but not exactly the same.

Additional Detail

Next Steps

IIRC, there was a weirdness with Jinja 3.0.2, so possibly that pin can just be removed at this point (or updated to jinja2 != 3.0.2.

I don't know anything about bokeh and how hard it will be to accommodate a more recent version.

@handwerkerd
Copy link
Member

I just updated to jinja2=3.1.2 and I'm getting the same error so we cannot just skip a version or two.
An issue that provides more detail is #869. The jinja2 & bokeh issues are linked. bokeh was locked on older versions of jinja2 & it looks like bokeh removed that limit about a year ago so we should able to remove our jinja2 limit if we update bokeh.

The person who worked on the bokeh parts of the tedana reports moved on to other things so we'd benefit from someone with more bokeh experience to figure out what's still holding back a bokeh upgrade & fix that.

@eurunuela
Copy link
Collaborator

I have worked a bit on the bokeh side of things in our reports in the past. I can try to have a look and see if there is anything we can do with these dependencies.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants