-
Notifications
You must be signed in to change notification settings - Fork 79
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
[Feature Request] Publish client crate to crates.io #607
Comments
I don't think it should be published from this repo. Properly publishing IMO requires proper tagging which IMO we shouldn't make I would totally support a |
This also means that no crates which use these SDKs can be published to crates.io, because crates.io forbids publishing crates which have Git dependencies. This makes it very difficult to share work which builds on these APIs. |
This is an intentional side effect because the APIs in this crate have no stability guarantees and therefore should not be depended upon by published crates to be downloaded transitively. The code in this repo is meant to be "vendored"/embedded in other Rust crates not depended upon in Cargo.toml by version. We do hope to have a Rust SDK in the future that will be stable and versioned. |
There is a viable solution to this, you set the version to |
If you want an example of how to do release automation for Rust, my colleague has written one here and it could be adapted: https://github.com/MercuryTechnologies/ghciwatch/blob/main/.github/workflows/release.yaml It automates the process of making a release when a PR is submitted such that you just have to label the PR and it will bump the version as appropriate. |
The concern is not whether we can publish the crate (we definitely can), it's the implication of having a published crate for this repo which tacitly encourages people to depend on it in their I would encourage https://github.com/MercuryTechnologies/hs-temporal-sdk and similar repos to use this repo as a git submodule or similar (this is what we do in other SDKs using this repo). |
It would be good to have option of installing a Vendoring/Embeddings very non-standard for Rust as far as I've seen, and pre-v1 crates are more commonly the norm. |
Regardless of the whether or not we're moving forward with a full Rust SDK, we should publish the client crate at some point so that's more easily consumable.
The text was updated successfully, but these errors were encountered: