feat: Track full lib/ and dist/ build output in repository#139
Open
danielsimonjr wants to merge 12 commits intomasterfrom
Open
feat: Track full lib/ and dist/ build output in repository#139danielsimonjr wants to merge 12 commits intomasterfrom
danielsimonjr wants to merge 12 commits intomasterfrom
Conversation
Add comprehensive performance comparison benchmarks covering: - Matrix operations (multiply, add, transpose, inverse) - Linear algebra decompositions (LU, QR, Cholesky) - Signal processing (FFT, convolution) - Statistics (mean, std, variance, correlation, min/max) - Complex number operations - Eigenvalue computation (power iteration, symmetric) - Special functions (erf, gamma) - Vector norms (L1, L2, Infinity) - Geometry operations (3D distance, cross product) - Trigonometry (array operations) The benchmark compares JavaScript baseline, WASM, and WASM+SIMD implementations to identify performance characteristics and crossover points where WASM acceleration provides benefits. Run with: npx tsx test/benchmark/expanded_js_vs_wasm_benchmark.ts
The benchmark now properly loads three implementations: - Original JavaScript (lib/esm/) - Babel-compiled from JS source - TypeScript (dist/) - tsup-compiled from TS source - WASM (lib/wasm/) - AssemblyScript compiled This enables proper three-way comparison between the implementations.
Update .gitignore to track the original JavaScript build output in lib/esm/ while continuing to ignore other lib subdirectories. This enables proper comparison between original JS and WASM builds.
Include the Babel-compiled original JavaScript build output for performance comparison against TypeScript and WASM builds.
Add all compiled build outputs to enable benchmarking: - lib/esm/ - Original JavaScript (Babel-compiled ES modules) - lib/cjs/ - CommonJS build - lib/browser/ - Browser bundle (UMD) - lib/wasm/ - WebAssembly modules (AssemblyScript) - dist/ - TypeScript build (tsup-compiled) This enables direct comparison between JS, TS, and WASM implementations.
There was a problem hiding this comment.
Pull request overview
This PR checks in the generated build artifacts under lib/ (and related browser artifacts), making the full compiled CommonJS output and embedded docs available directly from the repository.
Changes:
- Adds compiled CommonJS modules for expression nodes/functions, errors, config, and entrypoints.
- Adds embedded documentation modules for a large set of functions/constants.
- Adds browser build metadata/artifacts (e.g.,
lib/browser/package.json, license file).
Reviewed changes
Copilot reviewed 296 out of 1361 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
| lib/cjs/expression/node/ParenthesisNode.js | Adds compiled ParenthesisNode implementation to the tracked build output. |
| lib/cjs/expression/function/{parser,evaluate,compile,help}.js | Adds compiled expression APIs to the tracked build output. |
| lib/cjs/expression/embeddedDocs/** | Adds generated embedded documentation modules for functions/constants. |
| lib/cjs/expression/Help.js | Adds compiled Help class used by embedded docs/help system. |
| lib/cjs/error/{IndexError,DimensionError,ArgumentsError}.js | Adds compiled error types to the tracked build output. |
| lib/cjs/core/{config.js,core/function/config.js} | Adds compiled configuration defaults and config function. |
| lib/cjs/entry/{mainAny,mainNumber,configReadonly,allFactoriesAny,allFactoriesNumber}.js | Adds compiled entrypoints and tree-shaking helpers. |
| lib/cjs/constants.js | Adds compiled constants factories. |
| lib/browser/package.json | Adds browser build package metadata. |
| lib/browser/math.js.LICENSE.txt | Adds license bundle metadata for the browser build. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.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.
No description provided.