Merged
Conversation
The `beta == 0` short-circuit incorrectly filled `y` with `alpha` instead of zero, producing `alpha + alpha*A*x` per element instead of `alpha*A*x` whenever `alpha != 0`. Mirror the sibling `dgemv`/`sgemv` pattern by filling with a complex zero. Also restore symmetric spacing around `*` in the `strideA1`/`strideA2` byte-stride calculations and add the missing `// MAIN //` section banner in `lib/ndarray.js`.
Restore the missing verb in the strided-array example introductory line so it reads "to compute differences of every other element".
…xample The first two lines inside `int main()` used 4-space indentation while the rest of the body uses 3 spaces. Re-indent for consistency with siblings (`dmeanwd`, `dmeanpn`, `dmeanpw`).
The wrapper returns the original `BooleanArray` input, but the JSDoc was changed to claim a `Uint8Array` return. Match the `@param` type and the actual return value.
Contributor
Coverage Report
The above coverage report was generated for the changes in this PR. |
kgryte
reviewed
Apr 22, 2026
kgryte
reviewed
Apr 22, 2026
Within the `beta == 0` branch, `beta` is already the complex zero, so pass it directly to `cfill` rather than allocating a `Complex64` per call. Drops the now-unused `Complex64` ctor import. Addresses review feedback on #11694.
kgryte
reviewed
Apr 22, 2026
Signed-off-by: Athan <kgryte@gmail.com>
Signed-off-by: Athan <kgryte@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Follow-up fixes for commits merged to
developbetween7a025ca7(2026-04-20 16:07:19 -0400) and1089250d(2026-04-21 03:37:01 -0700) — 49 first-parent commits in the window. Fixes are grouped by package, one commit per group.blas/base/cgemv(originating commitb3e5d1b5)beta == 0, they = beta*yshort-circuit fillsywithalphainstead of zero, producingalpha + alpha*A*xper element wheneveralpha != 0. Mirror thedgemv/sgemvpattern by passingnew Complex64( 0.0, 0.0 )tocfillso prior NaN values do not propagate (lib/base.jsL145–150).*in the byte-stride calculationssa1 = strideA1 * 2/sa2 = strideA2 * 2(lib/base.jsL163–164).// MAIN //section banner before the function JSDoc (lib/ndarray.jsL25–28).blas/ext/base/ddiff(originating commita0816279)to differences of every other element:→to compute differences of every other element:(README.mdL71).stats/base/ndarray/dmaxsorted(originating commit66e748fe)int main()of the C example used 4-space indentation while the rest of the body uses 3 spaces — re-indent for consistency with siblingdmeanwd/dmeanpn/dmeanpwREADMEs (README.mdL192–193).napi/argv-booleanarray(originating commite60e084f)e60e084fchanged@returnstoUint8Array, but the wrapper still returns the originalBooleanArrayv; only the reinterpreted view is passed to the addon. Revert the annotation toBooleanArrayto match the actual return value and the@param(lib/native.jsL34–35).Related Issues
This pull request has the following related issues:
Questions
No.
Other
Validation
blas/**,ndarray/**,napi/**,stats/**,math/**,_tools/eslint/**, READMEs touched by59d0640a.Excluded
mallocrefactor ([RFC]: replace static memory allocation of large arrays in C benchmarks with dynamic memory allocation (tracking issue) #8643) and JS-benchmarkformatrefactor ([RFC]: use string interpolation in JavaScript benchmarks for the benchmark name (tracking issue) #8647) are deliberate idiom migrations — not flagged.0b14ced4's localPImacro in place ofM_PIis intentional for portability — not flagged.1089250d'seslint-disable-next-line stdlib/no-new-arraysuppressions inmath/strided/special/sin-bytests are intentional (the test exercises sparse-array semantics) — not flagged.Checklist
AI Assistance
If you answered "yes" above, how did you use AI assistance?
Disclosure
This PR was authored by Claude Code as part of an automated commit-review pass over the prior 24 hours of
develop. Each finding was generated by parallel reviewer agents, filtered for high-signal-only issues (objective bugs, unambiguous style-guide violations, on-sight typos), and independently re-verified against the worktree before any fix was applied. A maintainer should audit before promoting from draft.@stdlib-js/reviewers