From 3528ba545fb346aa27e96ae5c32cdabb00b5a636 Mon Sep 17 00:00:00 2001 From: Marko Topolnik Date: Fri, 26 Apr 2024 12:38:16 +0200 Subject: [PATCH 1/2] Add RELEASING.md Also a small fix in crate documentation: a paragraph was in the wrong place. --- doc/RELEASING.md | 89 +++++++++++++++++++++++++++++++++++ questdb-rs/src/ingress/mod.md | 42 ++++++++--------- 2 files changed, 110 insertions(+), 21 deletions(-) create mode 100644 doc/RELEASING.md diff --git a/doc/RELEASING.md b/doc/RELEASING.md new file mode 100644 index 00000000..af017776 --- /dev/null +++ b/doc/RELEASING.md @@ -0,0 +1,89 @@ +# How to publish a new release of the Rust ILP Client library + +## 1. Ensure you're fully in sync with the remote repo + +```bash +git switch main +git pull +git status +``` + +## 2. Create the release branch + +```bash +git switch -c vX.Y.Z +``` + +## 3. Update all the occurrences of the version in the repo + +```bash +bump2version --config-file .bumpversion.cfg +``` + +The `increment` parameter can be: + +- `patch` +- `minor` +- `major` + +Use the one appropriate to the version increment you're releasing. + +## 4. Refresh `Cargo.lock` + +```bash +cd questdb-rs-ffi +cargo clean +cargo build +``` + +## 5. Merge the release branch to master + +```bash +git commit -m "Bump version: " +``` + +Replace the `` and `` placeholders! + +Create and merge a PR with the same name: "Bump version: \ → \" + +## 6. Tag the new version + +Once the PR is merged, pull main and add the version tag: + +```bash +git switch main +git pull --prune +git tag X.Y.Z +git push --tags +``` + +## 7. Create a new release on GitHub + +[GitHub Release Page](https://github.com/questdb/c-questdb-client/releases) + +On that page you'll see all the previous releases. Follow their manually-written +style, and note that the style differs between patch, minor, and major releases. + +## 8. Publish the Rust crate to crates.io + +Ensure once more you're fully in sync with the remote repo: + +```bash +git switch main +git pull +git status +``` + +Publish the crate: + +```bash +cd questdb-rs +cargo publish --dry-run --token [your API token from crates.io] +cargo publish --token [your API token from crates.io] +``` + +## 9. Ensure the docs are online on docs.rs + +The release is immediately visible on crates.io, but there's a delay until it +becomes available on [https://docs.rs/](docs.rs). Watch that site and ensure it +appears there. diff --git a/questdb-rs/src/ingress/mod.md b/questdb-rs/src/ingress/mod.md index c2874412..d418d14e 100644 --- a/questdb-rs/src/ingress/mod.md +++ b/questdb-rs/src/ingress/mod.md @@ -65,27 +65,6 @@ QuestDB instances), call The two supported transport modes, HTTP and TCP, handle errors very differently. In a nutshell, HTTP is much better at error handling. -# Health Check - -The QuestDB server has a "ping" endpoint you can access to see if it's alive, -and confirm the version of InfluxDB Line Protocol with which you are -interacting: - -```shell -curl -I http://localhost:9000/ping -``` - -Example of the expected response: - -```shell -HTTP/1.1 204 OK -Server: questDB/1.0 -Date: Fri, 2 Feb 2024 17:09:38 GMT -Transfer-Encoding: chunked -Content-Type: text/plain; charset=utf-8 -X-Influxdb-Version: v2.7.4 -``` - ## TCP TCP doesn't report errors at all to the sender; instead, the server quietly @@ -110,6 +89,27 @@ message. After the sender has signalled an error, it remains usable. You can handle the error as appropriate and continue using it. +# Health Check + +The QuestDB server has a "ping" endpoint you can access to see if it's alive, +and confirm the version of InfluxDB Line Protocol with which you are +interacting: + +```shell +curl -I http://localhost:9000/ping +``` + +Example of the expected response: + +```shell +HTTP/1.1 204 OK +Server: questDB/1.0 +Date: Fri, 2 Feb 2024 17:09:38 GMT +Transfer-Encoding: chunked +Content-Type: text/plain; charset=utf-8 +X-Influxdb-Version: v2.7.4 +``` + # Configuration Parameters In the examples below, we'll use configuration strings. We also provide the From e97586e72c440865df0a1e13057613f925c60b0d Mon Sep 17 00:00:00 2001 From: Marko Topolnik Date: Fri, 26 Apr 2024 15:26:55 +0200 Subject: [PATCH 2/2] Address review --- doc/RELEASING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/RELEASING.md b/doc/RELEASING.md index af017776..42d7b7f5 100644 --- a/doc/RELEASING.md +++ b/doc/RELEASING.md @@ -1,4 +1,4 @@ -# How to publish a new release of the Rust ILP Client library +# How to publish a new release ## 1. Ensure you're fully in sync with the remote repo