Skip to content

Releases: prefix-dev/pixi

v0.37.0 - 2024-11-18

18 Nov 12:43
fc90191
Compare
Choose a tag to compare

✨ Highlights

We now allow the use of prefix.dev channels with sharded repodata:

Running pixi search rubin-env using hyperfine on the default versus our channels gives these results:

Cache Status Channel Mean [ms] Relative
With cache https://prefix.dev/conda-forge 69.3 1.00
Without https://prefix.dev/conda-forge 389.5 5.62
With cache https://conda.anaconda.org/conda-forge 1043.3 15.06
Without https://conda.anaconda.org/conda-forge 2420.3 34.94

Breaking

  • Make sure that [activation.env] are not completely overridden by [target. tables, by @hameerabbasi in #2396

Changed

Documentation

Fixed

New Contributors

v0.36.0 - 2024-11-07

12 Nov 18:52
ce2345b
Compare
Choose a tag to compare

✨ Highlights

  • You can now pixi upgrade your project dependencies.
  • We've done a performance improvement on the prefix validation check, thus faster pixi run startup times.

Added

Documentation

Fixed

Performance

New Contributors

v0.35.0 - 2024-11-05

06 Nov 06:59
13f5350
Compare
Choose a tag to compare

✨ Highlights

pixi global now exposed binaries are not scripts anymore but actual executables.
Resulting in significant speedup and better compatibility with other tools.

Added

Changed

Documentation

Fixed

Refactor

New Contributors

v0.34.0

22 Oct 10:38
61d4eba
Compare
Choose a tag to compare

✨ Highlights

  • pixi global install now takes a flag --with, inspired by uv tool install. If you only want to add dependencies without exposing them, you can now run pixi global install ipython --with numpy --with matplotlib
  • Improved the output of pixi global subcommands
  • Many bug fixes

Added

Changed

Documentation

Fixed

Refactor

New Contributors

v0.33.0

16 Oct 09:31
975b123
Compare
Choose a tag to compare

✨ Highlights

This is the first release with the new pixi global implementation. It's a full reimplementation of pixi global where it now uses a manifest file just like pixi projects. This way you can declare your environments and save them to a VCS.

It also brings features like, adding dependencies to a global environment, and exposing multiple binaries from the same environment that are not part of the main installed packages.

Test it out with:

# Normal feature
pixi global install ipython

# New features
pixi global install \
    --environment science \           # Defined the environment name
    --expose scipython=ipython \      # Expose binaries under custom names
    ipython scipy                     # Define multiple dependencies for one environment

This should result in a manifest in $HOME/.pixi/manifests/pixi-global.toml:

version = 1

[envs.ipython]
channels = ["conda-forge"]
dependencies = { ipython = "*" }
exposed = { ipython = "ipython", ipython3 = "ipython3" }

[envs.science]
channels = ["conda-forge"]
dependencies = { ipython = "*", scipy = "*" }
exposed = { scipython = "ipython" }

📖 Documentation

Checkout the updated documentation on this new feature:

Breaking changes

This release breaks some CLI commands for pixi global

Before v0.33 In v0.33.0 Comment
pixi global upgrade package pixi global update environment_name updates the environment to the highest versions possible within the spec from the manifest
pixi global upgrade-all pixi global update Updates all environments to the highest possible version within the spec from the manifest
pixi global remove pixi global uninstall remove has become the opposite of add and uninstall of install, thus remove only removes packages from an environment not the environment itself

v0.32.2 - 2024-10-16

16 Oct 07:24
5fa78cf
Compare
Choose a tag to compare

✨ Highlights

  • pixi self-update will only work on the binaries from the GitHub releases, avoiding accidentally breaking the installation.
  • We now support gcs:// conda registries.
  • No more broken PowerShell after using pixi shell.

Changed

Documentation

Fixed

Refactor

New Contributors

v0.33.0rc1

11 Oct 07:41
6b2adad
Compare
Choose a tag to compare
v0.33.0rc1 Pre-release
Pre-release

Installation:

pixi self-update --version 0.33.0rc1

# OR

curl -fsSL https://pixi.sh/install.sh | PIXI_VERSION=v0.33.0rc1 bash

✨ Highlights

This is a release candidate for the new pixi global implementation. It's a full reimplementation of pixi global where it now uses a manifest file just like pixi projects. This way you can declare your environments and save them to a VCS.

It also brings features like, adding dependencies to a global environment, and exposing multiple binaries from the same environment that are not part of the main installed packages.

Test it out with:

# Normal feature
pixi global install ipython

# New features
pixi global install \
    --environment science \           # Defined the environment name
    --expose scipython=ipython \      # Expose binaries under custom names
    ipython scipy                     # Define multiple dependencies for one environment

This should result in a manifest in $HOME/.pixi/manifests/pixi-global.toml:

version = 1

[envs.ipython]
channels = ["conda-forge"]
dependencies = { ipython = "*" }
exposed = { ipython = "ipython", ipython3 = "ipython3" }

[envs.science]
channels = ["conda-forge"]
dependencies = { ipython = "*", scipy = "*" }
exposed = { scipython = "ipython" }

📖 Documentation

Checkout the updated documentation on this new feature:

v0.32.1 - 2024-10-08

08 Oct 12:18
fb050e0
Compare
Choose a tag to compare

Fixes

Documentation

Note

The task cache from inputs and outputs is most likely going to be invalidated, and thus will be rebuild. This had to do with a difference in the hash of a std::Path in this version of Rust.

v0.32.0 - 2024-10-08

08 Oct 06:11
989838c
Compare
Choose a tag to compare

✨ Highlights

The biggest fix in this PR is the move to the latest rattler as it came with some major bug fixes for macOS and Rust 1.81 compatibility.

Changed

Fixed

v0.31.0 - 2024-10-03

03 Oct 14:49
8ba4c4a
Compare
Choose a tag to compare

✨ Highlights

Thanks to our maintainer @baszamstra!
He sped up the resolver for all cases we could think of in #2162
Check the result of times it takes to solve the environments in our test set:
image

Added

Changed

Documentation

Fixed

Performance

New Contributors