Skip to content

Missing executable bit for scripts in uv 0.10.5 #18181

@moatkt

Description

@moatkt

Summary

In uv 0.10.5 when running uv within a docker container (including in CI environments) the executable flag is not set correctly. I suspect this is related to the filesystem changes made in the latest release (this does not occur under uv 0.10.4).

To reproduce, create uv_problem_demo.sh containing the following:

#!/bin/bash

uv venv venv
source venv/bin/activate
uv pip install pyspark==4.0.0
ls -l venv/lib/python3.13/site-packages/pyspark/bin/

and then compare the output when run in docker to the output when run using podman or not containerised at all. Note the missing executable bits in the docker example.

$ sh uv_problem_demo.sh
Using CPython 3.13.4
Creating virtual environment at: venv
Activate with: source venv/bin/activate
Using Python 3.13.4 environment at: venv
Resolved 2 packages in 157ms
Installed 2 packages in 53ms
 + py4j==0.10.9.9
 + pyspark==4.0.0
-rwxr-xr-x 5 moatkt moatkt 1040 Feb 18 13:29 venv/lib/python3.13/site-packages/pyspark/bin/spark-submit

$ cat uv_problem_demo.sh | podman run --rm -i ghcr.io/astral-sh/uv:debian bash
WARN[0000] The deprecated BoltDB database driver is in use. This driver will be removed in the upcoming Podman 6.0 release in mid 2026. It is advised that you migrate to SQLite to avoid issues when this occurs. Set SUPPRESS_BOLTDB_WARNING environment variable to remove this message. 
Using CPython 3.13.5 interpreter at: /usr/bin/python3
Creating virtual environment at: venv
Activate with: source venv/bin/activate
Using Python 3.13.5 environment at: /venv
Resolved 2 packages in 1m 06s
   Building pyspark==4.0.0
      Built pyspark==4.0.0
Prepared 2 packages in 17.38s
Installed 2 packages in 149ms
 + py4j==0.10.9.9
 + pyspark==4.0.0
-rwxr-xr-x 2 root root 1040 Feb 24 12:48 venv/lib/python3.13/site-packages/pyspark/bin/spark-submit

$ cat uv_problem_demo.sh | docker run --rm -i ghcr.io/astral-sh/uv:debian bash
Using CPython 3.13.5 interpreter at: /usr/bin/python3
Creating virtual environment at: venv
Activate with: source venv/bin/activate
Using Python 3.13.5 environment at: /venv
Resolved 2 packages in 1m 16s
   Building pyspark==4.0.0
      Built pyspark==4.0.0
Prepared 2 packages in 31.83s
Installed 2 packages in 565ms
 + py4j==0.10.9.9
 + pyspark==4.0.0
-rw-r--r-- 1 root root 1040 Feb 24 12:51 venv/lib/python3.13/site-packages/pyspark/bin/spark-submit

Platform

Linux 6.12.74-1-lts x86_64 GNU/Linux

Version

uv 0.10.5

Python version

3.13.5, 3.11.9

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-mreNeeds more information for reproduction, see #9452

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions