Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(rules_git): add 1.0.0-alpha.1 #1868

Closed
wants to merge 1 commit into from

Conversation

mattyclarkson
Copy link
Contributor

@mattyclarkson mattyclarkson commented Apr 23, 2024

Provides hermetic git rules to fetch git repositories.

Only .git objects are retrieved at bazel fetch time. All other git operations happen at execution time.

This is the first alpha. We want to get git archive support in-place before beta and battle test the bazel-git implementation with many more test cases before stable. We would also like to get git bundle working to allow upload of already retrieved .git objects so we can then download the .git objects with the Bazel HTTP downloader.

Documentation is here.

@bazel-io
Copy link
Member

Hello @bazelbuild/bcr-maintainers, modules without existing maintainers (rules_git) have been updated in this PR. Please review the changes.

@fmeum fmeum added the presubmit-auto-run Presubmit jobs will be triggered for new changes automatically without reviewer's approval label Apr 23, 2024
@fmeum
Copy link
Contributor

fmeum commented Apr 23, 2024

@mattyclarkson I forgot what the status is, but would you be interested in "upstreaming" your circl changes into the BCR module?

@mattyclarkson
Copy link
Contributor Author

@mattyclarkson I forgot what the status is, but

bazel-contrib/bazel-gazelle#1767 is in 0.36.0
cloudflare/circl#492 is merged but not in a release, I can upstream a new 1.3.7.bcr.1
bazel-contrib/rules_go#3901 is not merged and is needed to make the circl patches work, it missed 0.47.0 unfortunately.

would you be interested in "upstreaming" your circl changes into the BCR module?

Yes, but we're blocked on getting purego understanding into rules_go. If you could help with getting that through and released, I'd be happy to get a module upstreamed.

I'll ask on circl if we can get a release done with the purego patches as well.

@fmeum
Copy link
Contributor

fmeum commented Apr 24, 2024

@mattyclarkson Sorry, I forgot about that PR. I have some other changes planned that would make for a good follow-up minor release.

@mattyclarkson
Copy link
Contributor Author

mattyclarkson commented Apr 24, 2024

No worries, there is a lot going on! Thanks for having another look at it.

I'll be able to tidy up bazel-git MODULE.bazel then.

@mattyclarkson
Copy link
Contributor Author

mattyclarkson commented Apr 24, 2024

I'll need to respin this to a later version. It needs two things:

Once #1873 lands, I'll update this PR.

@mattyclarkson
Copy link
Contributor Author

Needs #1881 rules_diff support.

@mattyclarkson
Copy link
Contributor Author

Currently hitting a IO exception when re-using the declared directory checkout. It may be related to bazelbuild/bazel#22151.

Once that has been investigated and squashed, I can update this with 1.0.0-beta.2 and we can all have hermetic git fetching.

@bazel-io
Copy link
Member

Hello @bazelbuild/bcr-maintainers, modules without existing maintainers (rules_git) have been updated in this PR. Please review the changes.

@mattyclarkson
Copy link
Contributor Author

Have pinned the Bazel version to 7.2.1rc2 to avoid bazelbuild/bazel#22151.

Once 7.2.1 is released, I'll set the minimum version in MODULE.bazel to that in subsequent versions of rules_git.

The module#bazel_compatibility does not support release candidate versions.

Hermetic `git` rules. `.git` object are fetched and all other actions
are performed at execution time.
@mattyclarkson
Copy link
Contributor Author

Closing this. We're churning hard on getting rules_git stable. Releases are available upstream by setting --registry to one of the releases.

@mattyclarkson mattyclarkson deleted the rules_git branch October 15, 2024 23:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
presubmit-auto-run Presubmit jobs will be triggered for new changes automatically without reviewer's approval
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants