Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
05c1f5d
Streaming list results (#35)
kylebarron Oct 23, 2024
ba3e83c
Update package description (#36)
kylebarron Oct 23, 2024
f5a5c29
Optionally return list result as arrow (#38)
kylebarron Oct 23, 2024
b581ce4
Return buffer protocol object from `get_range` and `get_ranges` (#39)
kylebarron Oct 23, 2024
6b6f666
Support range in GetOptions (#40)
kylebarron Oct 23, 2024
1d403ea
Rename package to object-store-py (#41)
kylebarron Oct 23, 2024
70a0de9
Fix typing and docs website (#42)
kylebarron Oct 24, 2024
5f50fda
Rename to obstore (#45)
kylebarron Oct 24, 2024
f3644a6
Update docs website CSS (#46)
kylebarron Oct 24, 2024
ae2de0e
Add custom exceptions (#48)
kylebarron Oct 25, 2024
6e6dc10
Add put options (#50)
kylebarron Oct 25, 2024
245bf50
remove `range` from `GetOptions` for now (#51)
kylebarron Oct 25, 2024
ff99c42
bump to 0.2.0-beta.1 (#52)
kylebarron Oct 25, 2024
cd50634
Fix python package name (#53)
kylebarron Oct 25, 2024
eba5019
Bump to 0.2 (#56)
kylebarron Oct 25, 2024
c318a53
boto3 region name can be None (#59)
kylebarron Oct 29, 2024
bf4f5e0
Add test fixtures
martindurant Oct 30, 2024
fdd2a79
Merge branch 'kyle/fsspec-integration' of https://github.com/developm…
martindurant Oct 30, 2024
9779d3b
Add __repr__ to store classes (#61)
kylebarron Oct 30, 2024
e1ed765
Use `moto` for S3 tests (#62)
kylebarron Oct 30, 2024
6495836
Merge branch 'main' into kyle/fsspec-integration
martindurant Oct 31, 2024
68a2d1f
Simple file override
martindurant Oct 31, 2024
ec9c559
silghtly more
martindurant Oct 31, 2024
956b1c0
lint
martindurant Oct 31, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:

- name: Build python packages
run: |
uv run maturin develop -m object-store-rs/Cargo.toml
uv run maturin develop -m obstore/Cargo.toml

- name: Deploy docs
env:
Expand Down
15 changes: 6 additions & 9 deletions .github/workflows/test-python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
strategy:
fail-fast: true
matrix:
python-version: ["3.9", "3.12"]
python-version: ["3.11", "3.12"]
steps:
- uses: actions/checkout@v4

Expand All @@ -47,21 +47,18 @@ jobs:

- uses: Swatinem/rust-cache@v2

- name: Set up Python
id: setup-python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install a specific version of uv
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
enable-cache: true
version: "0.4.x"

- name: Set up Python
run: uv python install ${{ matrix.python-version }}

- name: Build rust submodules
run: |
uv run maturin develop -m object-store-rs/Cargo.toml
uv run maturin develop -m obstore/Cargo.toml

- name: Run python tests
run: |
Expand Down
26 changes: 13 additions & 13 deletions .github/workflows/wheels.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# This file is (mostly) autogenerated by maturin v1.7.1
# To update, run
#
# maturin generate-ci github -m object-store-rs/Cargo.toml
# maturin generate-ci github -m obstore/Cargo.toml
#
name: Build wheels

Expand Down Expand Up @@ -46,13 +46,13 @@ jobs:
uses: PyO3/maturin-action@v1
with:
target: ${{ matrix.platform.target }}
args: --release --out dist --find-interpreter --manifest-path object-store-rs/Cargo.toml
args: --release --out dist --find-interpreter --manifest-path obstore/Cargo.toml
sccache: "true"
manylinux: auto
- name: Upload wheels
uses: actions/upload-artifact@v4
with:
name: wheels-linux-${{ matrix.platform.target }}-object-store-rs
name: wheels-linux-${{ matrix.platform.target }}-obstore
path: dist

musllinux:
Expand All @@ -77,13 +77,13 @@ jobs:
uses: PyO3/maturin-action@v1
with:
target: ${{ matrix.platform.target }}
args: --release --out dist --find-interpreter --manifest-path object-store-rs/Cargo.toml
args: --release --out dist --find-interpreter --manifest-path obstore/Cargo.toml
sccache: "true"
manylinux: musllinux_1_2
- name: Upload wheels
uses: actions/upload-artifact@v4
with:
name: wheels-musllinux-${{ matrix.platform.target }}-object-store-rs
name: wheels-musllinux-${{ matrix.platform.target }}-obstore
path: dist

windows:
Expand All @@ -103,12 +103,12 @@ jobs:
uses: PyO3/maturin-action@v1
with:
target: ${{ matrix.platform.target }}
args: --release --out dist --find-interpreter --manifest-path object-store-rs/Cargo.toml
args: --release --out dist --find-interpreter --manifest-path obstore/Cargo.toml
sccache: "true"
- name: Upload wheels
uses: actions/upload-artifact@v4
with:
name: wheels-windows-${{ matrix.platform.target }}-object-store-rs
name: wheels-windows-${{ matrix.platform.target }}-obstore
path: dist

macos:
Expand All @@ -129,12 +129,12 @@ jobs:
uses: PyO3/maturin-action@v1
with:
target: ${{ matrix.platform.target }}
args: --release --out dist --find-interpreter --manifest-path object-store-rs/Cargo.toml
args: --release --out dist --find-interpreter --manifest-path obstore/Cargo.toml
sccache: "true"
- name: Upload wheels
uses: actions/upload-artifact@v4
with:
name: wheels-macos-${{ matrix.platform.target }}-object-store-rs
name: wheels-macos-${{ matrix.platform.target }}-obstore
path: dist

# sdist:
Expand All @@ -147,19 +147,19 @@ jobs:
# uses: PyO3/maturin-action@v1
# with:
# command: sdist
# args: --out dist --manifest-path object-store-rs/Cargo.toml
# args: --out dist --manifest-path obstore/Cargo.toml
# - name: Upload sdist
# uses: actions/upload-artifact@v4
# with:
# name: wheels-sdist-object-store-rs
# name: wheels-sdist-obstore
# path: dist

release:
runs-on: ubuntu-latest
name: Release
# environment:
# name: release
# url: https://pypi.org/p/object-store-rs
# url: https://pypi.org/p/obstore
# permissions:
# # IMPORTANT: this permission is mandatory for trusted publishing
# id-token: write
Expand All @@ -168,7 +168,7 @@ jobs:
steps:
- uses: actions/download-artifact@v4
with:
pattern: wheels-*-object-store-rs
pattern: wheels-*-obstore
merge-multiple: true
path: dist
- uses: actions/setup-python@v4
Expand Down
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# Changelog

## [0.2.0] - 2024-10-25

## What's Changed

- Streaming list results. `list` now returns an async or sync generator. by @kylebarron in https://github.com/developmentseed/obstore/pull/35
- Optionally return list result as arrow. The `return_arrow` keyword argument returns chunks from `list` as Arrow RecordBatches, which is faster than materializing Python dicts/lists. by @kylebarron in https://github.com/developmentseed/obstore/pull/38
- Return buffer protocol object from `get_range` and `get_ranges`. Enables zero-copy data exchange from Rust into Python. by @kylebarron in https://github.com/developmentseed/obstore/pull/39
- Add put options. Enables custom tags and attributes, as well as "put if not exists". by @kylebarron in https://github.com/developmentseed/obstore/pull/50
- Rename to obstore by @kylebarron in https://github.com/developmentseed/obstore/pull/45
- Add custom exceptions. by @kylebarron in https://github.com/developmentseed/obstore/pull/48

**Full Changelog**: https://github.com/developmentseed/obstore/compare/py-v0.1.0...py-v0.2.0

## [0.1.0] - 2024-10-21

- Initial release.
Loading
Loading