Skip to content

Import object_store, with history, from arrow-rs #3

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

Merged
merged 398 commits into from
Mar 20, 2025

Conversation

alamb
Copy link
Contributor

@alamb alamb commented Mar 20, 2025

Moves the contents of object_store from https://github.com/apache/arrow-rs to this new repository

I followed these instructions (everything I know I learned from stack overflow)
https://stackoverflow.com/questions/41811986/git-move-directory-to-another-repository-while-keeping-the-history

in arrow-rs:

git subtree split -P object_store/ -b alamb/object_store_move
git push alamb alamb/object_store_move  # push to my own fork

then in arrow-rs-object-store:

cd arrow-rs-object-store
git checkout --orphan temp
git pull https://github.com/alamb/arrow-rs alamb/object_store_move
git checkout main
git checkout -b alamb/import
git merge --allow-unrelated-histories temp    # Merge the unrelated commits back
git branch -d <temp> # cleanup

I also made a commit to copy over the .gitignore file

I checked the code out locally and it seems to work. I plan to port the CI as the next PR

andrewlamb@Andrews-MacBook-Pro-2:~/Software/arrow-rs-object-store$ cargo test
....

tustvold and others added 30 commits May 18, 2023 09:51
…IVE_URI is set (#4288)

Co-authored-by: Johann Fuechsl <[email protected]>
* feat: support bulk deletes

* fix: make NotFound reporting consistent

* fix http store

* fix aws support

* remove unnecessary flag

* fix: make AWS S3 compatible

* pr feedback: use simpler API

* pr feedback: test paths and ordering

* Update object_store/src/limit.rs

Co-authored-by: Raphael Taylor-Davies <[email protected]>

* take fallible stream

* final pr feedback

---------

Co-authored-by: Raphael Taylor-Davies <[email protected]>
* refactor: use exactly equal parts in multipart upload

* Improve test

* Apply suggestions from code review

Co-authored-by: Raphael Taylor-Davies <[email protected]>

* Fix lifetime

---------

Co-authored-by: Raphael Taylor-Davies <[email protected]>
* Fix ObjectStore::get_range for GetResult::File (#4350)

* Review feedback
* Prepare object_store 0.6.1

* Final tweaks
GCP tries to authorize when there's the authorization header. If the
bearer is empty, exclude the header since this doesn't let us get a
public object.

Signed-off-by: Vaibhav <[email protected]>
* object_store: Add `Box<dyn ObjectStore>` tests

* object_store: Extract `as_ref_impl!()` macro

* object_store: Implement `ObjectStore` for `Arc`
…fig` (#4516)

* object_store: Export `ClientConfigKey`

* object_store: Add `HttpBuilder::with_config`
* Make object_store::multipart public

* one more public

* docs

* doc

* more docs

* derive debug

* debug
* Cleanup multipart upload trait

* Update object_store/src/multipart.rs

Co-authored-by: Liang-Chi Hsieh <[email protected]>

---------

Co-authored-by: Liang-Chi Hsieh <[email protected]>
* Support copy_if_not_exists for Cloudflare R2 (#4190)

* Add tests
* Check object_store format in CI

* Format
* Add CI job for object_store_docs

* fix job

* fix again

* fix

* Fix doc links

* Add comment about why a different workflow is needed

* Fix AmazonS3 link
* Changes required for onelake-fix

* Fix Unit tests

* Add Unit Tests

* Add onelake read/write test

* Add with_use_fabric , for fabric url check

* Final tweaks

* Further tweaks

* Automatically set use_fabric_endpoint

---------

Co-authored-by: Raphael Taylor-Davies <[email protected]>
* Add range and ObjectMeta to GetResult (#4352) (#4495)

* Review feedback

* Fix docs
* Update itertools and quick-xml

* Add dependabot
* Fix new clippy lints

* More clippy

* Even more clippy

* Clippy
psvri and others added 26 commits January 5, 2025 21:24
* Improve docs for `AmazonS3Builder::from_env`

* wording

* Update object_store/src/aws/builder.rs

---------

Co-authored-by: Andrew Lamb <[email protected]>
* u64 ranges

* more u64

* make clippy happy

* even more u64

* Update object_store/src/lib.rs

Co-authored-by: Andrew Lamb <[email protected]>

* Update object_store/src/lib.rs

Co-authored-by: Andrew Lamb <[email protected]>

* address comments

---------

Co-authored-by: Andrew Lamb <[email protected]>
* Update retry.rs

* Update object_store/src/client/retry.rs

Co-authored-by: Raphael Taylor-Davies <[email protected]>

---------

Co-authored-by: Raphael Taylor-Davies <[email protected]>
* Remove all RCs after release

* Remove reference to old releases script

* Keep running remove-old-artifacts.sh from release-tarball.sh

---------

Co-authored-by: Andrew Lamb <[email protected]>
* Update rand requirement from 0.8 to 0.9

Updates the requirements on [rand](https://github.com/rust-random/rand) to permit the latest version.
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](rust-random/rand@0.8.0...0.9.0)

---
updated-dependencies:
- dependency-name: rand
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* Migrate to 0.9

* Add missing feature, also bump `rand` in `object_store`

* Rustfmt

* Name `UniformUsize` instance  `uusize` instead of `usize`

* Rename another use of `usize`

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add test of out of order UploadPart

* Update object_store/src/integration.rs

---------

Co-authored-by: Andrew Lamb <[email protected]>
…#6751)

* Fix LocalFileSystem with range request that ends beyond end of file

* fix windows

* add comment

* Seek error

* fix seek check

* remove windows flag

* Get file length from file metadata
* Initial change from Daniel.

* Upgrade unit test to be more generic.

* Add comments on why we have filter

* Cleanup unit tests.

* Update object_store/src/local.rs

Co-authored-by: Adam Reeve <[email protected]>

* Add changes suggested by Adam.

* Cleanup match error.

* Apply formatting changes suggested by cargo +stable fmt --all.

* Apply cosmetic changes suggested by clippy.

* Upgrade test_path_with_offset to create temporary directory + files for testing rather than pointing to existing dir.

---------

Co-authored-by: Adam Reeve <[email protected]>
* feat(object_store): random IP address selection

Closes #7117.

* refactor: directly call stdlib w/o hyper-util
* Revert "Update rand requirement from 0.8 to 0.9 (#7045)"

This reverts commit 69eeee336eb216a990ad5eb2b4ded93b547594b1.

* downgrade API
* Create HttpClient

* WIP

* Decouple from reqwest

* Hook up HttpConnector

* WIP

* Update other stores

* Format

* Remove out of date comment

* RAT

* Test fixes

* Lints

* Fix feature flags
* feat: add `Extensions` to object store `GetOptions`

Closes #7155.

* refactor: replace own `Extensions` by `http` version

* feat: wire `Extensions` into HTTP stack
* fix cargo clippy

* add Disabled variant to S3ConditionalPut

* restore object_store.yml
* ObjectStore WASM32 Support

* Docs

* Update .github/workflows/object_store.yml
* Prepare object_store 0.12.0

* Changelog tweaks
* Use `doc_auto_cfg` for docs.rs and add logo and icon

* Rustfmt

---------

Co-authored-by: Andrew Lamb <[email protected]>
@alamb alamb merged commit 6819961 into apache:main Mar 20, 2025
@alamb alamb deleted the alamb/import branch March 20, 2025 18:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.