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

Lockfile upload #401

Draft
wants to merge 17 commits into
base: main
Choose a base branch
from
Draft

Conversation

gabalafou
Copy link
Contributor

@gabalafou gabalafou commented May 15, 2024

Closes #399.

Companion backend PR: conda-incubator/conda-store#772

Description

This PR takes over #395.

PR 395 implemented "create environment from lockfile" using a code editor. But because hand-editing lockfiles is error prone, we decided that the UI should be implemented as a file upload instead.

This pull request:

Screenshots

  • TODO: add screenshots

Pull request checklist

  • Did you test this change locally?
  • Did you update the documentation (if required)?
  • Did you add/update relevant tests for this change (if required)?

@gabalafou
Copy link
Contributor Author

Creating this as a draft PR to solicit feedback. Couple questions:

  • Should the user be able to use the lockfile upload on the Edit Environment form in addition to the Create Environment form?
  • The form needs some cosmetic improvements, but apart from the cosmetics, is this the direction we want this form to go in? Or do we have alternative ideas for how to structure it?

@dharhas
Copy link
Member

dharhas commented May 15, 2024

So if I upload a lockfile, what happens to the 'Specification' Tab. Does it get disabled?

@gabalafou
Copy link
Contributor Author

So if I upload a lockfile, what happens to the 'Specification' Tab. Does it get disabled?

Not at the moment. I think that's worth implementing if we stick with this direction because otherwise I think it can create the misleading impression that the two tabs are synced with each other in the same way that the GUI-YAML toggle is.

@trallard trallard requested a review from smeragoel May 28, 2024 17:43
@gabalafou
Copy link
Contributor Author

Screen.Recording.2024-06-12.at.10.40.50.mov

@smeragoel @kcpevey, what do we think about the implementation shown in this video?

@kcpevey
Copy link
Contributor

kcpevey commented Jun 12, 2024

@gabalafou I really like it!!

I'm wondering about what it looks like AFTER you upload the lockfile, or rather, the view of an existing environment built by lock file. Is that what test_env1269 is? In that case, what does it look like when you go Edit (via spec) -> YAML? Are the requested/installed packages mocked here or is that already functional once build via lockfile?

@gabalafou
Copy link
Contributor Author

Great! Good question. I haven't coded this up yet, but I was thinking that when you load an environment that was last built from a lockfile, you will see that same box that says "Lockfile" but instead of "upload" it will say "download". Then, if you click the "edit" button that section will become upload again. Am I making sense or do we need a visual?

@kcpevey
Copy link
Contributor

kcpevey commented Jun 13, 2024

I followed you, and I think what you described are pieces that need to be included. I'd also like to see an uneditable view of the lockfile that is currently loaded.

For example, in a specification-based environment, when I view an existing environemnt I see requested and installed deps. When I view an existing lockfile environment (as far as I can tell), we won't have any access to requested or installed deps and the best "view" we can get is the lockfile itself.

@gabalafou
Copy link
Contributor Author

Great feedback. Let me code up quickly what all I think I'm hearing, and we'll iterate from there.

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.

[ENH] - Add ability to build env from lockfile
4 participants