-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into zarr-prop-tests
* main: (167 commits) Bump actions/checkout from 2 to 4 in the actions group (#305) update zarr pin to v3.0.0b1 (#302) Fix non-conformant "attributes" metadata (#303) Implement branch reset functionality (#301) README minor tune up: syntax and other very minor typos etc (#300) remove awaits in icechunk notebook (#298) Add missing permission to release action (#295) Minor changes to virtual docs (#293) Add changelogs (#291) Install cargo release (#290) Update python ci (#289) GHA workflow to release Rust (#288) Release 0.1.0-alpha.3 to the Rust world (#287) `ByteRange` can do last n bytes now (#285) Introduce `Store::list_dir_items` (#286) [Docs] Improve virtual ref docs (#284) [Docs] correct output dimensions in xr example (#283) [Docs] add note for requirements of tutorial data download (#282) [Docs] correct module calls to match imports (#281) fix(docs): Docs postlaunch fixes (#278) ...
- Loading branch information
Showing
144 changed files
with
19,070 additions
and
4,659 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
[codespell] | ||
# Ref: https://github.com/codespell-project/codespell#using-a-config-file | ||
skip = .git*,*.svg,*.lock,*.css,.codespellrc | ||
check-hidden = true | ||
ignore-regex = ^\s*"image/\S+": ".*|\bND\b | ||
ignore-words-list = crate |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
*.ipynb linguist-detectable=false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,3 +18,7 @@ updates: | |
day: "monday" | ||
time: "05:00" | ||
timezone: "US/Pacific" | ||
groups: | ||
actions: | ||
patterns: | ||
- "*" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# Codespell configuration is within .codespellrc | ||
--- | ||
name: Codespell | ||
|
||
on: | ||
push: | ||
branches: [main] | ||
pull_request: | ||
branches: [main] | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
codespell: | ||
name: Check for spelling errors | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Annotate locations with typos | ||
uses: codespell-project/codespell-problem-matcher@v1 | ||
- name: Codespell | ||
uses: codespell-project/actions-codespell@v2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
name: deploy-docs | ||
on: | ||
workflow_dispatch: | ||
push: | ||
branches: | ||
- main | ||
permissions: | ||
contents: write | ||
jobs: | ||
deploy: | ||
defaults: | ||
run: | ||
working-directory: ./docs | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Configure Git Credentials | ||
run: | | ||
git config user.name github-actions[bot] | ||
git config user.email 41898282+github-actions[bot]@users.noreply.github.com | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: 3.x | ||
|
||
- name: Load cached Poetry installation | ||
id: cached-poetry | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~/.local # the path depends on the OS | ||
key: poetry-0 # increment to reset cache | ||
|
||
- name: Install Poetry | ||
if: steps.cached-poetry.outputs.cache-hit != 'true' | ||
uses: snok/install-poetry@v1 | ||
with: | ||
virtualenvs-create: true | ||
virtualenvs-in-project: true | ||
virtualenvs-path: .venv | ||
installer-parallel: true | ||
|
||
- name: Load cached venv | ||
id: cached-poetry-dependencies | ||
uses: actions/cache@v4 | ||
with: | ||
path: .venv | ||
key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }} | ||
|
||
- name: Install dependencies (with cache) | ||
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' | ||
run: poetry install --no-interaction --no-root | ||
|
||
- name: Install project | ||
run: poetry install --no-interaction | ||
|
||
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV | ||
|
||
- name: Setup Cache for MkDocs | ||
uses: actions/cache@v4 | ||
with: | ||
key: mkdocs-material-${{ env.cache_id }} | ||
path: .cache | ||
restore-keys: | | ||
mkdocs-material- | ||
- name: Deploy to gh-pages | ||
run: poetry run mkdocs gh-deploy --force |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
name: publish rust library | ||
|
||
env: | ||
CARGO_INCREMENTAL: 0 | ||
CARGO_NET_RETRY: 10 | ||
CI: 1 | ||
RUST_BACKTRACE: short | ||
RUSTFLAGS: "-D warnings -W unreachable-pub -W bare-trait-objects" | ||
RUSTUP_MAX_RETRIES: 10 | ||
RUST_CHANNEL: 'stable' | ||
|
||
on: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
publish: | ||
name: Check and publish | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Stand up MinIO | ||
run: | | ||
docker compose up -d minio | ||
- name: Wait for MinIO to be ready | ||
run: | | ||
for i in {1..10}; do | ||
if curl --silent --fail http://minio:9000/minio/health/live; then | ||
break | ||
fi | ||
sleep 3 | ||
done | ||
docker compose exec -T minio mc alias set minio http://minio:9000 minio123 minio123 | ||
- name: Install Just | ||
run: sudo snap install --edge --classic just | ||
|
||
- name: Install Rust toolchain | ||
run: | | ||
rustup update --no-self-update ${{ env.RUST_CHANNEL }} | ||
rustup component add --toolchain ${{ env.RUST_CHANNEL }} rustfmt rust-src clippy | ||
rustup default ${{ env.RUST_CHANNEL }} | ||
- name: Cache Dependencies | ||
uses: Swatinem/rust-cache@v2 | ||
with: | ||
# workspaces: "rust -> target" | ||
key: ${{ env.RUST_CHANNEL }} | ||
|
||
- name: Install cargo-deny | ||
run: cargo install --locked cargo-deny | ||
|
||
- name: Check | ||
if: matrix.os == 'ubuntu-latest' || github.event_name == 'push' | ||
run: | | ||
just pre-commit | ||
- name: Install cargo-release | ||
run: cargo install --locked cargo-release | ||
|
||
- name: publish to crates | ||
run: cargo release --tag-prefix icechunk-rust --execute | ||
env: | ||
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
name: Python Check | ||
|
||
on: | ||
push: | ||
branches: | ||
- main | ||
pull_request: | ||
paths: | ||
- 'icechunk/**' | ||
- 'icechunk-python/**' | ||
- '.github/workflows/python-check.yaml' | ||
workflow_dispatch: | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
|
||
permissions: | ||
contents: read | ||
|
||
defaults: | ||
run: | ||
working-directory: ./icechunk-python | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Stand up MinIO | ||
run: | | ||
docker compose up -d minio | ||
- name: Wait for MinIO to be ready | ||
run: | | ||
for _ in {1..10}; do | ||
if curl --silent --fail http://minio:9000/minio/health/live; then | ||
break | ||
fi | ||
sleep 3 | ||
done | ||
docker compose exec -T minio mc alias set minio http://minio:9000 minio123 minio123 | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: '3.11' | ||
- name: Build wheels | ||
uses: PyO3/maturin-action@v1 | ||
with: | ||
working-directory: icechunk-python | ||
target: ${{ matrix.platform.target }} | ||
args: --release --out dist --find-interpreter | ||
sccache: 'true' | ||
manylinux: ${{ matrix.platform.manylinux }} # https://github.com/PyO3/maturin-action/issues/245 | ||
- name: mypy | ||
shell: bash | ||
working-directory: icechunk-python | ||
run: | | ||
set -e | ||
python3 -m venv .venv | ||
source .venv/bin/activate | ||
pip install icechunk['test'] --find-links dist --force-reinstall | ||
mypy python | ||
- name: ruff | ||
shell: bash | ||
working-directory: icechunk-python | ||
run: | | ||
set -e | ||
python3 -m venv .venv | ||
source .venv/bin/activate | ||
pip install icechunk['test'] --find-links dist --force-reinstall | ||
ruff check | ||
- name: Restore cached hypothesis directory | ||
id: restore-hypothesis-cache | ||
uses: actions/cache/restore@v4 | ||
with: | ||
path: icechunk-python/.hypothesis/ | ||
key: cache-hypothesis-${{ runner.os }}-${{ github.run_id }} | ||
restore-keys: | | ||
cache-hypothesis- | ||
- name: pytest | ||
shell: bash | ||
working-directory: icechunk-python | ||
run: | | ||
set -e | ||
python3 -m venv .venv | ||
source .venv/bin/activate | ||
pip install icechunk['test'] --find-links dist --force-reinstall | ||
pytest | ||
# explicitly save the cache so it gets updated, also do this even if it fails. | ||
- name: Save cached hypothesis directory | ||
id: save-hypothesis-cache | ||
if: always() | ||
uses: actions/cache/save@v4 | ||
with: | ||
path: icechunk-python/.hypothesis/ | ||
key: cache-hypothesis-${{ runner.os }}-${{ github.run_id }} |
Oops, something went wrong.