Skip to content

Conversation

@Tieqiong
Copy link
Contributor

closes #55

@bobleesj
Copy link
Contributor

closes #55

I thought of this, but don't you also have to apply if then for pip.txt?

@bobleesj
Copy link
Contributor

Also 2 other yml files also need "if then" if we decide to implement this

@bobleesj
Copy link
Contributor

bobleesj commented Oct 1, 2024

@Tieqiong @sbillinge

What if we use a single command to install all conda packages at once so that the dependency sorting can be handled at once?

conda install \                          
    --file requirements/run.txt \                  
    --file requirements/run-ext.txt \                  
    --file requirements/test.txt \
    --file requirements/pip.txt \
    --file requirements/build.txt

@sbillinge
Copy link
Contributor

Can you say some more words about what problem this solves? I am not sure what you mean by "dependency solving"?

@bobleesj
Copy link
Contributor

bobleesj commented Oct 1, 2024

@sbillinge

Can you say some more words about what problem this solves? I am not sure what you mean by "dependency solving"?

When multiple packages listed in files like text.txt, build.txt, and run.txt are installed together in a single command, Conda can more effectively analyze and resolve the dependencies of all packages in one unified process.

This means there won't be instances where downgrades or upgrades are needed between separate Conda install commands.

@sbillinge
Copy link
Contributor

I see, that makes sense then. However it presumably makes more difficult, though not impossible, conditional installs?

@sbillinge
Copy link
Contributor

I wonder if it is better to not have the run-ext.txt in the cookiecutter

@sbillinge sbillinge closed this Oct 1, 2024
@sbillinge sbillinge reopened this Oct 1, 2024
@sbillinge
Copy link
Contributor

sorry, clicked the wrong thing there by mistake.

@bobleesj
Copy link
Contributor

bobleesj commented Oct 1, 2024

what if we include run-ext.txt dependencies under run.txt? This was a special case for diffpy.srfit

@sbillinge
Copy link
Contributor

what if we include run-ext.txt dependencies under run.txt? This was a special case for diffpy.srfit

sorry, not sure what you mean here. Normally I would say that edge cases can deviate from the cookie-cutter if they are rare. We like to keep such cases to a minimum. But because we have the release scripts centralized, we would have to have a separate yaml presumably for each edge case, either residing in the local directory of the edge case, or here centrally, but the local yml updated to call a differently named yaml from here? Or we can find a way to catch all the edge cases with conditionals (which also adds unwanted complexity).

@sbillinge
Copy link
Contributor

Closing on basis that we have change this to conda/pip

@sbillinge sbillinge closed this Oct 3, 2024
@Tieqiong Tieqiong deleted the if branch July 29, 2025 21:58
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 this pull request may close these issues.

3 participants