-
Notifications
You must be signed in to change notification settings - Fork 525
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
Adding an existing package to new project added to solution #295
Comments
Got it working this way:
Suggestion: extend Paket add to do this automatically if you run |
Yes adding new projects is an open issue. @agross would you prefer to
|
Hm, not really sure I like the From my point of view, |
Actually I like to use the add command for this. The new remove command
|
OK, do it then ;-) |
There need to be some support if the topology of the solution changes. In my opinion, relying on manually creating files is not giving users a good experience, there should be some command to do this. |
Sorry, didn't see that the discussion was settled before I posted previous comment.. |
I think Alex's point is: we need no tooling. references files are sooo easy to edit. But we will do it. I think it makes sense to have both options. Also for automation on top. |
:) Doesn't get easier than names in a text file, but as a relatively new user I first tried all sorts of combinations with add before I as a sort of blind shot tried adding the reference file and doing paket install. Meaning it was not very intuitive to get from "I want to do X" to "I achieved X". Point being, tooling and user experience are important if there are any ambition to actually get some level of adoption. (Particularly when the alternative is nuget, which is really good at the tooling bit). But let us not keep beating this particular horse, discussion has long been settled. I just wanted to share my thoughts as someone who as relatively recently adopted Paket, to give my perspective on the user experience. |
could you please try 0.10.0-alpha002 |
Ok, some weird stuff happened Setup pre test: 1 test project with :
in the reference file In the paket.dependencies file, xunit.extensions is listed with no version constraints, Autofixture.Xunit is listed with the version constraint Tests
(I am slowly warming to @agross simple text editing solution. Actually a alot less work than doing paket add / remove. Only problem is to make it discoverable for new users.) |
I think I understand what's happening. Problem 1) - The "selective update" after add has to keep the requirements of Xunit. I think I can fix this Problem 2)
I think this is a bit tricky. what do you think? |
@isaacabraham is this the same behaviour you reported last time on twitter? |
@forki I think the main problem during removal is the involuntary update of the version. The really strange thing is that Xunit and xunit.extensions was added to the project even though I only did Once this happened, the project had both Xunit and Xunit.extensions in the reference file, and thus removing only xunit is basically what |
yes that's bad. But we can't just remove it from the lockfile since it could be an indirect dependency. We still need to resolve. |
The weird thing is that I find the file-based workflow to be really low friction, now that I've discovered it. The only thing I'm missing is the autocomplete from nuget. I think the biggest obstacle is to have users discover it, (though I think the fact that paket adds the files to the project helps a lot in discoverability. It is slightly more time consuming than my normal nuget workflow due to the diligence paid to versioning (that nuget basically screws up in situations like my test above). But other than that it is really nice. (//cc @agross ) So since the file based thingy is working fine, IE,
Seems to yield no suprices. Could we be missing some potential approach that way? IE, if the packate is already in the paket.dependency fil, just add to to the projects reference file and run paket update. |
I just tried to reproduce:
paket update gives:
after paket add nuget xunit:
so the same thing. It doesn't change the lockfile. |
@forki Still, what I don't like about the |
@forki Alright. I knew I missed something. |
so it seems I'm back to "can't reproduce". Damn it. I hoped to release this today ;-) |
Did a new test Paket dependencies before test:
Lock file pre test:
Dependencies file post test:
Lock file post test:
(Yes I know there seems to be no reason for Mysql and NetMQ, but not all can be posted on the internets..) All my Xunit references was updated to 1.9.2 After subsequent run of
All is well again. |
Ok thanks. Now I know where I have to look. That's very good feedback.
|
No, that was doing an Add effectively did an Update of the whole dependency chain. From: Steffen Forkmann [mailto:notifications@github.com] @isaacabraham https://github.com/isaacabraham is this the same behaviour you reported last time on twitter? — |
I can reproduce and know what the error is. Will fix next week. thanks |
Case: I added a new test project to my solution. I previously had another test project using
Xunit
, and as such I wanted to add Xunit to the new test project.Any call to paket add fails because Xunit is already in paket.dependencies. Tried both --hard and --force.
Is this not yet supported, or am I doing it wrong?
The text was updated successfully, but these errors were encountered: