ipfs / gateway-conformance

a vendor-agnostic gateway conformance test suite for implementers of IPFS Gateways to ensure compliance with https://specs.ipfs.tech/http-gateways/
https://specs.ipfs.tech/http-gateways/
Other
14 stars 13 forks source link

bug: `make fixtures.car` doesn't succeed on "clean" main branch #188

Open SgtPooki opened 7 months ago

SgtPooki commented 7 months ago

https://github.com/ipfs/gateway-conformance/blame/d855ec4fb9dac4a5aaecf3776037b005cc74c566/docs/development.md#L46

╰─ ✔ ❯ make fixtures.car
go build \
    -ldflags="-X github.com/ipfs/gateway-conformance/tooling.Version=dev-d855ec4f-dirty" \
    -o ./gateway-conformance \
    ./cmd/gateway-conformance
./gateway-conformance extract-fixtures --merged=true --dir=.
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/dir_listing/fixtures.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/gateway-cache/fixtures.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/gateway-raw-block.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/dag-cbor-traversal.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/dag-json-traversal.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/dag-pb.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/gateway-json-cbor.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/plain-cbor-that-can-be-dag-cbor.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/plain-cbor-that-can-be-dag-json.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/plain-cbor.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_dag/plain-json.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_tar/fixtures.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_tar/inside-root.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_tar/outside-root.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_unixfs/dir-with-files.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_unixfs/dir-with-percent-encoded-filename.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/path_gateway_unixfs/symlink.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/redirects_file/redirects-spa.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/redirects_file/redirects.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/subdomain_gateway/fixtures.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/trustless_gateway_car/dir-with-dag-cbor-with-links.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/trustless_gateway_car/dir-with-duplicate-files.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/trustless_gateway_car/file-3k-and-3-blocks-missing-block.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/trustless_gateway_car/single-layer-hamt-with-multi-block-files.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/trustless_gateway_car/subdir-with-mixed-block-files.car
processing /Users/sgtpooki/code/work/protocol.ai/ipfs/gateway-conformance/fixtures/trustless_gateway_car/subdir-with-two-single-block-files.car
Opening the fixtures.car file, with root: bafybeifz6d7xzzmo52s43a52sbyxb44uvsb2ujxohm25lszmddrb4hosdi
2023/12/05 23:21:43 cannot resume on file with mismatching data header
make: *** [Makefile:34: fixtures.car] Error 1
SgtPooki commented 7 months ago

Note that it says it's dirty, but..

╰─ ✘ 2 ❯ git status
Alias tip: gst
On branch main
Your branch is up to date with 'origin/main'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)
    .envrc
    .tool-versions
    .vscode/

╰─ ✔ ❯ go version
go version go1.20.6 darwin/arm64

╰─ ✔ ❯ cat .envrc
use asdf

╰─ ✔ ❯ cat .tool-versions
golang 1.20.6
SgtPooki commented 7 months ago
╰─ ✔ ❯ make provision-kubo
find ./fixtures -name '*.car' -exec ipfs dag import --stats --pin-roots=false {} \;
Imported 3 blocks (119 bytes)
Imported 9 blocks (1541 bytes)
Imported 2 blocks (128 bytes)
Imported 11 blocks (759 bytes)
Imported 9 blocks (1462 bytes)
Imported 10 blocks (1538 bytes)
Imported 9 blocks (1541 bytes)
Imported 4 blocks (208 bytes)
Imported 243 blocks (74982 bytes)
Imported 3 blocks (2215 bytes)
Imported 10 blocks (623 bytes)
Imported 5 blocks (224 bytes)
Imported 1 blocks (26 bytes)
Imported 1 blocks (44 bytes)
Imported 3 blocks (148 bytes)
Imported 4 blocks (184 bytes)
Imported 11 blocks (711 bytes)
Imported 1 blocks (52 bytes)
Imported 3 blocks (231 bytes)
Imported 1 blocks (17 bytes)
Imported 3 blocks (139 bytes)
Imported 4 blocks (176 bytes)
Imported 10 blocks (623 bytes)
Imported 2 blocks (115 bytes)
Imported 32 blocks (68071 bytes)
Imported 3 blocks (189 bytes)
find ./fixtures -name '*.ipns-record' -exec sh -c 'ipfs routing put --allow-offline /ipns/$(basename -s .ipns-record "{}") "{}"' \;
12D3KooWLQzUv2FHWGVPXTXSZpdHs7oHbXub2G5WC8Tx4NQhyd2d
QmVujd5Vb7moysJj8itnGufN7MEtPRCNHkKpNuA4onsRa3
12D3KooWRL2ppK37M2ih6xGfufWVa15jqAcgeQ8ZvoAUJFAfbueZ
12D3KooWDUyFJTGJADckWJdfh2haqj6ckaXFWi1DReJ4RP8KsHg5
12D3KooWAe38Bk28zHVKiRHUhkjVmPAU9r4NoK5sxffK7EkHgHcU
Error: failed to parse peer ID: invalid cid: invalid base36 character ('_')
Error: failed to parse peer ID: invalid cid: invalid base36 character ('_')
Error: failed to parse peer ID: invalid cid: invalid base36 character ('_')
Error: failed to parse peer ID: invalid cid: invalid base36 character ('_')
Error: failed to parse peer ID: invalid cid: invalid base36 character ('_')
Error: failed to parse peer ID: invalid cid: invalid base36 character ('_')