Skip to content

Commit 729c4a0

Browse files
Merge pull request #39 from chdb-io/docs/engine-pin-names-chdb-core-not-clickhouse
Say the engine pin names a chdb-core release, not a ClickHouse one
2 parents ed7f10e + 50ef9f7 commit 729c4a0

3 files changed

Lines changed: 20 additions & 12 deletions

File tree

.github/scripts/check-engine-pin.sh

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,15 @@
1010
# The first two disagreeing means the engine a build links against is not the one
1111
# the script put there, which surfaces as missing symbols or as behaviour that
1212
# does not match the version anyone thinks they are running. The third disagreeing
13-
# is quieter and worse: the crate says it carries one ClickHouse and carries
14-
# another, and a crates.io version cannot be replaced — only yanked — so it says
15-
# the wrong thing permanently.
13+
# is quieter and worse: the crate names one engine and carries another, and a
14+
# crates.io version cannot be replaced — only yanked — so it says the wrong thing
15+
# permanently.
1616
#
17-
# Only vX.Y.Z and vX.Y.Z-rc.N are accepted. Those are the two shapes chdb-core
18-
# tags and the two the other bindings can parse, so a pin outside them is either a
19-
# typo or a tag nothing downstream can consume.
17+
# Only vX.Y.Z and vX.Y.Z-rc.N are accepted, which is chdb-core's tag shape: X.Y is
18+
# the ClickHouse minor line the release sits on and Z is chdb-core's own counter.
19+
# ClickHouse tags its own releases with four fields, so a four-field pin names a
20+
# tag in the wrong repository rather than a newer engine. Anything else is a typo
21+
# or a tag the other bindings cannot parse.
2022

2123
set -euo pipefail
2224

.github/workflows/engine-release-check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ jobs:
177177
echo "$current → \`$ENGINE_VERSION\` in all three places that carry it:"
178178
echo "\`update_libchdb.sh\`, \`build.rs\`, and \`engine\` under"
179179
echo "\`[package.metadata.chdb]\` in \`Cargo.toml\`, which is what tells a user"
180-
echo "of the published crate which ClickHouse is inside it."
180+
echo "of the published crate which engine is inside it."
181181
echo
182182
echo "$RUN_URL"
183183
echo

Cargo.toml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,17 @@ name = "arrow_stream_roundtrip"
5454
required-features = ["arrow"]
5555

5656
[package.metadata.chdb]
57-
# The chdb-core release this crate builds against. The crate version above says
58-
# nothing about it — 1.4.0 is this crate's own numbering — so without this there
59-
# is no way to tell which ClickHouse a published version carries short of reading
60-
# build.rs at the matching tag. Here it travels with the package and can be read
61-
# from `cargo metadata` or the crates.io API.
57+
# The chdb-core release this crate builds against. This is a chdb-core release
58+
# number, not a ClickHouse one: X.Y is the ClickHouse minor line the release sits
59+
# on and Z is chdb-core's own counter, so v26.7.0 carries some ClickHouse 26.7
60+
# rather than a ClickHouse 26.7.0. The chdb-core release notes for the tag name
61+
# the exact upstream build.
62+
#
63+
# The crate version above is unrelated — 1.4.0 is this crate's own numbering — so
64+
# without this key there is no way to tell which engine a published version
65+
# carries short of reading build.rs at the matching tag. Here it travels with the
66+
# package, readable through `cargo metadata`, the .crate archive or the docs.rs
67+
# source view; the crates.io API does not expose it.
6268
#
6369
# .github/scripts/check-engine-pin.sh keeps it in step with build.rs and
6470
# update_libchdb.sh, which are what actually fetch the engine.

0 commit comments

Comments
 (0)