Skip to content

Bump rain.math.float submodule#95

Merged
hardyjosh merged 3 commits intomainfrom
chore/bump-rain-math-float
Feb 5, 2026
Merged

Bump rain.math.float submodule#95
hardyjosh merged 3 commits intomainfrom
chore/bump-rain-math-float

Conversation

@findolor
Copy link
Contributor

@findolor findolor commented Feb 4, 2026

Dependent PRs

Motivation

Update rain.math.float submodule to include the fix for workspace inheritance, which allows the crate to be consumed as a path dependency from external repositories.

Solution

Bump lib/rain.math.float submodule to commit 3313df5 which removes workspace inheritance fields.

Checks

By submitting this for review, I'm confirming I've done the following:

  • made this PR as small as possible
  • unit-tested any new functionality
  • linked any relevant issues or PRs
  • included screenshots (if this involves a front-end change)

Summary by CodeRabbit

  • Chores
    • Updated an internal submodule reference; no functional or user-facing changes detected.

@findolor findolor self-assigned this Feb 4, 2026
@coderabbitai
Copy link

coderabbitai bot commented Feb 4, 2026

Walkthrough

Update the lib/rain.math.float submodule commit reference from 150f48bb909dd5f8970726d515c87c5257107699 to fd7640f6bb06ebf33fd45f5c02f0afc06dcea5d7; no source, behavioral, or public API changes.

Changes

Cohort / File(s) Summary
Submodule Reference Update
lib/rain.math.float
Submodule commit hash bumped (pointer-only change); no source code edits or API changes.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

  • bump float #92: Also updates the lib/rain.math.float submodule commit reference.
  • float #85: Submodule pointer change targeting lib/rain.math.float.
  • float #80: Another bump of the lib/rain.math.float submodule commit.

Suggested reviewers

  • hardyjosh
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Bump rain.math.float submodule' directly and specifically describes the main change in the pull request, which is updating a submodule commit reference.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/bump-rain-math-float

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@lib/rain.math.float`:
- Line 1: The submodule pointer for rain.math.float references a nonexistent
commit (3313df5314b4078158567d86f10e2aeee92a85cc); update the submodule to point
to a valid commit by confirming the commit hash in the rain.math.float repo (or
rebasing to the correct commit), ensure the dependent PR
rainlanguage/rain.math.float#164 is merged (it contains the workspace
inheritance fix), update the submodule reference in the parent repo to the
merged commit, and then test locally that the workspace consumes the path
dependency without workspace inheritance errors before merging.

@@ -1 +1 @@
Subproject commit 150f48bb909dd5f8970726d515c87c5257107699
Subproject commit 3313df5314b4078158567d86f10e2aeee92a85cc
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

# Check if the commit exists in the submodule repository
cd lib/rain.math.float 2>/dev/null && {
  if git cat-file -e 3313df5314b4078158567d86f10e2aeee92a85cc^{commit} 2>/dev/null; then
    echo "✓ Commit 3313df5314b4078158567d86f10e2aeee92a85cc exists"
    echo ""
    echo "=== Commit details ==="
    git log -1 --oneline 3313df5314b4078158567d86f10e2aeee92a85cc
    echo ""
    echo "=== Full commit message ==="
    git log -1 --format="%B" 3313df5314b4078158567d86f10e2aeee92a85cc
  else
    echo "✗ Commit 3313df5314b4078158567d86f10e2aeee92a85cc not found"
  fi
} || echo "Submodule not available in sandbox environment"

Repository: rainlanguage/rain.interpreter.interface

Length of output: 142


🌐 Web query:

rainlanguage rain.math.float pull 164 workspace inheritance

💡 Result:

rain.math.float (distributed as @rainlanguage/float) is backed by a Rust workspace (compiled to wasm). If you “pull”/vendor only the member crate (not the workspace root), Cargo can fail with errors like “error inheriting version from workspace root manifest’s workspace.package.version … failed to find a workspace root”—because the crate’s Cargo.toml is using Cargo workspace inheritance (*.workspace = true) and Cargo can’t locate the root Cargo.toml. This commonly shows up during offline/vendor builds. [1]

What to do:

  1. Ensure your toolchain is new enough: workspace inheritance requires Cargo/Rust ≥ 1.64. [2][3]
  2. If you vendor/checkout from git, vendor the whole workspace, not just the leaf crate directory—so the workspace root Cargo.toml (with [workspace.package] / [workspace.dependencies]) is present. [1][3]
  3. If you must isolate the crate, replace inherited fields with concrete values (stop using version.workspace = true, etc.) so it no longer depends on a workspace root. [1][3]

Context: @rainlanguage/float documents itself as “rain.math.float” (decimal floating point math for Solidity/Yul) exposed to JS/TS via wasm. [4]

Sources: [1] [2] [3] [4]


Commit verification failed: the target commit does not exist in the submodule repository.

The submodule update cannot proceed with commit 3313df5314b4078158567d86f10e2aeee92a85cc—it was not found in the rain.math.float repository. Verify the following before merging:

  1. Confirm the commit hash is correct and exists in the submodule repository
  2. Ensure the dependent PR (Remove workspace inheritance for external consumption rain.math.float#164) is merged and implements the workspace inheritance fix
  3. Test the updated submodule in the workspace to confirm path dependency consumption works without workspace inheritance errors
🤖 Prompt for AI Agents
In `@lib/rain.math.float` at line 1, The submodule pointer for rain.math.float
references a nonexistent commit (3313df5314b4078158567d86f10e2aeee92a85cc);
update the submodule to point to a valid commit by confirming the commit hash in
the rain.math.float repo (or rebasing to the correct commit), ensure the
dependent PR rainlanguage/rain.math.float#164 is merged (it contains the
workspace inheritance fix), update the submodule reference in the parent repo to
the merged commit, and then test locally that the workspace consumes the path
dependency without workspace inheritance errors before merging.

@findolor findolor requested review from 0xgleb and hardyjosh February 4, 2026 08:10
@hardyjosh hardyjosh merged commit a4d3ef6 into main Feb 5, 2026
4 checks passed
@github-actions
Copy link

github-actions bot commented Feb 5, 2026

@coderabbitai assess this PR size classification for the totality of the PR with the following criterias and report it in your comment:

S/M/L PR Classification Guidelines:

This guide helps classify merged pull requests by effort and complexity rather than just line count. The goal is to assess the difficulty and scope of changes after they have been completed.

Small (S)

Characteristics:

  • Simple bug fixes, typos, or minor refactoring
  • Single-purpose changes affecting 1-2 files
  • Documentation updates
  • Configuration tweaks
  • Changes that require minimal context to review

Review Effort: Would have taken 5-10 minutes

Examples:

  • Fix typo in variable name
  • Update README with new instructions
  • Adjust configuration values
  • Simple one-line bug fixes
  • Import statement cleanup

Medium (M)

Characteristics:

  • Feature additions or enhancements
  • Refactoring that touches multiple files but maintains existing behavior
  • Breaking changes with backward compatibility
  • Changes requiring some domain knowledge to review

Review Effort: Would have taken 15-30 minutes

Examples:

  • Add new feature or component
  • Refactor common utility functions
  • Update dependencies with minor breaking changes
  • Add new component with tests
  • Performance optimizations
  • More complex bug fixes

Large (L)

Characteristics:

  • Major feature implementations
  • Breaking changes or API redesigns
  • Complex refactoring across multiple modules
  • New architectural patterns or significant design changes
  • Changes requiring deep context and multiple review rounds

Review Effort: Would have taken 45+ minutes

Examples:

  • Complete new feature with frontend/backend changes
  • Protocol upgrades or breaking changes
  • Major architectural refactoring
  • Framework or technology upgrades

Additional Factors to Consider

When deciding between sizes, also consider:

  • Test coverage impact: More comprehensive test changes lean toward larger classification
  • Risk level: Changes to critical systems bump up a size category
  • Team familiarity: Novel patterns or technologies increase complexity

Notes:

  • the assessment must be for the totality of the PR, that means comparing the base branch to the last commit of the PR
  • the assessment output must be exactly one of: S, M or L (single-line comment) in format of: SIZE={S/M/L}
  • do not include any additional text, only the size classification
  • your assessment comment must not include tips or additional sections
  • do NOT tag me or anyone else on your comment

@coderabbitai
Copy link

coderabbitai bot commented Feb 5, 2026

Tip

For best results, initiate chat on the files or code changes.

SIZE=S

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants