Skip to content

Symlink (or copy) binary entry points into ephemeral environments#14877

Draft
zanieb wants to merge 1 commit intomainfrom
zb/link-entrypoints
Draft

Symlink (or copy) binary entry points into ephemeral environments#14877
zanieb wants to merge 1 commit intomainfrom
zb/link-entrypoints

Conversation

@zanieb
Copy link
Copy Markdown
Member

@zanieb zanieb commented Jul 24, 2025

Closes #14874

In addition to copying entry points and rewriting their shebangs, if we encounter entry points that do not have shebangs (e.g., binaries), we'll symlink (or copy, on Windows) them into the directory.

I'm uncertain if this is the correct approach or if we should change binary discovery in Ruff to account for this case.

@zanieb zanieb added the bug Something isn't working label Jul 24, 2025
@zanieb zanieb temporarily deployed to uv-test-registries July 24, 2025 20:20 — with GitHub Actions Inactive
@zanieb zanieb force-pushed the zb/link-entrypoints branch from 778a833 to c7982af Compare July 24, 2025 20:47
@zanieb zanieb temporarily deployed to uv-test-registries July 24, 2025 20:50 — with GitHub Actions Inactive
@geofft
Copy link
Copy Markdown
Contributor

geofft commented Aug 6, 2025

One think to think about with a copy is that executable-relative dependencies will break. This will be fine for symlinks, and so in particular $ORIGIN-relative dependencies will be fine... but is there an equivalent on Windows? I believe Windows executables load .dlls out of their current directory, do people rely on that in stuff shipped in wheels?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

uv run --with can't find installed ruff in subprocess

2 participants