bazelbuild / rules_cc

C++ Rules for Bazel
https://bazel.build
Apache License 2.0
182 stars 90 forks source link

There should be periodic named releases. #91

Closed aiuto closed 2 years ago

aiuto commented 3 years ago

If there is no guidance about what commits are considered "good" (for various values of good), people will just use head. If people do that, debugging version skew problems is infeasible.

olekw commented 3 years ago

I'll also need an actual release to package properly for Debian. Is that feasible in the near-term? cc:@meteorcloudy

meteorcloudy commented 3 years ago

/cc @oquenchil Can we make a release for rules_cc?

aiuto commented 3 years ago

FWIW: After https://github.com/bazelbuild/bazel/pull/12743 is merged, you should be able to update bazel to the new rules_cc with a 3 line change, single file change.

meteorcloudy commented 3 years ago

@aiuto That's not what we are looking for. We want to package rules_cc into Debian, so that Bazel doesn't have to download it from internet at all. To do that, we need a release for this project.

aiuto commented 3 years ago

@oquenchil @philwo

Ah.... I see a terminology difference. When we (Bazel) says release, we mean a versioned distribution archive that could be hosted on github. To you, that means a .deb package.

My concern was only about getting named versions to replace github hashes. Getting from that to a .deb file in the right place will require answering some questions. Between us, I think we can come up with the answers. What we do for this will set a pattern/expectation for other rule sets to follow, so @philwo may want to chime in.

Questions and thoughts:

meteorcloudy commented 3 years ago

Ah.... I see a terminology difference. When we (Bazel) says release, we mean a versioned distribution archive that could be hosted on github. To you, that means a .deb package.

No, what we want are the same, we also just need a versioned distribution archive, which is not available right now. @olekw will kindly help us create the deb package and get it into the Debian distribution.

The deb package will essentially only contains Bazel files. It would great if we can exclude unnecessary file in the release archive.

oquenchil commented 3 years ago

I will create the release for rules_cc on GitHub, I was a bit hesitant because we deem rules_cc a mistake and we shouldn't have created it before finishing starlarkifying the rules. We don't plan on deleting the repository now because that would be a lot of hard work but we hope to spend as little time on the repo as possible in the short term.

I will document that the release is not part of an official process, there is no guaranteed release cycle and it just exists to support Debian packaging. I will name the first release 0.1.

olekw commented 3 years ago

@oquenchil That would be great! Any progress on that?

olekw commented 3 years ago

To clarify, we don't need a "binary" release to package this in Debian. We just need a source release since we build everything from source anyway. So just a "0.1.0" release tag would suffice for our purposes.

olekw commented 3 years ago

On a loosely-related question, what's the long-term plan, @oquenchil? Are you planning to refactor the code for rules_cc or just integrate that functionality directly into core Bazel?

catleeball commented 3 years ago

I was a bit hesitant because we deem rules_cc a mistake and we shouldn't have created it before finishing starlarkifying the rules.

Do you know when the new starlark rules will be released? And will they replace the contents of this repository, or be uploaded elsewhere?

meteorcloudy commented 2 years ago

@oquenchil This is also blocking https://github.com/bazelbuild/bazel-central-registry/issues/7

philwo commented 2 years ago

I'd recommend to just start doing releases here as @oquenchil said with 0.x - this tells the user that there's no promise of any compatibility between the versions.

oquenchil commented 2 years ago

I will take care of it next week.

limdor commented 2 years ago

@philwo could it be possible to have https://github.com/bazelbuild/rules_cc/releases/download/0.0.1/rules_cc-0.0.1.tar.gz also in the bazel mirror? Thanks

philwo commented 2 years ago

@limdor Uploaded!

meteorcloudy commented 2 years ago

Looks like this issue can be closed, thanks for the effort!