Skip to content

Conversation

rvagg
Copy link
Member

@rvagg rvagg commented Sep 5, 2025

Main goal here is to get supraseal-c2 updated so people can use more recent GPUs for sealing.

This caught my interest so I went investigating and the lack of a checked in lockfile bothered me. It'd be fine if it's just one person doing releases so they have a stable lockfile they intentionally update between releases, but with different people doing it we're starting from a different base each time. So I've updated the release instructions in here to point this problem out (I think the right approach is to just check in the lockfile and rely on the fact that it gets tagged on release instead of putting it in releases/). I also have a script in there that can identify the differences between releases. e.g.:

$ ./scripts/compare-locks.py releases/Cargo.lock.v19.0.0 releases/Cargo.lock.v19.0.1
Comparing Cargo.lock files
  Old: releases/Cargo.lock.v19.0.0
  New: releases/Cargo.lock.v19.0.1
============================================================

All changes:
  • fil-proofs-param: 13.1.0 → 14.0.0
  • fil-proofs-tooling: 18.1.0 → 19.0.0
  • filecoin-hashers: 13.1.0 → 14.0.0
  • filecoin-proofs: 18.1.0 → 19.0.0
  • fr32: 11.1.0 → 12.0.0
  • sha2raw: 13.1.0 → 14.0.0
  • storage-proofs-core: 18.1.0 → 19.0.0
  • storage-proofs-porep: 18.1.0 → 19.0.0
  • storage-proofs-post: 18.1.0 → 19.0.0
  • storage-proofs-update: 18.1.0 → 19.0.0
  • supraseal-c2: 0.1.0 → 0.1.1

Workspace packages (10):
  • fil-proofs-param: 13.1.0 → 14.0.0
  • fil-proofs-tooling: 18.1.0 → 19.0.0
  • filecoin-hashers: 13.1.0 → 14.0.0
  • filecoin-proofs: 18.1.0 → 19.0.0
  • fr32: 11.1.0 → 12.0.0
  • sha2raw: 13.1.0 → 14.0.0
  • storage-proofs-core: 18.1.0 → 19.0.0
  • storage-proofs-porep: 18.1.0 → 19.0.0
  • storage-proofs-post: 18.1.0 → 19.0.0
  • storage-proofs-update: 18.1.0 → 19.0.0

External dependencies (1):
  • supraseal-c2: 0.1.0 → 0.1.1

============================================================
Summary: 11 package(s) changed
✓ This release includes the supraseal-c2 update

This PR hasn't had the full test runs done, I don't have that much RAM, it'd be good to get that done though to test the new dependency.

@Copilot Copilot AI review requested due to automatic review settings September 5, 2025 05:57
Copilot

This comment was marked as outdated.

@rvagg rvagg force-pushed the rvagg/v19.0.1-bump branch from ca84c57 to b619a7f Compare September 5, 2025 06:12
@rvagg
Copy link
Member Author

rvagg commented Sep 5, 2025

hah, lack of a checked in lock even shows up in CI failures, it's failing in CI because it's pulling in newer dependencies that aren't in the release lock

I think we just need to check in a lockfile

@rvagg rvagg force-pushed the rvagg/v19.0.1-bump branch 2 times, most recently from fdbf0b2 to d737f8a Compare September 5, 2025 09:40
@github-project-automation github-project-automation bot moved this to 🐱 Todo in nv27 Track Board Sep 5, 2025
@BigLep BigLep requested a review from Copilot September 5, 2025 14:25
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR updates the project to version 19.0.1, primarily to update the supraseal-c2 dependency to 0.1.1 for improved GPU compatibility. Additionally, it addresses release process improvements by adding tooling to compare lockfile changes between releases.

  • Update supraseal-c2 from 0.1.0 to 0.1.1 for better GPU support
  • Add Python script to compare Cargo.lock files between releases
  • Update release documentation to emphasize proper lockfile management

Reviewed Changes

Copilot reviewed 5 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
scripts/compare-locks.py New utility script for comparing Cargo.lock files between releases
fil-proofs-param/Cargo.toml Update indicatif dependency from 0.16.2 to 0.17
RELEASE.md Enhanced release instructions with lockfile management guidance
CHANGELOG.md Added changelog entry for v19.0.1 with dependency updates
.github/actions/proof-params-download/action.yml Improved curl command with error handling and directory creation

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@BigLep
Copy link
Member

BigLep commented Sep 5, 2025

I think we just need to check in a lockfile

Sounds good. Will you be doing that as part of this PR?

Is that what is needed to get CI green?

@BigLep
Copy link
Member

BigLep commented Sep 5, 2025

FYI that created a tracking issue for bubbling this up through filecoin-ffi: filecoin-project/filecoin-ffi#540

@BigLep BigLep removed this from nv27 Track Board Sep 5, 2025
@rvagg rvagg force-pushed the rvagg/v19.0.1-bump branch 2 times, most recently from 5b4f1df to eafe982 Compare September 8, 2025 02:47
@rvagg rvagg force-pushed the rvagg/v19.0.1-bump branch from eafe982 to 9b874bd Compare September 8, 2025 02:47
@rvagg rvagg force-pushed the rvagg/v19.0.1-bump branch 3 times, most recently from a185d80 to d806595 Compare September 8, 2025 12:46
@rvagg rvagg force-pushed the rvagg/v19.0.1-bump branch from d806595 to 851f4fc Compare September 9, 2025 01:20
@rvagg
Copy link
Member Author

rvagg commented Sep 9, 2025

  • Updated supraseal-c2 from 0.1.0 to 0.1.1
  • Updated indicatif from 0.16.2 to 0.17 (fixes CI console crate compatibility)
  • Checked in Cargo.lock file (was previously gitignored)
  • Added NVIDIA driver loading step to GPU test job - loads nvidia and nvidia-uvm kernel modules with modprobe and verifies with nvidia-smi
  • Fixed & improved sha2raw doctests - converted from ignore blocks to text blocks to prevent test runner from parsing pseudocode (was failing in CI now)
  • Added release lock file releases/Cargo.lock.v19.0.1 for reproducible builds
  • Created comparison script scripts/compare-locks.py to diff dependency versions between releases
  • Updated CHANGELOG.md with v19.0.1 release notes

As an aside, there is a supraseal-c2 0.1.2 out this weekend. But it has a new build system thanks to sppark v0.1.14 and our CI isn't happy with that and we get a panic. I think it might just be a case of adding an env var - https://github.com/supranational/sppark/blob/443e31e13c2bfefefe11ab985f938bb0c3a6907c/rust/src/build.rs#L22 - DEP_SPPARK_TARGET=cuda.

Just a build system update, so I didn't think it worth chasing for this update. Maybe there's more I'm missing though.

@github-project-automation github-project-automation bot moved this to 🐱 Todo in nv27 Track Board Sep 9, 2025
@BigLep BigLep moved this from 🐱 Todo to 🔎 Awaiting Review in nv27 Track Board Sep 9, 2025
@BigLep BigLep added this to FilOz Sep 10, 2025
@github-project-automation github-project-automation bot moved this to 📌 Triage in FilOz Sep 10, 2025
@BigLep BigLep moved this from 📌 Triage to 🔎 Awaiting Review in FilOz Sep 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: 🔎 Awaiting Review
Development

Successfully merging this pull request may close these issues.

2 participants