tikv / pprof-rs

A Rust CPU profiler implemented with the help of backtrace-rs
Apache License 2.0
1.3k stars 99 forks source link

Please also create git tags while releasing new crate versions #139

Closed Xuanwo closed 2 years ago

Xuanwo commented 2 years ago

So that users know which commits we are on.

YangKeao commented 2 years ago

The only maintainer of this project @YangKeao cannot push directly (so he cannot push tags). He rarely contributes to the tikv/tikv directly, and doesn't pay a lot attention to the community of tikv, so he doesn't know when/how/why it happened :confused: . He has tagged some commits a long time ago, but after some point in time, he cannot do it anymore.

Maybe when he is not that tired, he'd like to contact someone who knows the community rule of the tikv to help him solve the problem.

Xuanwo commented 2 years ago

Maybe when he is not that tired, he'd like to contact someone who knows the community rule of the tikv to help him solve the problem.

Based on my knowledge, only tikv committers can push tags directly.

Possible solutions include as follows:

Also, ping @tisonkun for more advice about the current situation.


Databend depends heavily on pprof-rs and I'm interested in maintaining pprof-rs, we can help maintain this project.

Xuanwo commented 2 years ago

I will raise this issue to tikv/community to get more ideas.

Xuanwo commented 2 years ago

Ping all maintainers of tikv for comments:

tisonkun commented 2 years ago

@YangKeao you have Maintain access to this repository already.

YangKeao commented 2 years ago

@YangKeao you have Maintain access to this repository already.

Sorry for the misleading. As I just tried, I can push a tag (v0.9.1), but cannot push to master directly, is it expected?

To https://github.com/tikv/pprof-rs.git
 * [new tag]         v0.5.1 -> v0.5.1
 * [new tag]         v0.9.1 -> v0.9.1
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://github.com/tikv/pprof-rs.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

I think it's fine to push the tags :laughing: . I'll tag some old releases to fix this problem.

Then the release process would be: @YangKeao submits a PR to upgrade the version, after it's merged, he will tag the commit and push the tag.

Xuanwo commented 2 years ago

As I just tried, I can push a tag (v0.9.1), but cannot push to master directly, is it expected?

I think it's expected. the master branch is protected and doesn't allow pushing directly.

Then the release process would be: @YangKeao submits a PR to upgrade the version, after it's merged, he will tag the commit and push the tag.

Looks good to me!

skyzh commented 2 years ago

Maybe we can integrate with a GitHub Action to automatically create release (and possibly upload to crates.io?)

Some examples: https://github.com/risinglightdb/sqllogictest-rs/blob/main/.github/workflows/release.yml

YangKeao commented 2 years ago

Maybe we can integrate with a GitHub Action to automatically create release (and possibly upload to crates.io?)

Some examples: https://github.com/risinglightdb/sqllogictest-rs/blob/main/.github/workflows/release.yml

Automatically publishing on crates.io is pretty cool, maybe I could add a bot as the owner of this crate, and publish the crate through bot's token :thinking: .

Xuanwo commented 2 years ago

Closing for addressed, thanks @YangKeao again!

And also thanks advice from @tisonkun @skyzh.