bazelbuild / bazelbuild/bazelisk

Please keep the Python version maintained

Open
#222 6 comments 0 reactions 0 assignees View on GitHub
P2 type: feature request
Dominant language
Go
Stars
2.7k
Forks
424
PR merge metrics
No merged PRs in 30d

Description

This isn't in reference to any specific issue --- the Python version currently works perfectly fine, and perhaps it will continue working indefinitely.

I just wanted to add my encouragement generally to keep the Python version around. The Python version very nicely solves the bootstrapping problem: I can include a copy of bazelisk.py in my repository, and in the documentation just tell users to invoke:

```
python bazelisk.py ...
```

in order to execute the build without any additional steps.

On Linux and macOS at least some version of Python is sure to already be available, and on Windows it is also likely to already be available (especially if the project itself requires it). The only downside is that on macOS, Python doesn't have access to a certificate store by default, so the user has to perform an additional step if not already set up.

Since I have my WORKSPACE already set up to download all dependencies, this keeps the installation procedure quite simple --- the user doesn't have to install *any* dependencies manually, which is very convenient --- users may otherwise be put off by having to install Bazel manually.

In contrast the Go version basically doesn't solve my use case at all: I would have to tell users to manually install it. But that isn't really any easier than just installing Bazel. It does still provide some benefit in managing bazel versions, but the overall convenience is much lower.

What was the original motivation for rewriting in Go?

Contributor guide

Open the contributing guide

Research direction

The issue names bazelisk.py, the Go version, and WORKSPACE setup but no source file, test, or entry point. Start by reviewing how the Python and Go versions are maintained and how the documented `python bazelisk.py ...` workflow is supported; completion would require a decided maintenance direction and corresponding scope.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, python
Domain
build-system, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.