Skip to content

(RFC) How to update existing installations #679

@jaimergp

Description

@jaimergp

The update logic in the installers is a bit convoluted right now, and I don't think it's working at all.

The background is that previous iterations of constructor would consider the target environment (if not empty) as part of the fresh installation. However, at some point, the installer was instructed to error if the target directory was not empty (by default). Adding the -f or -u switches in the shell installer would somehow allow that, but there were no guarantees it would succeed. I am not aware of similar switches on Windows installers.

These days, the installer does not solve the target environment, it simply runs an explicit install, overwriting as needed if -f was passed.

I think that's still the right approach (happy to discuss that, though), but some users are confused by how to update the installation. There are two options:

  • In installers providing a conda deployment, conda update -n base conda should suffice assuming the base environment is tractable.
  • If conda is not involved, then it's a matter of uninstalling / removing and installing the new one.

I am thinking that maybe we could provide either a custom field to change the default message, or at least parameterize the message depending on whether conda is included in base or not. However, some apps might not want to mention conda at all to keep their delivery story simpler for their users (e.g. Spyder or napari).

Metadata

Metadata

Assignees

Labels

stale::recovered[bot] recovered after being marked as stale

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions