Skip to content

Commit 6898472

Browse files
authored
Merge pull request #10930 from ipfs/release-v0.37.0
Release v0.37.0
2 parents 37b8411 + 9cb1d10 commit 6898472

File tree

237 files changed

+16578
-2715
lines changed

Some content is hidden

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

237 files changed

+16578
-2715
lines changed

.codespell-ignore

Lines changed: 0 additions & 21 deletions
This file was deleted.

.cspell.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
ignoreWords:
2+
- childs # This spelling is used in the files command
3+
- NodeCreater # This spelling is used in the fuse dependency
4+
- Boddy # One of the contributors to the project - Chris Boddy
5+
- Botto # One of the contributors to the project - Santiago Botto
6+
- cose # dag-cose

.gitattributes

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,23 @@ LICENSE text eol=auto
1515
# Binary assets
1616
assets/init-doc/* binary
1717
core/coreunix/test_data/** binary
18+
test/cli/migrations/testdata/** binary
19+
20+
# Generated test data
21+
test/cli/migrations/testdata/** linguist-generated=true
22+
test/cli/autoconf/testdata/** linguist-generated=true
23+
test/cli/fixtures/** linguist-generated=true
24+
test/sharness/t0054-dag-car-import-export-data/** linguist-generated=true
25+
test/sharness/t0109-gateway-web-_redirects-data/** linguist-generated=true
26+
test/sharness/t0114-gateway-subdomains/** linguist-generated=true
27+
test/sharness/t0115-gateway-dir-listing/** linguist-generated=true
28+
test/sharness/t0116-gateway-cache/** linguist-generated=true
29+
test/sharness/t0119-prometheus-data/** linguist-generated=true
30+
test/sharness/t0165-keystore-data/** linguist-generated=true
31+
test/sharness/t0275-cid-security-data/** linguist-generated=true
32+
test/sharness/t0280-plugin-dag-jose-data/** linguist-generated=true
33+
test/sharness/t0280-plugin-data/** linguist-generated=true
34+
test/sharness/t0280-plugin-git-data/** linguist-generated=true
35+
test/sharness/t0400-api-no-gateway/** linguist-generated=true
36+
test/sharness/t0701-delegated-routing-reframe/** linguist-generated=true
37+
test/sharness/t0702-delegated-routing-http/** linguist-generated=true

.github/workflows/codeql-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,12 @@ jobs:
2929

3030
steps:
3131
- name: Checkout repository
32-
uses: actions/checkout@v4
32+
uses: actions/checkout@v5
3333

3434
- name: Setup Go
3535
uses: actions/setup-go@v5
3636
with:
37-
go-version: 1.24.x
37+
go-version: 1.25.x
3838

3939
# Initializes the CodeQL tools for scanning.
4040
- name: Initialize CodeQL

.github/workflows/docker-build.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.

.github/workflows/docker-check.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# This workflow performs a quick Docker build check on PRs and pushes to master.
2+
# It builds the Docker image and runs a basic smoke test to ensure the image works.
3+
# This is a lightweight check - for full multi-platform builds and publishing, see docker-image.yml
4+
name: Docker Check
5+
6+
on:
7+
workflow_dispatch:
8+
pull_request:
9+
paths-ignore:
10+
- '**/*.md'
11+
push:
12+
branches:
13+
- 'master'
14+
15+
concurrency:
16+
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event_name == 'push' && github.sha || github.ref }}
17+
cancel-in-progress: true
18+
19+
jobs:
20+
lint:
21+
if: github.repository == 'ipfs/kubo' || github.event_name == 'workflow_dispatch'
22+
runs-on: ubuntu-latest
23+
timeout-minutes: 5
24+
steps:
25+
- uses: actions/checkout@v5
26+
- uses: hadolint/[email protected]
27+
with:
28+
dockerfile: Dockerfile
29+
failure-threshold: warning
30+
verbose: true
31+
format: tty
32+
33+
build:
34+
if: github.repository == 'ipfs/kubo' || github.event_name == 'workflow_dispatch'
35+
runs-on: ubuntu-latest
36+
timeout-minutes: 10
37+
env:
38+
IMAGE_NAME: ipfs/kubo
39+
WIP_IMAGE_TAG: wip
40+
defaults:
41+
run:
42+
shell: bash
43+
steps:
44+
- uses: actions/checkout@v5
45+
46+
- name: Set up Docker Buildx
47+
uses: docker/setup-buildx-action@v3
48+
49+
- name: Build Docker image with BuildKit
50+
uses: docker/build-push-action@v6
51+
with:
52+
context: .
53+
push: false
54+
load: true
55+
tags: ${{ env.IMAGE_NAME }}:${{ env.WIP_IMAGE_TAG }}
56+
cache-from: |
57+
type=gha
58+
type=registry,ref=${{ env.IMAGE_NAME }}:buildcache
59+
cache-to: type=gha,mode=max
60+
61+
- name: Test Docker image
62+
run: docker run --rm $IMAGE_NAME:$WIP_IMAGE_TAG --version

.github/workflows/docker-image.yml

Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# This workflow builds and publishes official Docker images to Docker Hub.
2+
# It handles multi-platform builds (amd64, arm/v7, arm64/v8) and pushes tagged releases.
3+
# This workflow is triggered on tags, specific branches, and can be manually dispatched.
4+
# For quick build checks during development, see docker-check.yml
15
name: Docker Push
26

37
on:
@@ -38,21 +42,19 @@ jobs:
3842
LEGACY_IMAGE_NAME: ipfs/go-ipfs
3943
steps:
4044
- name: Check out the repo
41-
uses: actions/checkout@v4
45+
uses: actions/checkout@v5
4246

4347
- name: Set up QEMU
4448
uses: docker/setup-qemu-action@v3
4549

4650
- name: Set up Docker Buildx
4751
uses: docker/setup-buildx-action@v3
4852

49-
- name: Cache Docker layers
50-
uses: actions/cache@v4
53+
- name: Log in to Docker Hub
54+
uses: docker/login-action@v3
5155
with:
52-
path: /tmp/.buildx-cache
53-
key: ${{ runner.os }}-buildx-${{ github.sha }}
54-
restore-keys: |
55-
${{ runner.os }}-buildx-
56+
username: ${{ vars.DOCKER_USERNAME }}
57+
password: ${{ secrets.DOCKER_PASSWORD }}
5658

5759
- name: Get tags
5860
id: tags
@@ -63,12 +65,6 @@ jobs:
6365
echo "EOF" >> $GITHUB_OUTPUT
6466
shell: bash
6567

66-
- name: Log in to Docker Hub
67-
uses: docker/login-action@v3
68-
with:
69-
username: ${{ vars.DOCKER_USERNAME }}
70-
password: ${{ secrets.DOCKER_PASSWORD }}
71-
7268
# We have to build each platform separately because when using multi-arch
7369
# builds, only one platform is being loaded into the cache. This would
7470
# prevent us from testing the other platforms.
@@ -81,8 +77,10 @@ jobs:
8177
load: true
8278
file: ./Dockerfile
8379
tags: ${{ env.IMAGE_NAME }}:linux-amd64
84-
cache-from: type=local,src=/tmp/.buildx-cache
85-
cache-to: type=local,dest=/tmp/.buildx-cache-new
80+
cache-from: |
81+
type=gha
82+
type=registry,ref=${{ env.IMAGE_NAME }}:buildcache
83+
cache-to: type=gha,mode=max
8684

8785
- name: Build Docker image (linux/arm/v7)
8886
uses: docker/build-push-action@v6
@@ -93,8 +91,10 @@ jobs:
9391
load: true
9492
file: ./Dockerfile
9593
tags: ${{ env.IMAGE_NAME }}:linux-arm-v7
96-
cache-from: type=local,src=/tmp/.buildx-cache
97-
cache-to: type=local,dest=/tmp/.buildx-cache-new
94+
cache-from: |
95+
type=gha
96+
type=registry,ref=${{ env.IMAGE_NAME }}:buildcache
97+
cache-to: type=gha,mode=max
9898

9999
- name: Build Docker image (linux/arm64/v8)
100100
uses: docker/build-push-action@v6
@@ -105,8 +105,10 @@ jobs:
105105
load: true
106106
file: ./Dockerfile
107107
tags: ${{ env.IMAGE_NAME }}:linux-arm64-v8
108-
cache-from: type=local,src=/tmp/.buildx-cache
109-
cache-to: type=local,dest=/tmp/.buildx-cache-new
108+
cache-from: |
109+
type=gha
110+
type=registry,ref=${{ env.IMAGE_NAME }}:buildcache
111+
cache-to: type=gha,mode=max
110112

111113
# We test all the images on amd64 host here. This uses QEMU to emulate
112114
# the other platforms.
@@ -132,12 +134,9 @@ jobs:
132134
push: true
133135
file: ./Dockerfile
134136
tags: "${{ github.event.inputs.tags || steps.tags.outputs.value }}"
135-
cache-from: type=local,src=/tmp/.buildx-cache-new
136-
cache-to: type=local,dest=/tmp/.buildx-cache-new
137-
138-
# https://github.com/docker/build-push-action/issues/252
139-
# https://github.com/moby/buildkit/issues/1896
140-
- name: Move cache to limit growth
141-
run: |
142-
rm -rf /tmp/.buildx-cache
143-
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
137+
cache-from: |
138+
type=gha
139+
type=registry,ref=${{ env.IMAGE_NAME }}:buildcache
140+
cache-to: |
141+
type=gha,mode=max
142+
type=registry,ref=${{ env.IMAGE_NAME }}:buildcache,mode=max

.github/workflows/gateway-conformance.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,12 @@ jobs:
4949
- name: Setup Go
5050
uses: actions/setup-go@v5
5151
with:
52-
go-version: 1.24.x
52+
go-version: 1.25.x
5353
- uses: protocol/cache-go-action@v1
5454
with:
5555
name: ${{ github.job }}
5656
- name: Checkout kubo-gateway
57-
uses: actions/checkout@v4
57+
uses: actions/checkout@v5
5858
with:
5959
path: kubo-gateway
6060
- name: Build kubo-gateway
@@ -136,12 +136,12 @@ jobs:
136136
- name: Setup Go
137137
uses: actions/setup-go@v5
138138
with:
139-
go-version: 1.24.x
139+
go-version: 1.25.x
140140
- uses: protocol/cache-go-action@v1
141141
with:
142142
name: ${{ github.job }}
143143
- name: Checkout kubo-gateway
144-
uses: actions/checkout@v4
144+
uses: actions/checkout@v5
145145
with:
146146
path: kubo-gateway
147147
- name: Build kubo-gateway

.github/workflows/gobuild.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ jobs:
3030
steps:
3131
- uses: actions/setup-go@v5
3232
with:
33-
go-version: 1.24.x
34-
- uses: actions/checkout@v4
33+
go-version: 1.25.x
34+
- uses: actions/checkout@v5
3535
- run: make cmd/ipfs-try-build
3636
env:
3737
TEST_FUSE: 1

.github/workflows/golang-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ jobs:
2222
runs-on: ubuntu-latest
2323
timeout-minutes: 10
2424
steps:
25-
- uses: actions/checkout@v4
25+
- uses: actions/checkout@v5
2626
with:
2727
submodules: recursive
2828
- uses: actions/setup-go@v5
2929
with:
30-
go-version: "1.24.x"
30+
go-version: "1.25.x"
3131
- name: Check that go.mod is tidy
3232
uses: protocol/[email protected]
3333
with:

0 commit comments

Comments
 (0)