Skip to content

chore: clean-up - #14016

Merged
kgryte merged 4 commits into
developfrom
philipp/fix-propagation-2026-08-07
Aug 7, 2026
Merged

chore: clean-up#14016
kgryte merged 4 commits into
developfrom
philipp/fix-propagation-2026-08-07

Conversation

@Planeshifter

Copy link
Copy Markdown
Member

Description

What is the purpose of this pull request?

This pull request propagates fixes merged to develop between 2026-08-06 and 2026-08-07 (37d7d9e..9e08b03) to sibling packages with the same underlying issue:

  • Remove unused shared.h include in README examples. Commit d4eb315 dropped the unused #include "stdlib/blas/base/shared.h" from README C example code blocks in blas/ext/base triangular-matrix packages; the example code uses no symbol from that header. This PR applies the identical removal to the following packages, whose README C examples carry the same dead include:

    • @stdlib/blas/base/sger
    • @stdlib/blas/base/dger
    • @stdlib/blas/ext/base/dvander
    • @stdlib/blas/ext/base/svander
  • Propagate dynamic memory allocation to remaining stats/strided length benchmarks. Applies the pattern from 1f1a165 ([RFC]: replace static memory allocation of large arrays in C benchmarks with dynamic memory allocation (tracking issue) #8643) — replace stack-allocated VLAs (float x[ len ];) with malloc/free — across the remaining stats/strided length benchmarks that still used VLAs: the smax*/smin*/smean*/snan*/sstdev*/svariance* single-precision families (40 packages), plus dvarm's benchmark1, whose benchmark2 was already migrated and whose cast style the new code matches exactly. Excluded: 13 multi-array (x+y/x+mask) benchmark files, whose adaptive shape goes beyond the verbatim source patch; sztest, whose struct initializer block breaks the patch anchors; and 2 files outside the stats/strided namespace. Scope: 41 packages under @stdlib/stats/strided.

  • Const-qualify C API parameters. Applies the same const-qualification from 58556f4 to @stdlib/ndarray/base/assert/is-contiguous, the last remaining non-const stdlib_ndarray_is_* signature in the namespace. Const-qualifies the parameters in both the header declaration and src/main.c; no other files change, as the downstream callees already accept const-qualified pointers.

    • @stdlib/ndarray/base/assert/is-contiguous
  • Remove redundant f32 wrapper. Removes an identical redundant f32() wrapper around powf( 2.0, 27 ) in @stdlib/math/base/special/absgammalnf's test/test.js and test/test.native.js, matching source commit cfbd29a ("chore: clean-up"), since powf already returns a single-precision-rounded value. The f32( -powf( ... ) ) wrappers around compound expressions in the same files are left as-is, consistent with the source commit's scope.

    • @stdlib/math/base/special/absgammalnf

Related Issues

Does this pull request have any related issues?

This pull request has the following related issues:

Questions

Any questions for reviewers of this pull request?

No.

Other

Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.

Validation performed before committing:

  • Candidate sites were enumerated via pattern search scoped to the source commits' sibling namespaces.
  • Each site was independently verified by two review passes (defect present, surrounding semantics match the source commit's context), an adaptation pass (source patch applies verbatim, or a per-site variant was produced), and a style-consistency pass against the merged source commits and repo style guides.
  • Deliberately excluded: sites flagged as needing human judgment (blas/ext/base/dsnansumors README, whose examples fence may need re-syncing with examples/c/example.c instead), sites whose structure deviates from the source patch shape (stats/strided/sztest), multi-array benchmark files requiring adaptive changes beyond the verbatim patch, and the instanceof ErrorisError lint pattern already covered by open contributor PRs.

Checklist

Please ensure the following tasks are completed before submitting this pull request.

AI Assistance

When authoring the changes proposed in this PR, did you use any kind of AI assistance?

  • Yes
  • No

If you answered "yes" above, how did you use AI assistance?

  • Code generation (e.g., when writing an implementation or fixing a bug)
  • Test/benchmark generation
  • Documentation (including examples)
  • Research and understanding

Disclosure

If you answered "yes" to using AI assistance, please provide a short disclosure indicating how you used AI assistance. This helps reviewers determine how much scrutiny to apply when reviewing your contribution. Example disclosures: "This PR was written primarily by Claude Code." or "I consulted ChatGPT to understand the codebase, but the proposed changes were fully authored manually by myself.".

This PR was generated by Claude Code as part of an automated fix-propagation routine: it mirrors fixes merged to develop in the last 24 hours onto sibling packages, with each target site validated by independent review passes before committing.


@stdlib-js/reviewers

🤖 Generated with Claude Code

https://claude.ai/code/session_014VaWNs1MWw1uPGEaQUWCSU


Generated by Claude Code

claude added 4 commits August 7, 2026 13:27
Propagates fix from d4eb315 ("docs: remove unused header in examples")
to sibling packages whose README C examples include
`stdlib/blas/base/shared.h` without using any of its symbols.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014VaWNs1MWw1uPGEaQUWCSU
Propagates fix from 1f1a165 ("bench: refactor to use dynamic memory
allocation in `stats/strided/smeanpw`") to sibling packages whose C
benchmarks allocate variable-length arrays on the stack.

Ref: #8643

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014VaWNs1MWw1uPGEaQUWCSU
Propagates fix from 58556f4 ("chore: clean-up") which const-qualified
parameters of sibling `ndarray/base/assert` C APIs; `is-contiguous`
was the only remaining non-const signature in the namespace.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014VaWNs1MWw1uPGEaQUWCSU
Propagates fix from cfbd29a ("chore: clean-up") which removed a
redundant `f32` wrapper around a `powf` call in
`math/base/special/frexpf` tests; `powf` already returns a value
rounded to single precision.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014VaWNs1MWw1uPGEaQUWCSU
@stdlib-bot stdlib-bot added the Good First PR A pull request resolving a Good First Issue. label Aug 7, 2026

Copy link
Copy Markdown
Member Author

CI status: the only red check is Calculate test coverage for PR packages, which hit the workflow's 30-minute timeout while serially building native add-ons and running tests for the 41 changed stats/strided packages — every test that ran before the cutoff passed (see the job log tail; e.g. svariance 18/18). All other checks are green, including Lint Changed Files, both Run affected tests jobs, and Run changed examples.

This is a capacity limit of the coverage workflow given the PR's package count, not a failure introduced by the diff, so there is nothing to fix in the changes themselves. If the timeout is a blocker for promoting this draft, the bench commit (0d2de10) can be split into two or three narrower PRs — happy to do that on request.


Generated by Claude Code

Copy link
Copy Markdown
Member Author

Update: Run affected benchmarks has now also failed, for the same reason as the coverage job — it hit its 60-minute workflow timeout partway through the 49 changed packages' benchmark suites. Every benchmark that executed before the cutoff passed, including the refactored malloc-based C length benchmarks, which all compiled and ran clean (the job was killed mid-run while executing blas/ext/base/svander, a README-only change in this PR).

Both red checks are workflow-capacity timeouts, not defects in the diff. The offer above stands: if green checks are wanted before promoting this draft, I can split the 41-package bench commit into two or three narrower PRs.


Generated by Claude Code

@kgryte
kgryte marked this pull request as ready for review August 7, 2026 22:51
@kgryte
kgryte requested a review from a team August 7, 2026 22:51
@stdlib-bot stdlib-bot added the Needs Review A pull request which needs code review. label Aug 7, 2026
@kgryte

kgryte commented Aug 7, 2026

Copy link
Copy Markdown
Member

As the CI failure is expected, I'll go ahead and merge.

@kgryte kgryte changed the title docs: propagate fixes across blas, stats/strided, ndarray, math chore: clean-up Aug 7, 2026
@kgryte
kgryte merged commit f19d370 into develop Aug 7, 2026
52 of 54 checks passed
@kgryte
kgryte deleted the philipp/fix-propagation-2026-08-07 branch August 7, 2026 22:52
@stdlib-bot stdlib-bot removed the Needs Review A pull request which needs code review. label Aug 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Good First PR A pull request resolving a Good First Issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants