Skip to content

uv publish trusted publish integration test fails with 400 (already exists) #8817

@zanieb

Description

@zanieb
DEBUG Upload error response: {"message": "The server could not comply with the request since it is either malformed or otherwise incorrect.\n\n\nFile already exists ('astral_test_trusted_publishing-0.1.532-py3-none-any.whl', with blake2_256 hash 'd97b4758301f66fcdaea1b956f8175d2619aa12c5016fbbab940a117bbee752d'). See https://test.pypi.org/help/#file-name-reuse for more information.\n\n", "code": "400 File already exists ('astral_test_trusted_publishing-0.1.532-py3-none-any.whl', with blake2_256 hash 'd97b4758301f66fcdaea1b956f8175d2619aa12c5016fbbab940a117bbee752d'). See https://test.pypi.org/help/#file-name-reuse for more information.", "title": "Bad Request"}
error: Failed to publish `dist/astral_test_trusted_publishing-0.1.532-py3-none-any.whl` to https://test.pypi.org/legacy/
  Caused by: Upload failed with status code 400 Bad Request. Server says: 400 File already exists ('astral_test_trusted_publishing-0.1.532-py3-none-any.whl', with blake2_256 hash 'd97b4758301f66fcdaea1b956f8175d2619aa12c5016fbbab940a117bbee752d'). See https://test.pypi.org/help/#file-name-reuse for more information.
Traceback (most recent call last):
  File "/home/runner/work/uv/uv/scripts/publish/test_publish.py", line 422, in <module>
    main()
  File "/home/runner/work/uv/uv/scripts/publish/test_publish.py", line 418, in main
    publish_project(project_name, uv, client)
  File "/home/runner/work/uv/uv/scripts/publish/test_publish.py", line 284, in publish_project
    check_call(args, cwd=project_dir, env=env)
  File "/opt/hostedtoolcache/Python/3.12.7/x64/lib/python3.12/subprocess.py", line 413, in check_call

uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)

=== 4. Publishing modified astral-test-token 0.1.1060 again with skip existing (error test) ===
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)
uv pip compile not updated, missing 2 files for 0.1.1060: `astral-test-token==0.1.1059 --hash=sha256:b724b7fcce920db8313f9715791b537a25ccbca95fb4ef24ad02a82a7ec2866e --hash=sha256:f955569bc2ecebacace657bd9b34aba7153abd59556867548be39f85f91e215d
`, sleeping for 1s: `[https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/`](https://dl.cloudsmith.io/public/astral-test/astral-test-1/python/simple/%60)

Publish astral-test-trusted-publishing for pypi-trusted-publishing

=== 1. Publishing a new version: astral-test-trusted-publishing 0.1.532 https://test.pypi.org/legacy/ ===
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '[PosixPath('/home/runner/work/uv/uv/uv'), 'publish', '--publish-url', 'https://test.pypi.org/legacy/', '--trusted-publishing', 'always']' returned non-zero exit status 2.

https://github.com/astral-sh/uv/actions/runs/11672084476/job/32500017593?pr=8419

Metadata

Metadata

Assignees

No one assigned

    Labels

    testingInternal testing of behavior

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions