Skip to content

ruff package does not have an entrypoint generated for it #1000

Open
@lopopolo

Description

@lopopolo

🐞 bug report

Affected Rule

The issue is caused by the rule:
load("@py_deps_tools_ruff//:requirements.bzl", "entry_point")

Is this a regression?

I don't know.

Description

A clear and concise description of the problem...

rules_python does not generate an entry point for the ruff package.

🔬 Minimal Reproduction

https://github.com/lopopolo/ruff_entry_point_reproducer

🔥 Exception or Error

$ bazel run //:ruff
ERROR: /Users/lopopolo/dev/repos/ruff_entry_point_reproducer/tools/ruff/BUILD.bazel:18:6: no such target '@py_deps_tools_ruff_ruff//:rules_python_wheel_entry_point_ruff': target 'rules_python_wheel_entry_point_ruff' not declared in package '' defined by /private/var/tmp/_bazel_lopopolo/698235a6d86310c30fae5a78f4b7ba7c/external/py_deps_tools_ruff_ruff/BUILD.bazel (Tip: use `query "@py_deps_tools_ruff_ruff//:*"` to see all the targets in that package) and referenced by '//tools/ruff:entry'
ERROR: Analysis of target '//:ruff' failed; build aborted:
INFO: Elapsed time: 7.256s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (5 packages loaded, 48 targets configured)
    Fetching repository @local_config_xcode; Fetching the default Xcode version
ERROR: Build failed. Not running target

the results of the suggested query:

$ bazel query "@py_deps_tools_ruff_ruff//:*"
@py_deps_tools_ruff_ruff//:BUILD.bazel
@py_deps_tools_ruff_ruff//:data
@py_deps_tools_ruff_ruff//:dist_info
@py_deps_tools_ruff_ruff//:pkg
@py_deps_tools_ruff_ruff//:ruff-0.0.228-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
@py_deps_tools_ruff_ruff//:site-packages/__init__.py
@py_deps_tools_ruff_ruff//:site-packages/ruff-0.0.228.dist-info/INSTALLER
@py_deps_tools_ruff_ruff//:site-packages/ruff-0.0.228.dist-info/METADATA
@py_deps_tools_ruff_ruff//:site-packages/ruff-0.0.228.dist-info/RECORD
@py_deps_tools_ruff_ruff//:site-packages/ruff-0.0.228.dist-info/WHEEL
@py_deps_tools_ruff_ruff//:site-packages/ruff-0.0.228.dist-info/license_files/LICENSE
@py_deps_tools_ruff_ruff//:site-packages/ruff/__init__.py
@py_deps_tools_ruff_ruff//:site-packages/ruff/__main__.py
@py_deps_tools_ruff_ruff//:whl
Loading: 0 packages loaded

There is no entrypoint in the target list.

🌍 Your Environment

Operating System:

  
$ sw_vers
ProductName:            macOS
ProductVersion:         13.1
BuildVersion:           22C65
  

Output of bazel version:

  
$ bazel version
Bazelisk version: development
Build label: 6.0.0
Build target: bazel-out/darwin-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Mon Dec 19 16:07:42 2022 (1671466062)
Build timestamp: 1671466062
Build timestamp as int: 1671466062
  

Rules_python version:

  
http_archive(
    name = "rules_python",
    sha256 = "497ca47374f48c8b067d786b512ac10a276211810f4a580178ee9b9ad139323a",
    strip_prefix = "rules_python-0.16.1",
    url = "https://github.com/bazelbuild/rules_python/archive/refs/tags/0.16.1.tar.gz",
)
  

Anything else relevant?

ruff is almost entirely written in Rust. The python package only contains an empty __init__.py and a __main__.py which invokes the embedded ruff binary: https://github.com/charliermarsh/ruff/tree/v0.0.228/python/ruff

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions