Skip to content

No space left on device (os error 28) causes pixi.toml content loss #5463

@SidneyCogdill

Description

@SidneyCogdill

Checks

  • I have checked that this issue has not already been reported.

  • I have confirmed this bug exists on the latest version of pixi, using pixi --version.

Reproducible example

Commands I ran and their output:

> $ pixi add clangdev                           
Error:   × failed to write to file `/mnt/project/
  │ pixi-playground/pixi.toml`:
  │ No space left on device (os error 28)

pixi.toml/pyproject.toml file that reproduces my issue:

Irrelevant to the issue.

pixi info output:

> $ pixi info                                     
System
------------
       Pixi version: 0.63.2
        TLS backend: rustls
           Platform: linux-64
   Virtual packages: __unix=0=0
                   : __linux=6.17.1=0
                   : __glibc=2.41=0
                   : __archspec=1=zen3
          Cache dir: /home/ubuntu/.cache/rattler/cache
       Auth storage: /home/ubuntu/.rattler/credentials.json
   Config locations: No config files found

Global
------------
            Bin dir: /home/ubuntu/.pixi/bin
    Environment dir: /home/ubuntu/.pixi/envs
       Manifest dir: /home/ubuntu/.pixi/manifests/pixi-global.toml

Other files (e.g. script files, source files, etc.):

Issue description

If the project directory is not on the same file system as ~/.cache/rattler, pixi add copies the package files into the project directory. If the remote file system is full, the attempt to write into the pixi.toml fails, and all contents are lost.

Expected behavior

pixi should instead write into a temporary file and then rename to the pixi.toml, or test the available storage space before attempting to write.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions