Skip to content

Commit 6e9751f

Browse files
authored
Split object_store into separate workspace (#4036)
1 parent 17ef9ad commit 6e9751f

File tree

4 files changed

+14
-23
lines changed

4 files changed

+14
-23
lines changed

Cargo.toml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
# under the License.
1717

1818
[workspace]
19+
1920
members = [
2021
"arrow",
2122
"arrow-arith",
@@ -35,7 +36,6 @@ members = [
3536
"arrow-schema",
3637
"arrow-select",
3738
"arrow-string",
38-
"object_store",
3939
"parquet",
4040
"parquet_derive",
4141
"parquet_derive_test",
@@ -51,10 +51,14 @@ members = [
5151
#
5252
resolver = "2"
5353

54-
# this package is excluded because it requires different compilation flags, thereby significantly changing
55-
# how it is compiled within the workspace, causing the whole workspace to be compiled from scratch
56-
# this way, this is a stand-alone package that compiles independently of the others.
57-
exclude = ["arrow-pyarrow-integration-testing"]
54+
exclude = [
55+
# arrow-pyarrow-integration-testing is excluded because it requires different compilation flags, thereby
56+
# significantly changing how it is compiled within the workspace, causing the whole workspace to be compiled from
57+
# scratch this way, this is a stand-alone package that compiles independently of the others.
58+
"arrow-pyarrow-integration-testing",
59+
# object_store is excluded because it follows a separate release cycle from the other arrow crates
60+
"object_store"
61+
]
5862

5963
[workspace.package]
6064
version = "37.0.0"

dev/release/create-tarball.sh

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -117,14 +117,11 @@ echo "---------------------------------------------------------"
117117

118118
# create <tarball> containing the files in git at $release_hash
119119
# the files in the tarball are prefixed with {tag} (e.g. 4.0.1)
120-
# use --delete to filter out:
121-
# 1. `object_store` files
122-
# 2. Workspace `Cargo.toml` file (which refers to object_store)
120+
# use --delete to filter out `object_store` files
123121
mkdir -p ${distdir}
124122
(cd "${SOURCE_TOP_DIR}" && \
125123
git archive ${release_hash} --prefix ${release}/ \
126124
| $tar --delete ${release}/'object_store' \
127-
| $tar --delete ${release}/'Cargo.toml' \
128125
| gzip > ${tarball})
129126

130127
echo "Running rat license checker on ${tarball}"

dev/release/verify-release-candidate.sh

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -105,26 +105,15 @@ test_source_distribution() {
105105

106106
# raises on any formatting errors
107107
rustup component add rustfmt --toolchain stable
108-
(cd arrow && cargo fmt --check)
109-
(cd arrow-flight && cargo fmt --check)
110-
(cd parquet && cargo fmt --check)
111-
(cd parquet_derive && cargo fmt --check)
108+
cargo fmt --all -- --check
112109

113110
# Clone testing repositories if not cloned already
114111
git clone https://github.com/apache/arrow-testing.git arrow-testing-data
115112
git clone https://github.com/apache/parquet-testing.git parquet-testing-data
116113
export ARROW_TEST_DATA=$PWD/arrow-testing-data/data
117114
export PARQUET_TEST_DATA=$PWD/parquet-testing-data/data
118115

119-
(cd arrow && cargo build && cargo test)
120-
(cd arrow-flight && cargo build && cargo test)
121-
# To avoid https://github.com/apache/arrow-rs/issues/3410,
122-
# remove path reference from parquet:
123-
# object_store = { version = "0.5", path = "../object_store", default-features = false, optional = true }
124-
# object_store = { version = "0.5", default-features = false, optional = true }
125-
sed -i -e 's/\(^object_store.*\)\(path = ".*", \)/\1/g' parquet/Cargo.toml
126-
(cd parquet && cargo build && cargo test)
127-
(cd parquet_derive && cargo build && cargo test)
116+
cargo test --all
128117

129118
# verify that the leaf crates can be published to crates.io
130119
# we can't verify crates that depend on others

parquet/Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ arrow-data = { workspace = true, optional = true }
4343
arrow-schema = { workspace = true, optional = true }
4444
arrow-select = { workspace = true, optional = true }
4545
arrow-ipc = { workspace = true, optional = true }
46-
object_store = { version = "0.5", path = "../object_store", default-features = false, optional = true }
46+
# Intentionally not a path dependency as object_store is released separately
47+
object_store = { version = "0.5", default-features = false, optional = true }
4748

4849
bytes = { version = "1.1", default-features = false, features = ["std"] }
4950
thrift = { version = "0.17", default-features = false }

0 commit comments

Comments
 (0)