Add/Remove vs Install/Uninstall

Sep 1, 2010 at 12:57 AM

Hanselman pointed out that per this PowerShell guidance, we should be using Add/Remove instead of Install/Uninstall.  So we would have Add-Package/Remove-Package.

BTW, note that we had already decided to move away from having distinct Install-Package/Add-PackageReference commands, so we just have one command we need to name properly.  It applies either to solution level or project level based on the context and switches.

Everyone ok with -Package/Remove-Package?

Sep 1, 2010 at 12:59 AM

Sure, I'm all for using PS standards where we can so everyone is familiar with the format and terms.

Sep 1, 2010 at 1:00 AM

Can  you elaborate on the context and switches? We don't have any switch currently for Install-Package and Uninstall-Package which specifies if the installation applies to project or solution level.

Sep 1, 2010 at 1:05 AM

Two categories of packages:

  • Those that include project level stuff
  • Those that don't (like MvcScaffold, which just adds PS commands)

For those that don't, it's a no brainer: Add-Package MvcScaffold is just solution level.

For those that do, it installs in the current project, unless -Project specifies a different one.

Note that this is only at the PowerShell level.  API wise, we still have a distinction between bringing a package into the solution, and applying it to a project.  But in Powershell, we tried to simplify things to match the common workflow.  i.e. there is little reason to bring a package into the solution unless you're going to apply it to a project (unless it's a solution level package).

And then Remove-Package works the same way.

Does that make sense?

Sep 1, 2010 at 1:11 AM

OK, that makes sense. So we need to add a helper method to the API to check if a package include project level stuff. This is so that PowerShell can throw an error message if people do: Add-Package MvcScaffold -project MyProject.


Sep 1, 2010 at 7:00 PM
+1 for PS standards

On Tue, Aug 31, 2010 at 6:59 PM, bsimser <> wrote:

From: bsimser

Sure, I'm all for using PS standards where we can so everyone is familiar with the format and terms.

Read the full discussion online.

To add a post to this discussion, reply to this email (

To start a new discussion for this project, email

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe or change your settings on

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at