Read the Docs build information Build id: 4224094 Project: icb-scanpy Version: 4221 Commit: c2cebcc3565bfe354cb3d2e23ec12bbc5187385f Date: 2026-07-17T07:27:30.265737Z State: finished Success: False [rtd-command-info] start-time: 2026-07-17T07:27:31.076149Z, end-time: 2026-07-17T07:27:32.044738Z, duration: 0, exit-code: 0 git clone --depth 1 https://github.com/scverse/scanpy.git . Cloning into '.'... [rtd-command-info] start-time: 2026-07-17T07:27:32.142356Z, end-time: 2026-07-17T07:27:33.156289Z, duration: 1, exit-code: 0 git fetch origin --force --prune --prune-tags --depth 50 pull/4221/head:external-4221 From https://github.com/scverse/scanpy * [new ref] refs/pull/4221/head -> external-4221 * [new tag] 0.0 -> 0.0 [rtd-command-info] start-time: 2026-07-17T07:27:33.891635Z, end-time: 2026-07-17T07:27:33.941128Z, duration: 0, exit-code: 0 git checkout --force c2cebcc3565bfe354cb3d2e23ec12bbc5187385f Note: switching to 'c2cebcc3565bfe354cb3d2e23ec12bbc5187385f'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at c2cebcc Automated template update to v0.8.0 [rtd-command-info] start-time: 2026-07-17T07:27:34.054364Z, end-time: 2026-07-17T07:27:34.092978Z, duration: 0, exit-code: 0 cat .readthedocs.yaml # https://docs.readthedocs.io/page/config-file/v2.html version: 2 build: os: ubuntu-24.04 tools: python: "3.14" nodejs: latest jobs: create_environment: - asdf plugin add uv - asdf install uv latest - asdf global uv latest build: html: - uvx hatch run docs:build - mv docs/_build $READTHEDOCS_OUTPUT [rtd-command-info] start-time: 2026-07-17T07:27:38.389238Z, end-time: 2026-07-17T07:27:38.443148Z, duration: 0, exit-code: 0 asdf global python 3.14.6 [rtd-command-info] start-time: 2026-07-17T07:27:40.686193Z, end-time: 2026-07-17T07:27:40.741792Z, duration: 0, exit-code: 0 asdf global nodejs 26.4.0 [rtd-command-info] start-time: 2026-07-17T07:27:41.009749Z, end-time: 2026-07-17T07:27:41.999819Z, duration: 0, exit-code: 0 asdf plugin add uv updating plugin repository...From https://github.com/asdf-vm/asdf-plugins 8e311ee..c0369a1 master -> origin/master * [new branch] dependabot/github_actions/actions/checkout-6 -> origin/dependabot/github_actions/actions/checkout-6 * [new branch] dependabot/github_actions/amannn/action-semantic-pull-request-6.1.1 -> origin/dependabot/github_actions/amannn/action-semantic-pull-request-6.1.1 * [new branch] dependabot/github_actions/asdf-vm/actions-4 -> origin/dependabot/github_actions/asdf-vm/actions-4 HEAD is now at c0369a1 feat: add yasm plugin (#1087) [rtd-command-info] start-time: 2026-07-17T07:27:42.102490Z, end-time: 2026-07-17T07:27:43.287160Z, duration: 1, exit-code: 0 asdf install uv latest redirect url: https://github.com/astral-sh/uv/releases/tag/0.11.29 * Downloading uv release 0.11.29... uv 0.11.29 installation was successful! [rtd-command-info] start-time: 2026-07-17T07:27:43.387139Z, end-time: 2026-07-17T07:27:43.495992Z, duration: 0, exit-code: 0 asdf global uv latest redirect url: https://github.com/astral-sh/uv/releases/tag/0.11.29 [rtd-command-info] start-time: 2026-07-17T07:27:43.694941Z, end-time: 2026-07-17T07:27:46.389948Z, duration: 2, exit-code: 1 uvx hatch run docs:build Downloading cryptography (4.5MiB) Downloading virtualenv (5.3MiB) Downloading uv (25.7MiB) Downloading pygments (1.2MiB) Downloaded uv Downloaded cryptography Downloaded virtualenv Downloaded pygments Installed 42 packages in 19ms Creating environment: docs Installing project in development mode × Failed to build `scanpy @ │ file:///home/docs/checkouts/readthedocs.org/user_builds/icb-scanpy/checkouts/4221` ├─▶ The build backend returned an error ╰─▶ Call to `hatchling.build.build_editable` failed (exit status: 1) [stderr] Traceback (most recent call last): File "", line 11, in wheel_filename = backend.build_editable("/home/docs/.cache/uv/builds-v0/.tmpZG4MED", {}, None) File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/build.py", line 83, in build_editable return os.path.basename(next(builder.build(directory=wheel_directory, versions=["editable"]))) ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/builders/plugin/interface.py", line 157, in build artifact = version_api[version](directory, **build_data) File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/builders/wheel.py", line 547, in build_editable return self.build_editable_detection(directory, **build_data) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/builders/wheel.py", line 559, in build_editable_detection for included_file in self.recurse_selected_project_files(): ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/builders/plugin/interface.py", line 182, in recurse_selected_project_files if self.config.only_include: ^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/docs/.asdf/installs/python/3.14.6/lib/python3.14/functools.py", line 1126, in __get__ val = self.func(instance) File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/builders/config.py", line 715, in only_include only_include = only_include_config.get("only-include", self.default_only_include()) or self.packages ~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/builders/wheel.py", line 293, in default_only_include return self.default_file_selection_options.only_include ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/docs/.asdf/installs/python/3.14.6/lib/python3.14/functools.py", line 1126, in __get__ val = self.func(instance) File "/home/docs/.cache/uv/builds-v0/.tmpfQiJyB/lib/python3.14/site-packages/hatchling/builders/wheel.py", line 281, in default_file_selection_options raise ValueError(message) ValueError: Unable to determine which files to ship inside the wheel using the following heuristics: https://hatch.pypa.io/latest/plugins/builder/wheel/#default-file-selection The most likely cause of this is that there is no directory that matches the name of your project (scanpy). At least one file selection option must be defined in the `tool.hatch.build.targets.wheel` table, see: https://hatch.pypa.io/latest/config/build/ As an example, if you intend to ship a directory named `foo` that resides within a `src` directory located at the root of your project, you can define the following: [tool.hatch.build.targets.wheel] packages = ["src/foo"] hint: Build failures usually indicate a problem with the package or the build environment