Skip to content

ref: replace git clone with zip downloads, reuse retry machinery#314

Open
joshuarli wants to merge 2 commits intomainfrom
ref-zip-urls
Open

ref: replace git clone with zip downloads, reuse retry machinery#314
joshuarli wants to merge 2 commits intomainfrom
ref-zip-urls

Conversation

@joshuarli
Copy link
Copy Markdown
Member

@joshuarli joshuarli commented Apr 28, 2026

instead of getsentry/sentry#114194 we can just completely drop git in favor of downloading source archives at the cost of a few MB (snuba, relay) vs sparsely checking out devservices/

it's worth it for peace of mind and is overall much simpler (look at all the removed code!)

no config changes required; we can construct a github archive zip url from existing configuration

i also took the liberty to deduplicate a retry wrapper since it's now used in 3 places

also i tested this manually with fresh colima and it works

@joshuarli joshuarli requested a review from hubertdeng123 April 28, 2026 21:13
Comment thread devservices/utils/dependencies.py
Comment thread devservices/utils/dependencies.py
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit d372dd6. Configure here.

Comment thread devservices/utils/dependencies.py Outdated
Copy link
Copy Markdown
Member

@hubertdeng123 hubertdeng123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not convinced this is a better approach since the zip file is downloaded on every devservices call. Sparse checkout allowed us to return early if there weren't any changes. Can you explain more on the benefits here?

I know that git clone was creating issues in CI because of a silent runner upgrade from GitHub, but also I know that we use git clone in a lot of areas so trying to understand more here.



def _update_dependency(
def _parse_github_repo_path(repo_link: str) -> str:
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this necessary? What was nice about git clone was the ability to clone through file:// so we would no longer have that to test things out locally

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants