bazelbuild / bazelbuild/bazel

Duplicate URLs get fetched twice

Open
#12,420 2 comments 0 reactions 0 assignees View on GitHub
P2 team-ExternalDeps type: bug
Dominant language
Java
Stars
25.8k
Forks
4.6k
Avg merge
2d 20h
Merged PRs (30d)
72

Description

If we have the following in our WORKSPACE file:

```
http_archive(
name = "io_bazel_rules_go",
sha256 = "a8d6b1b354d371a646d2f7927319974e0f9e52f73a2452d2b3877118169eb6bb",
urls = [
"https://github.com/bazelbuild/rules_go/releases/download/v0.23.3/rules_go-v0.23.3.tar.gz",
],
)

http_archive(
name = "io_bazel_rules_go2",
sha256 = "a8d6b1b354d371a646d2f7927319974e0f9e52f73a2452d2b3877118169eb6bb",
urls = [
"https://github.com/bazelbuild/rules_go/releases/download/v0.23.3/rules_go-v0.23.3.tar.gz",
],
)
```

(This is obviously silly, but we have legitimate use cases which end up evaluating to the same URL).

Bazel merrily downloads the same URL twice, and the UI alternates between showing status for one and showing status for the other.

Once it is in the local repository cache, this isn't an issue.

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue using the two http_archive entries in the WORKSPACE file and observe the duplicate downloads and alternating UI status. Trace the behavior around the local repository cache and define done as fetching an identical URL once while both repository references resolve and the UI remains coherent before and after caching.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.