Releases: prefix-dev/pixi
v0.32.1 - 2024-10-08
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
✨ 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
- Correctly implement total ordering for dependency provider by @tdejager in rattler/#892
Fixed
- Fixed self-clobber issue when up/down grading packages by @wolfv in rattler/#893
- Check environment name before returning not found print by @ruben-arts in #2198
- Turn off symlink follow for task cache by @ruben-arts in #2209
v0.31.0 - 2024-10-03
✨ 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:
Added
- Add
nodefaults
to imported conda envs by @ruben-arts in #2097 - Add newline to
.gitignore
by @ruben-arts in #2095 - Add
--no-activation
option to prevent env activation during global install/upgrade by @183amir in #1980 - Add
--priority
arg toproject channel add
by @minrk in #2086
Changed
- Use pixi spec for conda environment yml by @ruben-arts in #2096
- Follow symlinks while walking files by @0xbe7a in #2141
Documentation
- Community: add array-api-extra by @lucascolley in #2107
- Add minimal constructor example by @bollwyvl in #2102
- Add description for
pixi update --json
by @scottamain in #2160 - Fixes backticks for doc strings by @rachfop in #2174
Fixed
- Sort exported conda explicit spec topologically by @synapticarbors in #2101
--import env_file
breaks channel priority by @fecet in #2113- Allow exact yanked pypi packages by @nichmor in #2116
- Check if files are same in
self-update
by @apoorvkh in #2132 get_or_insert_nested_table
by @Hofer-Julian in #2167- Improve
install.sh
PATH handling and general robustness by @Arcitec in #2189 - Output tasks on
pixi run
without input by @ruben-arts in #2193
Performance
- Significantly speed up conda resolution by @baszalmstra in #2162
New Contributors
- @Arcitec made their first contribution in #2189
- @rachfop made their first contribution in #2174
- @scottamain made their first contribution in #2160
- @apoorvkh made their first contribution in #2132
- @0xbe7a made their first contribution in #2141
- @fecet made their first contribution in #2113
- @minrk made their first contribution in #2086
- @183amir made their first contribution in #1980
- @lucascolley made their first contribution in #2107
v0.30.0 - 2024-09-19
✨ Highlights
I want to thank @synapticarbors and @abkfenris for starting the work on pixi project export
.
Pixi now supports the export of a conda environment.yml
file and a conda explicit specification file.
This is a great addition to the project and will help users to share their projects with other non pixi users.
Added
- Export conda explicit specification file from project by @synapticarbors in #1873
- Add flag to
pixi search
by @Hofer-Julian in #2018 - Adds the ability to set the index strategy by @tdejager in #1986
- Export conda
environment.yml
by @abkfenris in #2003
Changed
- Improve examples/docker by @jennydaman in #1965
- Minimal pre-commit tasks by @Hofer-Julian in #1984
- Improve error and feedback when target does not exist by @tdejager in #1961
- Move the rectangle using a mouse in SDL by @certik in #2069
Documentation
- Update cli.md by @xela-95 in #2047
- Update
system-requirements
information by @ruben-arts in #2079 - Append to file syntax in task docs by @nicornk in #2013
- Change documentation of pixi upload to refer to correct API endpoint by @traversaro in #2074
Testing
- Add downstream nerfstudio test by @tdejager in #1996
- Run pytests in parallel by @tdejager in #2027
- Testing common wheels by @tdejager in #2031
Fixed
- Lock file is always outdated for pypi path dependencies by @nichmor in #2039
- Fix error message for export conda explicit spec by @synapticarbors in #2048
- Use
conda-pypi-map
for feature channels by @nichmor in #2038 - Constrain feature platforms in schema by @bollwyvl in #2055
- Split tag creation functions by @tdejager in #2062
- Tree print to pipe by @ruben-arts in #2064
subdirectory
in pypi url by @ruben-arts in #2065- Create a GUI application on Windows, not Console by @certik in #2067
- Make dashes underscores in python package names by @ruben-arts in #2073
- Give better errors on broken
pyproject.toml
by @ruben-arts in #2075
Refactor
- Stop duplicating
strip_channel_alias
from rattler by @Hofer-Julian in #2017 - Follow-up wheels tests by @Hofer-Julian in #2063
- Integration test suite by @Hofer-Julian in #2081
- Remove
psutils
by @Hofer-Julian in #2083 - Add back older caching method by @tdejager in #2046
- Release script by @Hofer-Julian in #1978
- Activation script by @Hofer-Julian in #2014
- Pins python version in add_pypi_functionality by @tdejager in #2040
- Improve the lock_file_usage flags and behavior. by @ruben-arts in #2078
- Move matrix to workflow that it is used in by @tdejager in #1987
- Refactor manifest into more generic approach by @nichmor in #2015
New Contributors
0.29.0 - 2024-09-04
✨ Highlights
- Add build-isolation options, for more details check out our docs
- Allow to use virtual package overrides from environment variables (PR)
- Many bug fixes
Added
-
Add release script by @Hofer-Julian in #1971
Changed
-
Use rustls-tls instead of native-tls per default by @Hofer-Julian in #1929
-
Better error for when the target or platform are missing by @tdejager in #1959
-
Improve integration tests by @Hofer-Julian in #1958
-
Improve release script by @Hofer-Julian in #1974
Fixed
-
Update env variables in installation docs by @lev112 in #1937
-
Always overwrite when pixi adding the dependency by @ruben-arts in #1935
-
pixi init
forpyproject.toml
by @Hofer-Julian in #1947 -
Use two in memory indexes, for resolve and builds by @tdejager in #1969
Refactor
- Improve integration tests by @Hofer-Julian in #1942
New Contributors
v0.28.2 - 2024-08-28
v0.28.1 - 2024-08-26
v0.28.0 - 2024-08-22
✨ Highlights
- Bug Fixes: Major fixes in general but especially for PyPI installation issues and better error messaging.
- Compatibility: Default Linux version downgraded to 4.18 for broader support.
- New Features: Added INIT_CWD in pixi run, improved logging, and more cache options.
Added
- Add
INIT_CWD
to activated envpixi run
by @ruben-arts in #1798 - Add context to error when parsing conda-meta files by @baszalmstra in #1854
- Add some logging for when packages are actually overridden by conda by @tdejager in #1874
- Add package when extra is added by @ruben-arts in #1856
Changed
- Use new gateway to get the repodata for global install by @nichmor in #1767
- Pixi global proposal by @Hofer-Julian in #1757
- Upgrade to new uv 0.2.37 by @tdejager in #1829
- Use new gateway for pixi search by @nichmor in #1819
- Extend pixi clean cache with more cache options by @ruben-arts in #1872
- Downgrade
__linux
default to4.18
by @ruben-arts in #1887
Documentation
- Fix instructions for update github actions by @Hofer-Julian in #1774
- Fix fish completion script by @dennis-wey in #1789
- Expands the environment variable examples in the reference section by @travishathaway in #1779
- Community feedback
pixi global
by @Hofer-Julian in #1800 - Additions to the pixi global proposal by @Hofer-Julian in #1803
- Stop using invalid environment name in pixi global proposal by @Hofer-Julian in #1826
- Extend
pixi global
proposal by @Hofer-Julian in #1861 - Make
channels
required inpixi global
manifest by @Hofer-Julian in #1868 - Fix linux minimum version in project_configuration docs by @traversaro in #1888
Fixed
- Try to increase
rlimit
by @baszalmstra in #1766 - Add test for invalid environment names by @Hofer-Julian in #1825
- Show global config in info command by @ruben-arts in #1807
- Correct documentation of PIXI_ENVIRONMENT_PLATFORMS by @traversaro in #1842
- Format in docs/features/environment.md by @cdeil in #1846
- Make proper use of
NamedChannelOrUrl
by @ruben-arts in #1820 - Trait impl override by @baszalmstra in #1848
- Tame
pixi search
by @baszalmstra in #1849 - Fix
pixi tree -i
duplicate output by @baszalmstra in #1847 - Improve spec parsing error messages by @baszalmstra in #1786
- Parse matchspec from CLI Lenient by @baszalmstra in #1852
- Improve parsing of pypi-dependencies by @baszalmstra in #1851
- Don't enforce system requirements for task tests by @baszalmstra in #1855
- Satisfy when there are no pypi packages in the lockfile by @ruben-arts in #1862
- Ssh url should not contain colon by @baszalmstra in #1865
find-links
with manifest-path by @baszalmstra in #1864- Increase stack size in debug mode on windows by @baszalmstra in #1867
- Solve-group-envs should reside in
.pixi
folder by @baszalmstra in #1866 - Move package-override logging by @tdejager in #1883
- Pinning logic for minor and major by @baszalmstra in #1885
- Docs manifest tests by @ruben-arts in #1879
Refactor
- Encapsulate channel resolution logic for CLI by @olivier-lacroix in #1781
- Move to
pub(crate) fn
in order to detect and remove unused functions by @Hofer-Julian in #1805 - Only compile
TaskNode::full_command
for tests by @Hofer-Julian in #1809 - Derive
Default
for more structs by @Hofer-Julian in #1824 - Rename
get_up_to_date_prefix
toupdate_prefix
by @Hofer-Julian in #1837 - Make
HasSpecs
implementation more functional by @Hofer-Julian in #1863
New Contributors
v0.27.1 - 2024-08-09
Documentation
- Fix mlx feature in "multiple machines" example by @rgommers in #1762
- Update some of the cli and add osx rosetta mention by @ruben-arts in #1760
- Fix typo by @pavelzw in #1771
Fixed
- User agent string was wrong by @wolfv in #1759
- Dont accidentally wipe pyproject.toml on
init
by @ruben-arts in #1775
Refactor
- Add
pixi_spec
crate by @baszalmstra in #1741
New Contributors
v0.27.0 - 2024-08-07
✨ Highlights
This release contains a lot of refactoring and improvements to the codebase, in preparation for future features and improvements.
Including with that we've fixed a ton of bugs. To make sure we're not breaking anything we've added a lot of tests and CI checks.
But let us know if you find any issues!
As a reminder, you can update pixi using pixi self-update
and move to a specific version, including backwards, with pixi self-update --version 0.27.0
.
Added
- Add
pixi run
completion forfish
shell by @dennis-wey in #1680
Changed
- Move examples from setuptools to hatchling by @Hofer-Julian in #1692
- Let
pixi init
create hatchling pyproject.toml by @Hofer-Julian in #1693 - Make
[project]
table optional forpyproject.toml
manifests by @olivier-lacroix in #1732
Documentation
- Improve the
fish
completions location by @tdejager in #1647 - Explain why we use
hatchling
by @Hofer-Julian - Update install CLI doc now that the
update
command exist by @olivier-lacroix in #1690 - Mention
pixi exec
in GHA docs by @pavelzw in #1724 - Update to correct spelling by @ahnsn in #1730
- Ensure
hatchling
is used everywhere in documentation by @olivier-lacroix in #1733 - Add readme to WASM example by @wolfv in #1703
- Fix typo by @pavelzw in #1660
- Fix typo by @DimitriPapadopoulos in #1743
- Fix typo by @SeaOtocinclus in #1651
Testing
- Added script and tasks for testing examples by @tdejager in #1671
- Add simple integration tests by @ruben-arts in #1719
Fixed
- Prepend pixi to path instead of appending by @vigneshmanick in #1644
- Add manifest tests and run them in ci by @ruben-arts in #1667
- Use hashed pypi mapping by @baszalmstra in #1663
- Depend on
pep440_rs
from crates.io and use replace by @baszalmstra in #1698 pixi add
with more than just package name and version by @ruben-arts in #1704- Ignore pypi logic on non pypi projects by @ruben-arts in #1705
- Fix and refactor
--no-lockfile-update
by @ruben-arts in #1683 - Changed example to use hatchling by @tdejager in #1729
- Todo clean up by @KGrewal1 in #1735
- Allow for init to
pixi.toml
whenpyproject.toml
is available. by @ruben-arts in #1640 - Test on
macos-13
by @ruben-arts in #1739 - Make sure pixi vars are available before
activation.env
vars are by @ruben-arts in #1740 - Authenticate exec package download by @olivier-lacroix in #1751
Refactor
- Extract
pixi_manifest
by @baszalmstra in #1656 - Delay channel config url evaluation by @baszalmstra in #1662
- Split out pty functionality by @tdejager in #1678
- Make project manifest loading DRY and consistent by @olivier-lacroix in #1688
- Refactor channel add and remove CLI commands by @olivier-lacroix in #1689
- Refactor
pixi::consts
andpixi::config
into separate crates by @tdejager in #1684 - Move dependencies to
pixi_manifest
by @tdejager in #1700 - Moved pypi environment modifiers by @tdejager in #1699
- Split
HasFeatures
by @tdejager in #1712 - Move, splits and renames the
HasFeatures
trait by @tdejager in #1717 - Merge
utils
by @tdejager in #1718 - Move
fancy
to its own crate by @tdejager in #1722 - Move
config
to repodata functions by @tdejager in #1723 - Move
pypi-mapping
to its own crate by @tdejager in #1725 - Split
utils
into 2 crates by @tdejager in #1736 - Add progress bar as a crate by @nichmor in #1727
- Split up
pixi_manifest
lib by @tdejager in #1661
New Contributors
- @DimitriPapadopoulos made their first contribution in #1743
- @KGrewal1 made their first contribution in #1735
- @ahnsn made their first contribution in #1730
- @dennis-wey made their first contribution in #1680