-
Notifications
You must be signed in to change notification settings - Fork 109
Deprecate --dev related switches #775
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
base: main
Are you sure you want to change the base?
Conversation
setting as a flag involved passing a default value to any CLI invocation
✅ Deploy Preview for conda-lock ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
Hi @qmarcou, thanks so much for all your work on this. Sorry to take so long to respond, this ended up going a lot deeper than I expected. I want to move things forward with deprecations, but as I've said I'm also concerned about breaking stuff, especially since the upcoming release is unfortunately going to be so big. The current logic involved is beyond my ability to reason about it, so the only way I could get a handle on it was to test all 48 possible combinations of relevant CLI arguments in #778. I've extended your work a bit, and cherry-picked the tests in qmarcou#2. I would like to know what you think. |
Hi @maresb ,
Thank you so much for your help with setting up CLI tests for all the optional dependencies switches. In the end did it help you figure out the current and desired default behavior for the |
Thanks so much @qmarcou for coming back to this, I really appreciate it! I think I've decided on a hard deprecation, but with a flag that can be used as an escape hatch to restore the previous behavior. (I have some uncommitted changes where I think I've correctly replicated the previous behavior.) Regarding the desired defaults, that's beyond my horizon at the moment. I need to focus fully on releasing conda-lock v3 and not breaking stuff. There's a lot in my head about potential failure modes between mamba v1 and v2, and I still need to make some changes to the test suite. Once v3 is out (and assuming I'm not inundated with bug reports) then we can immediately figure out the desired default behavior. And now that you know my priorities (simple and clear migration path, and preferring "category" terminology to "extras"), you'll probably be able to figure out the correct solution and let me know once I'm ready. 😄 |
I want to get v3 out tonight, so I'm going to let this slip. Sorry. 😞 I plan to release much more frequently in the future, so I don't expect it to be such a big deal to get this in. I sincerely do value your contribution and feedback. |
No worries, and congratulations for getting v3 out! |
Thanks @qmarcou! Supposing we fix the warning and merge my PR, there are still two things on my mind:
|
I think it would be good to also merge #778 , the code is well centralized and easy to remove if you decide to completely drop "--dev-dependency" support one day. Regarding your second point, I did not have time to look into details, but could the new I have added some comments to your proposed changes, but I may be a bit lost into the changes and their scope, they may be irrelevant (sorry for wasting your time in that case) |
Description
This PR is a follow up of #641 .
In a nutshell --dev/--no-dev switches are incorrectly documented, inconsistent, as well as redundant (albeit with some clashes) with the
--extra
CLI.Changes made deprecate explicitly all --(no-)dev(-dependencies) by raising a meaningful exception.
Limits:
conda-lock/tests/test_conda_lock.py
Lines 356 to 364 in f753f70
It seems there is currently no tests regarding the
--extra
switches behavior.--extras
in incorrect install command suggested in conda-lock.yml comments with 'dev' extra dependencies #641