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

Plans to add upgrade support? #68

Closed
asheroto opened this issue Oct 22, 2021 · 7 comments
Closed

Plans to add upgrade support? #68

asheroto opened this issue Oct 22, 2021 · 7 comments

Comments

@asheroto
Copy link

Hey, thanks for building this!

Do you plan to add support for upgrading packages? roco upgrade all etc?

@mwallner
Copy link
Collaborator

Hi,
the intention behind Rocolatey is to speed things up with Chocolatey wherever possible, - I don't aim to replace it in any way / roco should make your choco experience "more delightful" 😄
that being said, I don're really see how roco upgrade all would be benificial - how could it be quicker than choco upgrade all ?

@asheroto
Copy link
Author

Roco was recommended to me from this issue I posted on Chocolatey.

chocolatey/choco#2413

In summary, Choco takes some time to upgrade packages because it parses the entire DOM for each package.

I know I could just write a script to only upgrade the packages roco outdated returns, but it'd be cool if when you typed roco upgrade all that it ran roco outdated and then ran choco upgrade x y z" (upgrading only the outdated packages) .

Or if there was a switch that would spit out the outdated package names only delimited by a space.. That way you could run
choco upgrade (roco outdated).

@mwallner
Copy link
Collaborator

I see...
let me think about this!

in the meantime, try

choco upgrade (((roco outdated -r) | % { $_.Split('|')[0]}) -join " ")

😉 🚀

@asheroto
Copy link
Author

Aw, this is odd. Looks like it works but fails.

image

@AdmiringWorm
Copy link

@asheroto try removing the -join " ".

It is passing as a quoted string to Chocolatey (that is PowerShell doing that), without the join, then PowerShell should pass the package names correctly.

@asheroto
Copy link
Author

asheroto commented Oct 23, 2021

omg it's like magic! lightning fast upgrades! thanks! literally < 60 seconds compared to 3-6 minutes.

now if only chocolatey would natively support concurrency (non- Windows installer -based applications, of course).

@mwallner
Copy link
Collaborator

mwallner commented Jun 5, 2023

1.5 years later, I still think adding "upgrade support" to rocolatey is not the way to go - simply upgrading everything that can be upgraded without revisiting the list of update candidates can go very wrong and that's not something I want people to do by accident.

On the other hand, I'm guessing a -l switch for the outdated command, simply outputting a list of outdated commands really could come in handy - it would enable something like @asheroto suggested:

choco upgrade (roco outdated -l)

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

No branches or pull requests

3 participants