Showing 2,122 changed files with 87,389 additions and 84,455 deletions.
6 changes: 6 additions & 0 deletions .codespellrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[codespell]
# local codespell matches `./docs`, pre-commit codespell matches `docs`
skip = *.lock,.direnv,.git,./docs/_freeze,./docs/_output/**,./docs/_inv/**,docs/_freeze/**,*.svg,*.css,*.html,*.js,ibis/tests/benchmarks/benchfuncs.py
ignore-regex = \b(i[if]f|I[IF]F|AFE)\b
builtin = clear,rare,names
ignore-words-list = tim
8 changes: 4 additions & 4 deletions .conventionalcommits.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const releaseConfig = require("./.releaserc.js");
function extractConventionalCommitsConfig(config) {
return config.plugins
.filter(
([plugin, _]) => plugin == "@semantic-release/release-notes-generator",
([plugin, _]) => plugin == "@semantic-release/release-notes-generator"
)
.map(([_, config]) => config)[0].presetConfig.types;
}
Expand All @@ -14,7 +14,7 @@ module.exports = {
options: {
preset: {
name: "conventionalcommits",
types: extractConventionalCommitsConfig(releaseConfig),
},
},
types: extractConventionalCommitsConfig(releaseConfig)
}
}
};
4 changes: 4 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
FROM mcr.microsoft.com/vscode/devcontainers/python:3.11

RUN apt-get update && \
apt-get install -y --no-install-recommends libgdal-dev
13 changes: 10 additions & 3 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"image": "mcr.microsoft.com/vscode/devcontainers/python:3.11",
"updateContentCommand": ".devcontainer/updateContent.sh",
"build": { "dockerfile": "Dockerfile" },
"postCreateCommand": ".devcontainer/postCreate.sh",
"customizations": {
"codespaces": {
"openFiles": ["docs/tutorials/getting_started.qmd"]
Expand All @@ -11,7 +11,14 @@
},
"features": {
"ghcr.io/rocker-org/devcontainer-features/quarto-cli:1": {
"version": "1.4.339"
"version": "1.5.13"
},
"ghcr.io/eitsupi/devcontainer-features/duckdb-cli:1": {
"extensions": "httpfs,sqlite,postgres,spatial,substrait,parquet,json,arrow,mysql"
},
"ghcr.io/eitsupi/devcontainer-features/jq-likes:2": {
"jqVersion": "none",
"yqVersion": "latest"
}
}
}
8 changes: 8 additions & 0 deletions .devcontainer/postCreate.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/sh

# install ibis
python3 -m pip install ipython

# avoid using dynamic versioning by grabbing the version from pyproject.toml
POETRY_DYNAMIC_VERSIONING_BYPASS="$(yq '.tool.poetry.version' pyproject.toml)" \
python3 -m pip install -e '.[duckdb,clickhouse,examples,geospatial]'
5 changes: 0 additions & 5 deletions .devcontainer/updateContent.sh

This file was deleted.

1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
FLINK_VERSION=1.19.0
1 change: 0 additions & 1 deletion .envrc
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,3 @@ watch_file poetry-overrides.nix

export CLOUDSDK_ACTIVE_CONFIG_NAME=ibis-gbq
export GOOGLE_CLOUD_PROJECT="$CLOUDSDK_ACTIVE_CONFIG_NAME"
export SQLALCHEMY_WARN_20=1
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Bug Report
description: File a bug report
name: Bug report
description: File a bug report for Ibis.
title: "bug: "
labels: ["bug"]
body:
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/docs-issue.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Documentation Issue
description: Open an issue about the Ibis documentation
name: Documentation issue
description: Open an issue about the Ibis documentation.
title: "docs: "
labels: ["docs"]
body:
Expand Down
14 changes: 11 additions & 3 deletions .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Feature Request
description: Suggest an idea for ibis
name: Feature request
description: Suggest an idea for Ibis.
title: "feat: "
labels: ["feature"]
body:
Expand All @@ -11,7 +11,15 @@ body:
attributes:
label: Is your feature request related to a problem?
description: If so, please describe the problem.
placeholder: "I am frustated by ..."
placeholder: "I am frustrated by ..."
validations:
required: false
- type: textarea
id: motivation
attributes:
label: What is the motivation behind your request?
description: Discuss the use case behind this feature request, and why it is needed.
placeholder: "I'm trying to do ... because I need ..."
validations:
required: false
- type: textarea
Expand Down
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/new-backend.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: New backend request
description: Suggest a new backend for Ibis.
title: "feat: "
labels: ["feature", "new backend"]
body:
- type: markdown
attributes:
value: Thanks for taking the time to fill out a new backend request!
- type: textarea
id: backend
attributes:
label: Which new backend would you like to see in Ibis?
description: Please provide relevant links and disclose your affiliation with the backend.
placeholder: "I would like a new backend for ..."
validations:
required: true
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/ibis-project/ibis/blob/main/CODE_OF_CONDUCT.md)
options:
- label: I agree to follow this project's Code of Conduct
required: true
7 changes: 2 additions & 5 deletions .github/renovate.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
"addLabels": ["bigquery"]
},
{
"matchPackagePatterns": ["duckdb", "duckdb-engine"],
"matchPackagePatterns": ["duckdb"],
"addLabels": ["duckdb"]
},
{
Expand Down Expand Up @@ -83,10 +83,7 @@
"addLabels": ["pyspark"]
},
{
"matchPackagePatterns": [
"snowflake-connector-python",
"snowflake-sqlalchemy"
],
"matchPackagePatterns": ["snowflake-connector-python"],
"addLabels": ["snowflake"]
},
{
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/assign.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@ jobs:
runs-on: ubuntu-latest
if: github.event.comment.body == '/take'
steps:
- uses: pozil/auto-assign-issue@v1.13.0
- uses: pozil/auto-assign-issue@v1.14.0
with:
assignees: ${{ github.event.comment.user.login }}
28 changes: 7 additions & 21 deletions .github/workflows/check-generated-files.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ on:
- poetry.lock
- pyproject.toml
- requirements-dev.txt
merge_group:

concurrency:
group: ${{ github.repository }}-${{ github.head_ref || github.sha }}-${{ github.workflow }}
Expand All @@ -31,17 +30,17 @@ jobs:
- name: checkout
uses: actions/checkout@v4

- name: install poetry
run: pipx install 'poetry==1.7.1'

- name: install python
uses: actions/setup-python@v5
id: install_python
with:
python-version: "3.11"
python-version: "3.12"
cache: pip
cache-dependency-path: requirements-dev.txt

- name: install poetry
run: pip install 'poetry==1.8.2'

- name: update apt-get
run: sudo apt-get update -y -q

Expand All @@ -51,23 +50,8 @@ jobs:
- name: check consistency with pyproject.toml
run: poetry check --lock

- name: check that the `all` extra matches the current lock file
run: |
set -euo pipefail
js="$(mktemp --suffix=.pyproject.json)"
docker run --rm -i sclevine/yj -tj < pyproject.toml > "$js"
old="$(mktemp --suffix=.old)"
jq -rM '.tool.poetry.extras.all | unique | sort' < "$js" > "$old"
new="$(mktemp --suffix=.new)"
jq -rM '.tool.poetry.extras | with_entries(select(.key != "all")) | [.[]] | add | unique | sort' < "$js" > "$new"
diff --unified "$old" "$new"
- name: generate requirements-dev.txt
run: poetry export --extras all --with dev --with test --with docs --without-hashes --no-ansi > requirements-dev.txt
run: poetry export --all-extras --with dev --with test --with docs --without-hashes --no-ansi > requirements-dev.txt

- name: check requirements-dev.txt
run: git diff --exit-code requirements-dev.txt
Expand All @@ -83,6 +67,8 @@ jobs:

- name: upload code coverage
if: success()
continue-on-error: true
uses: codecov/codecov-action@v4
with:
flags: core,${{ runner.os }},python-${{ steps.install_python.outputs.python-version }}
token: ${{ secrets.CODECOV_TOKEN }}
106 changes: 0 additions & 106 deletions .github/workflows/conda-lock.yml

This file was deleted.

6 changes: 3 additions & 3 deletions .github/workflows/create-rotate-key-issue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Generate a GitHub token
uses: tibdex/github-app-token@v2
uses: actions/create-github-app-token@v1.9.3
id: generate_token
with:
app_id: ${{ secrets.SQUAWK_BOT_APP_ID }}
private_key: ${{ secrets.SQUAWK_BOT_APP_PRIVATE_KEY }}
app-id: ${{ secrets.SQUAWK_BOT_APP_ID }}
private-key: ${{ secrets.SQUAWK_BOT_APP_PRIVATE_KEY }}

- name: checkout
uses: actions/checkout@v4
Expand Down
11 changes: 7 additions & 4 deletions .github/workflows/docs-preview.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,16 @@ on:
jobs:
docs_preview:
runs-on: ubuntu-latest
concurrency:
group: ${{ github.repository }}-${{ github.head_ref || github.sha }}-${{ github.workflow }}-${{ github.event.label.name }}
cancel-in-progress: true
if: github.event.label.name == 'docs-preview'
steps:
- uses: tibdex/github-app-token@v2
- uses: actions/create-github-app-token@v1.9.3
id: generate_token
with:
app_id: ${{ secrets.DOCS_BOT_APP_ID }}
private_key: ${{ secrets.DOCS_BOT_APP_PRIVATE_KEY }}
app-id: ${{ secrets.DOCS_BOT_APP_ID }}
private-key: ${{ secrets.DOCS_BOT_APP_PRIVATE_KEY }}

- name: reset label
uses: actions-ecosystem/action-remove-labels@v1
Expand All @@ -23,7 +26,7 @@ jobs:
github_token: ${{ steps.generate_token.outputs.token }}

- name: install nix
uses: cachix/install-nix-action@v25
uses: cachix/install-nix-action@v26
with:
extra_nix_config: |
access-tokens = github.com=${{ steps.generate_token.outputs.token }}
Expand Down
Loading