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

object_store: Add enabled-by-default "fs" feature #6636

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

Turbo87
Copy link
Contributor

@Turbo87 Turbo87 commented Oct 28, 2024

Which issue does this PR close?

Closes #6055.

Rationale for this change

see #6055 😉

What changes are included in this PR?

This PR introduces a new fs feature for the object_store crate, which is enabled by default. If disabled, the local module is excluded from the crate and the walkdir dependency is skipped.

Are there any user-facing changes?

Only for users of default-features = false, but since this crate did not have any default features before there probably won't be many object_store users that specify default-features = false.

@github-actions github-actions bot added the object-store Object Store Interface label Oct 28, 2024
@Turbo87
Copy link
Contributor Author

Turbo87 commented Oct 29, 2024

/cc @tustvold

@tustvold tustvold added api-change Changes to the arrow API next-major-release the PR has API changes and it waiting on the next major version labels Oct 30, 2024
@tustvold
Copy link
Contributor

tustvold commented Oct 30, 2024

I had a quick look and this looks plausible, however, it is a breaking change and will therefore need to wait for the next major release

@Turbo87 Turbo87 force-pushed the object_store/optional-fs branch from 799e4cf to 77c3931 Compare November 3, 2024 20:39
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 @Turbo87

Could you also please add a test for clippy here:

- name: Run clippy with default features

Specifically these two combinations?

  1. --no-deafult-features
  2. --no-default-features --features fs ?

@Turbo87 Turbo87 force-pushed the object_store/optional-fs branch from 77c3931 to 5efbd80 Compare November 11, 2024 09:21
@Turbo87 Turbo87 force-pushed the object_store/optional-fs branch from 5efbd80 to 0e496ac Compare November 26, 2024 12:19
@@ -70,6 +70,10 @@
//!
//! Feature flags are used to enable support for other implementations:
//!
#![cfg_attr(
Copy link
Contributor

Choose a reason for hiding this comment

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

"local filesystem" should be removed from the list in the previous paragraph (GitHub doesn't let me add a comment there, but this one here:

//! * Local filesystem: [`LocalFileSystem`](local::LocalFileSystem)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

good catch. fixed! :)

Copy link
Contributor

@crepererum crepererum left a comment

Choose a reason for hiding this comment

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

Looks good. Please delay the merge until 0.12 though (see #6596).

@alamb
Copy link
Contributor

alamb commented Dec 19, 2024

Looks good. Please delay the merge until 0.12 though (see #6596).

I hope to be able to merge early next week

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api-change Changes to the arrow API next-major-release the PR has API changes and it waiting on the next major version object-store Object Store Interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Make LocalFileSystem an Optional Feature
4 participants