Skip to content

Commit 080daa9

Browse files
authored
Merge branch 'main' into rich-t-kid/optimize-dictionary-grouping
2 parents f6f5950 + 9b81ff8 commit 080daa9

1,001 files changed

Lines changed: 78900 additions & 15603 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.ai/skills/datafusion-ffi/SKILL.md

Lines changed: 360 additions & 0 deletions
Large diffs are not rendered by default.

.asf.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,12 @@ github:
9797
branch-52:
9898
required_pull_request_reviews:
9999
required_approving_review_count: 1
100+
branch-53:
101+
required_pull_request_reviews:
102+
required_approving_review_count: 1
103+
branch-54:
104+
required_pull_request_reviews:
105+
required_approving_review_count: 1
100106
pull_requests:
101107
# enable updating head branches of pull requests
102108
allow_update_branch: true

.github/workflows/audit.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ jobs:
4343
security_audit:
4444
runs-on: ubuntu-latest
4545
steps:
46-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
46+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
4747
- name: Install cargo-audit
48-
uses: taiki-e/install-action@7ea35f098a7369cd23488403f58be9c491a6c55f # v2.77.0
48+
uses: taiki-e/install-action@25435dc8dd3baed7417e0c96d3fe89013a5b2e09 # v2.81.3
4949
with:
5050
tool: cargo-audit
5151
- name: Run audit check

.github/workflows/breaking_changes_detector.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
runs-on: ubuntu-latest
5656
steps:
5757
- name: Checkout
58-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
58+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
5959
with:
6060
fetch-depth: 0
6161

@@ -89,7 +89,7 @@ jobs:
8989
9090
- name: Install cargo-semver-checks
9191
if: steps.changed_crates.outputs.packages != ''
92-
uses: taiki-e/install-action@7ea35f098a7369cd23488403f58be9c491a6c55f # v2.77.0
92+
uses: taiki-e/install-action@25435dc8dd3baed7417e0c96d3fe89013a5b2e09 # v2.81.3
9393
with:
9494
tool: cargo-semver-checks
9595

.github/workflows/breaking_changes_detector_comment.yml

Lines changed: 56 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -104,39 +104,66 @@ jobs:
104104
echo "${DELIM}"
105105
} >> "$GITHUB_OUTPUT"
106106
107-
# The marker `<!-- semver-check-comment -->` is what makes the comment
108-
# "sticky": maintain-one-comment uses it to find and replace (or
109-
# delete) the existing comment instead of stacking new ones.
107+
108+
# Find any existing sticky comment by its hidden marker so we can update
109+
# or delete it instead of stacking new ones.
110+
- name: Find existing sticky comment
111+
id: find
112+
env:
113+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
114+
REPO: ${{ github.repository }}
115+
PR_NUMBER: ${{ steps.read.outputs.pr_number }}
116+
run: |
117+
COMMENT_ID=$(gh api --paginate "repos/${REPO}/issues/${PR_NUMBER}/comments" \
118+
--jq '.[] | select(.body | contains("<!-- semver-check-comment -->")) | .id' \
119+
| head -n1)
120+
echo "comment_id=${COMMENT_ID}" >> "$GITHUB_OUTPUT"
121+
122+
# update the existing comment found above, or create a new one. The hidden
123+
# marker `<!-- semver-check-comment -->` stays in the body so the next run
124+
# finds it again. LOGS is interpolated via a shell parameter expansion,
125+
# whose result bash does not re-scan, so untrusted log content cannot
126+
# inject further commands.
110127
- name: Upsert sticky comment
111128
if: steps.read.outputs.result != 'success'
112-
uses: actions-cool/maintain-one-comment@909842216bc8e8658364c572ec52100f4c2cc50a # v3.3.0
113-
with:
114-
token: ${{ secrets.GITHUB_TOKEN }}
115-
number: ${{ steps.read.outputs.pr_number }}
116-
body-include: '<!-- semver-check-comment -->'
117-
body: |
118-
<!-- semver-check-comment -->
119-
Thank you for opening this pull request!
120-
121-
Reviewer note: [cargo-semver-checks](https://github.com/obi1kenobi/cargo-semver-checks) reported the current version number is not SemVer-compatible with the changes in this pull request (compared against the base branch).
122-
123-
<details>
124-
<summary>Details</summary>
125-
126-
```
127-
${{ steps.read.outputs.logs }}
128-
```
129-
130-
</details>
129+
env:
130+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
131+
REPO: ${{ github.repository }}
132+
PR_NUMBER: ${{ steps.read.outputs.pr_number }}
133+
COMMENT_ID: ${{ steps.find.outputs.comment_id }}
134+
LOGS: ${{ steps.read.outputs.logs }}
135+
run: |
136+
set -euo pipefail
137+
BODY="<!-- semver-check-comment -->
138+
Thank you for opening this pull request!
139+
140+
Reviewer note: [cargo-semver-checks](https://github.com/obi1kenobi/cargo-semver-checks) reported the current version number is not SemVer-compatible with the changes in this pull request (compared against the base branch).
141+
142+
<details>
143+
<summary>Details</summary>
144+
145+
\`\`\`
146+
${LOGS}
147+
\`\`\`
148+
149+
</details>"
150+
151+
# Use --raw-field (not --field): always sends the value as a literal string. while --field would treat a leading `@` as a file to read
152+
# (even though the body does not start with user input we are being cautious)
153+
if [ -n "$COMMENT_ID" ]; then
154+
gh api "repos/${REPO}/issues/comments/${COMMENT_ID}" --method PATCH --raw-field body="$BODY"
155+
else
156+
gh api "repos/${REPO}/issues/${PR_NUMBER}/comments" --method POST --raw-field body="$BODY"
157+
fi
131158
159+
# Clear a stale comment once the breaking change is resolved.
132160
- name: Delete sticky comment
133-
if: steps.read.outputs.result == 'success'
134-
uses: actions-cool/maintain-one-comment@909842216bc8e8658364c572ec52100f4c2cc50a # v3.3.0
135-
with:
136-
token: ${{ secrets.GITHUB_TOKEN }}
137-
number: ${{ steps.read.outputs.pr_number }}
138-
body-include: '<!-- semver-check-comment -->'
139-
delete: true
161+
if: steps.read.outputs.result == 'success' && steps.find.outputs.comment_id != ''
162+
env:
163+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
164+
REPO: ${{ github.repository }}
165+
COMMENT_ID: ${{ steps.find.outputs.comment_id }}
166+
run: gh api -X DELETE "repos/${REPO}/issues/comments/${COMMENT_ID}"
140167

141168
- name: Add "auto detected api change" label
142169
if: steps.read.outputs.result != 'success'

.github/workflows/codeql.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,16 +40,16 @@ jobs:
4040

4141
steps:
4242
- name: Checkout repository
43-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
43+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
4444
with:
4545
persist-credentials: false
4646

4747
- name: Initialize CodeQL
48-
uses: github/codeql-action/init@e46ed2cbd01164d986452f91f178727624ae40d7 # v4
48+
uses: github/codeql-action/init@87557b9c84dde89fdd9b10e88954ac2f4248e463 # v4
4949
with:
5050
languages: actions
5151

5252
- name: Perform CodeQL Analysis
53-
uses: github/codeql-action/analyze@e46ed2cbd01164d986452f91f178727624ae40d7 # v4
53+
uses: github/codeql-action/analyze@87557b9c84dde89fdd9b10e88954ac2f4248e463 # v4
5454
with:
5555
category: "/language:actions"

.github/workflows/dependencies.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
container:
4242
image: amd64/rust
4343
steps:
44-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
44+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
4545
with:
4646
submodules: true
4747
fetch-depth: 1
@@ -60,7 +60,7 @@ jobs:
6060
container:
6161
image: amd64/rust
6262
steps:
63-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
63+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
6464
- name: Install cargo-machete
6565
run: cargo install cargo-machete --version ^0.9 --locked
6666
- name: Detect unused dependencies

.github/workflows/dev.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
runs-on: ubuntu-latest
3636
name: Check License Header
3737
steps:
38-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
38+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
3939
- name: Install HawkEye
4040
# This CI job is bound by installation time, use `--profile dev` to speed it up
4141
run: cargo install hawkeye --version 6.2.0 --locked --profile dev
@@ -46,7 +46,7 @@ jobs:
4646
name: Use prettier to check formatting of documents
4747
runs-on: ubuntu-slim
4848
steps:
49-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
49+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
5050
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
5151
with:
5252
node-version: "20"
@@ -58,13 +58,13 @@ jobs:
5858
name: Check Markdown Links
5959
runs-on: ubuntu-latest
6060
steps:
61-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
61+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
6262
- name: Load tool versions
6363
run: |
6464
source ci/scripts/utils/tool_versions.sh
6565
echo "LYCHEE_VERSION=${LYCHEE_VERSION}" >> "$GITHUB_ENV"
6666
- name: Install lychee
67-
uses: taiki-e/install-action@7ea35f098a7369cd23488403f58be9c491a6c55f # v2.77.0
67+
uses: taiki-e/install-action@25435dc8dd3baed7417e0c96d3fe89013a5b2e09 # v2.81.3
6868
with:
6969
tool: lychee@${{ env.LYCHEE_VERSION }}
7070
- name: Run markdown link check
@@ -74,15 +74,15 @@ jobs:
7474
name: Validate required_status_checks in .asf.yaml
7575
runs-on: ubuntu-latest
7676
steps:
77-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
77+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
7878
- run: pip install pyyaml
7979
- run: python3 ci/scripts/check_asf_yaml_status_checks.py
8080

8181
typos:
8282
name: Spell Check with Typos
8383
runs-on: ubuntu-latest
8484
steps:
85-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
85+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
8686
with:
8787
persist-credentials: false
8888
# Version fixed on purpose. It uses heuristics to detect typos, so upgrading

.github/workflows/docs.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,16 +34,16 @@ jobs:
3434
runs-on: ubuntu-latest
3535
steps:
3636
- name: Checkout docs sources
37-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
37+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
3838

3939
- name: Checkout asf-site branch
40-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
40+
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
4141
with:
4242
ref: asf-site
4343
path: asf-site
4444

4545
- name: Setup uv
46-
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
46+
uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
4747

4848
- name: Install dependencies
4949
run: uv sync --package datafusion-docs

.github/workflows/docs_pr.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,12 @@ jobs:
4242
name: Test doc build
4343
runs-on: ubuntu-latest
4444
steps:
45-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
45+
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
4646
with:
4747
submodules: true
4848
fetch-depth: 1
4949
- name: Setup uv
50-
uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0
50+
uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
5151
- name: Install doc dependencies
5252
run: uv sync --package datafusion-docs
5353
- name: Install dependency graph tooling

0 commit comments

Comments
 (0)