Skip to content
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

Split object_store into separate workspace #4036

Merged
merged 1 commit into from
Apr 7, 2023

Conversation

tustvold
Copy link
Contributor

@tustvold tustvold commented Apr 7, 2023

Which issue does this PR close?

Relates to #4030
Closes #3414

Rationale for this change

object_store follows a separate release cycle and is distributed independently, having it in the same workspace creates friction and requires workarounds that then cause their own issues. Simpler to just keep it separate.

What changes are included in this PR?

Splits object_store into its own workspace

Are there any user-facing changes?

@github-actions github-actions bot added the parquet Changes to the parquet crate label Apr 7, 2023
sed -i -e 's/\(^object_store.*\)\(path = ".*", \)/\1/g' parquet/Cargo.toml
(cd parquet && cargo build && cargo test)
(cd parquet_derive && cargo build && cargo test)
cargo test --all
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As an added bonus this is a more thorough verification, as it will run the tests for the child crates

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do wonder if we should be passing more features to this, but this is strictly better than it was before

mkdir -p ${distdir}
(cd "${SOURCE_TOP_DIR}" && \
git archive ${release_hash} --prefix ${release}/ \
| $tar --delete ${release}/'object_store' \
| $tar --delete ${release}/'Cargo.toml' \
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Following #3936 this causes issues, as it removes the workspace from which the properties are derived

@@ -43,7 +43,8 @@ arrow-data = { workspace = true, optional = true }
arrow-schema = { workspace = true, optional = true }
arrow-select = { workspace = true, optional = true }
arrow-ipc = { workspace = true, optional = true }
object_store = { version = "0.5", path = "../object_store", default-features = false, optional = true }
# Intentionally not a path dependency as object_store is released separately
object_store = { version = "0.5", default-features = false, optional = true }
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This fixes #3414

Copy link
Contributor

@alamb alamb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

makes sense to me -- thank you @tustvold

@tustvold tustvold merged commit 6e9751f into apache:master Apr 7, 2023
@tustvold tustvold mentioned this pull request Apr 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
parquet Changes to the parquet crate
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Release tarballs can not be build standalone
2 participants