mirror of
https://github.com/hyperdxio/hyperdx
synced 2026-04-21 13:37:15 +00:00
1323 commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
46daa63055
|
chore: add playwright agents for cursor and claude (#1847)
- Adds playwright agents for test creation with playwright mcp. - Enhances our playwright skill to make use of these - Updates contribution guide/readmes |
||
|
|
d032e54777
|
chore(deps): bump immutable from 4.2.4 to 4.3.8 (#1852)
Bumps [immutable](https://github.com/immutable-js/immutable-js) from 4.2.4 to 4.3.8. Sourced from <a/immutable-js/immutable-js/releases">immutable's releases</a>.</em></p> <blockquote> <h2>v4.3.8</h2> <p>Fix Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution') in immutable</p> <h2>v4.3.7</h2> <h2>What's Changed</h2> <ul> <li>Fix issue with slice negative of filtered sequence by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2006">immutable-js/immutable-js#2006</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/immutable-js/immutable-js/compare/v4.3.6...v4.3.7">https://github.com/immutable-js/immutable-js/compare/v4.3.6...v4.3.7</a></p> <h2>v4.3.6</h2> <h2>What's Changed</h2> <ul> <li>Fix Repeat(<!-- raw HTML omitted -->).equals(undefined) incorrectly returning true by <a href="https://github.com/butchler"><code>@butchler</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1994">immutable-js/immutable-js#1994</a></li> </ul> <h3>Internals</h3> <ul> <li>change youtube image by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1973">immutable-js/immutable-js#1973</a></li> <li>Upgrade eslint and ignore no-constructor-return rule for actual constructors by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1974">immutable-js/immutable-js#1974</a></li> <li>upgrate documentation website to next 14 by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1975">immutable-js/immutable-js#1975</a></li> <li>start migrating to nextjs app router by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1976">immutable-js/immutable-js#1976</a></li> <li>upgrade next sitemap by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1978">immutable-js/immutable-js#1978</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/butchler"><code>@butchler</code></a> made their first contribution in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1994">immutable-js/immutable-js#1994</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/immutable-js/immutable-js/compare/v4.3.5...v4.3.6">https://github.com/immutable-js/immutable-js/compare/v4.3.5...v4.3.6</a></p> <h2>v4.3.5</h2> <h2>What's Changed</h2> <ul> <li>Fix Set.fromKeys types with Map constructor in TS 5.0 by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1971">immutable-js/immutable-js#1971</a></li> <li>upgrade to TS 5.1 by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1972">immutable-js/immutable-js#1972</a></li> <li>fix dist-stats command by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1964">immutable-js/immutable-js#1964</a></li> <li>fix Read the Docs link on readme by <a href="https://github.com/joshding"><code>@joshding</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1970">immutable-js/immutable-js#1970</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/joshding"><code>@joshding</code></a> made their first contribution in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1970">immutable-js/immutable-js#1970</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/immutable-js/immutable-js/compare/v4.3.4...v4.3.5">https://github.com/immutable-js/immutable-js/compare/v4.3.4...v4.3.5</a></p> <h2>4.3.4</h2> <h2>What's Changed</h2> <ul> <li>Rollback toJS type due to circular reference error by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1958">immutable-js/immutable-js#1958</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/immutable-js/immutable-js/compare/v4.3.3...v4.3.4">https://github.com/immutable-js/immutable-js/compare/v4.3.3...v4.3.4</a></p> <h2>v4.3.3</h2> <h2>What's Changed</h2> <ul> <li>[typescript] manage to handle toJS circular reference. <a href="https://redirect.github.com/immutable-js/immutable-js/pull/1932">#1932</a> by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/immutable-js/immutable-js/blob/main/CHANGELOG.md">immutable's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <p>All notable changes to this project will be documented in this file.</p> <p>The format is based on <a href="https://keepachangelog.com/en/1.0.0/">Keep a Changelog</a>, and this project adheres to <a href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>. Dates are formatted as YYYY-MM-DD.</p> <h2>Unreleased</h2> <h2>5.1.5</h2> <ul> <li>Fix Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution') in immutable</li> </ul> <h2>5.1.4</h2> <ul> <li>Migrate some files to TS by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2125">immutable-js/immutable-js#2125</a> <ul> <li>Iterator.ts</li> <li>PairSorting.ts</li> <li>toJS.ts</li> <li>Math.ts</li> <li>Hash.ts</li> </ul> </li> <li>Extract CollectionHelperMethods and convert to TS by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2131">immutable-js/immutable-js#2131</a></li> <li>Use npm <a href="https://docs.npmjs.com/trusted-publishers">trusted publishing only</a> to avoid token stealing.</li> </ul> <h3>Documentation</h3> <ul> <li>Fix/a11y issues by <a href="https://github.com/lyannel"><code>@lyannel</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2136">immutable-js/immutable-js#2136</a></li> <li>Doc add Map.get signature update by <a href="https://github.com/borracciaBlu"><code>@borracciaBlu</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2138">immutable-js/immutable-js#2138</a></li> <li>fix(doc):minor-issues#2132 by <a href="https://github.com/JayMeDotDot"><code>@JayMeDotDot</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2133">immutable-js/immutable-js#2133</a></li> <li>Fix algolia search by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2135">immutable-js/immutable-js#2135</a></li> <li>Typo in OrderedMap by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2144">immutable-js/immutable-js#2144</a></li> </ul> <h3>Internal</h3> <ul> <li>chore: Sort all imports and activate eslint import rule by <a href="https://github.com/jdeniau"><code>@jdeniau</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2119">immutable-js/immutable-js#2119</a></li> </ul> <h2>5.1.3</h2> <h3>TypeScript</h3> <ul> <li>fix: allow readonly map entry constructor by <a href="https://github.com/septs"><code>@septs</code></a> in <a href="https://redirect.github.com/immutable-js/immutable-js/pull/2123">immutable-js/immutable-js#2123</a></li> </ul> <h3>Documentation</h3> <p>There has been a huge amount of changes in the documentation, mainly migrate from an autogenerated documentation from .d.ts file, to a proper documentation in markdown. The playground has been included on nearly all method examples. We added a page about browser extensions too: <a href="https://immutable-js.com/browser-extension/">https://immutable-js.com/browser-extension/</a></p> <h3>Internal</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
20561c703a
|
chore: add tests for team page (#1848)
Adds playwright tests for the team page |
||
|
|
6d7327aba0
|
chore: add tests for alerts (#1844)
## Summary Adds playwright tests for alert creation from saved searches and dashboards |
||
|
|
d661c80903
|
fix: Add better URL encoding for query params with special characters (#1794)
Adds custom nuqs parsers (parseAsStringEncoded, parseAsJsonEncoded) that pre-encode values with encodeURIComponent, producing %XX sequences instead of + form-encoding. This protects against re-encoding + to %2B when sharing links, which was causing ClickHouse query errors when accessed from tools like Microsoft Teams. Backward compatible: parsers fall back to plain JSON.parse for old-format URLs. Test: - New URLs - Grab a play.hyperdx.io URL and change the source and domain in the URL. Proves "old" URLS still work. I verified that links generated from this branch work as intended in Microsoft Teams, which was the original source of this report. Fixes: HDX-3184 |
||
|
|
f889c34997
|
chore: separate timeline components to own modules, fix lint issues (#1813)
Closes HDX-3518 ## Changes - Separates the different Timeline related components into their own modules inside `packages/app/src/components/TimelineChart`. - Fixes lint and TS errors / warnings. ## Testing - Trace waterfall view should work just like before. |
||
|
|
53a4b67262
|
chore: update otel collector base image to 0.147.0 (#1845)
## Summary - Bump OpenTelemetry Collector base images (`opentelemetry-collector-contrib` and `opentelemetry-collector-opampsupervisor`) from **0.145.0** to **0.147.0** - Updated in both `docker/otel-collector/Dockerfile` and `docker/hyperdx/Dockerfile` |
||
|
|
cabe4d8edc
|
fix: add whereLanguage to tile alerts (#1842)
## Summary - Fix tile alerts to support `groupBy` for Gauge/Sum metrics — each group-by value appears as its own column in the response - Add missing `whereLanguage` to tile alert config so Lucene WHERE conditions are parsed correctly - Replace stale fixture-based ClickHouse schema with otel-collector's canonical schema in integration tests Ref: HDX-3576 |
||
|
|
daab2cace1
|
feat: support saved query/filter values in external api (#1814)
In https://github.com/hyperdxio/hyperdx/pull/1584 we added saved default query/filter values support to dashboards. This PR extends that support to the external API. Fixes HDX-3519 |
||
|
|
f5828d1bfa
|
feat: field filtering and priority classification (#1835)
Co-authored-by: Alex Fedotyev <alex@Alexs-CH-Mac.localdomain> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Co-authored-by: Tom Alexander <teeohhem@gmail.com> |
||
|
|
c5173ba2c5
|
fix: tile alerts with groupBy now correctly track and display group names (#1841)
## Summary - **Fix tile alert group-by detection**: Tile alerts stored `groupBy` on `tile.config.groupBy`, but `processAlert` only checked `alert.groupBy` (which is only set for saved search alerts). This caused all groups to collapse into an empty string, producing messages like `Alert for "" in "My Dashboard"` instead of showing the actual group name. - **Extract `alertHasGroupBy()` helper**: Centralized the group-by detection logic into a single exported function that checks both `alert.groupBy` (saved search alerts) and `tile.config.groupBy` (tile alerts). - **Pass `isGroupedAlert` to template**: Ensures correct event ID generation for grouped tile alerts, removing the stale `alert.groupBy`-only check in `template.ts`. - **Enable 1m alert interval in dev mode**: Added the `1m` option to `TILE_ALERT_INTERVAL_OPTIONS` when `IS_DEV` is true. Ref: HDX-3576 |
||
|
|
bbb1f1f04d
|
feat: chart UX polish & heatmap fixes (#1834)
## Summary Closes #1823 - **PropertyComparisonChart**: Typed tooltip (replaces `any` props), `TruncatedTick` custom XAxis tick with native SVG tooltip for long attribute labels, per-bar `Cell` coloring for the "Other" aggregated bucket, CSS ellipsis on chart titles - **deltaChartUtils**: `applyTopNAggregation()` with adaptive threshold (shows all values up to 8, collapses beyond 6 into "Other (N)"), color constants (`ALL_SPANS_COLOR`, `OTHER_BUCKET_COLOR`) - **DBHeatmapChart**: Fix tooltip showing on page load (`mouseInsideRef` gate for uPlot `setCursor` init), fix invalid `rgba(#hex ...)` CSS syntax (2 occurrences), fix tooltip overflow near right edge (flip at 50% width, add `maxWidth`), ignore zero-size selections, red selection rectangle color for heatmap (scoped CSS), keyboard accessibility on "Filter by Selection" button - **Tests**: 8 unit tests for `applyTopNAggregation` covering adaptive threshold, top-N sorting, Other bucket accumulation ## Test plan - [ ] Verify heatmap tooltip no longer appears on initial page load (before hovering) - [ ] Verify tooltip flips correctly near the right edge without overflow - [ ] Verify heatmap selection rectangle is red (not green) - [ ] Verify "Filter by Selection" button is keyboard-accessible (Tab + Enter) - [ ] Verify attribute charts show "Other (N)" bucket for high-cardinality fields - [ ] Verify truncated axis labels show full text on hover (native tooltip) - [ ] Run `npx jest src/components/__tests__/deltaChartUtils.test.ts` — 8 tests pass 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
680388f60d
|
feat: add hover X button on column headers to remove columns in search mode (#1817)
Adds an inline remove (X) button that appears on hover for each column header in the search results table. Clicking it removes the column from the SELECT statement without needing to edit the query manually. Closes #1784 Generated with [Claude Code](https://claude.ai/code) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
260c429908
|
feat: Improve validation of external alerts API input (#1833)
Co-authored-by: Tom Alexander <teeohhem@gmail.com> |
||
|
|
181d8d5409
|
chore: update claude code review with tracking (#1838) | ||
|
|
ef2646650e
|
test: Backport Claude E2E Skill (#1836)
## Summary This PR backports the claude E2E skill and a few E2E script improvements to the open source repo from the EE repo. ### Screenshots or video ### How to test locally or on Vercel ### References - Linear Issue: n/a - Related PRs: |
||
|
|
d810eb210e
|
Add PR template (#1820)
## Summary Add a PR template. The idea is to make PR changesets accessible to people who may not be aware of all areas of the product, so in a way it also helps with their understanding. Also applies with any new team members we may onboard. |
||
|
|
afd39d1248
|
chore(deps): bump rollup from 4.35.0 to 4.59.0 (#1809)
Bumps [rollup](https://github.com/rollup/rollup) from 4.35.0 to 4.59.0. Sourced from <a href="https://github.com/rollup/rollup/releases">rollup's releases</a>.</em></p> <blockquote> <h2>v4.59.0</h2> <h2>4.59.0</h2> <p><em>2026-02-22</em></p> <h3>Features</h3> <ul> <li>Throw when the generated bundle contains paths that would leave the output directory (<a href="https://redirect.github.com/rollup/rollup/issues/6276">#6276</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6275">#6275</a>: Validate bundle stays within output dir (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>v4.58.0</h2> <h2>4.58.0</h2> <p><em>2026-02-20</em></p> <h3>Features</h3> <ul> <li>Also support <code>__NO_SIDE_EFFECTS__</code> annotation before variable declarations declaring function expressions (<a href="https://redirect.github.com/rollup/rollup/issues/6272">#6272</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6256">#6256</a>: docs: document PreRenderedChunk properties including isDynamicEntry and isImplicitEntry (<a href="https://github.com/njg7194"><code>@njg7194</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6259">#6259</a>: docs: Correct typo and improve sentence structure in docs for <code>output.experimentalMinChunkSize</code> (<a href="https://github.com/millerick"><code>@millerick</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6260">#6260</a>: fix(deps): update rust crate swc_compiler_base to v47 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6261">#6261</a>: fix(deps): lock file maintenance minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6262">#6262</a>: Avoid unnecessary cloning of the code string (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6263">#6263</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6265">#6265</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6267">#6267</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6268">#6268</a>: chore(deps): update dependency eslint-plugin-unicorn to v63 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6269">#6269</a>: chore(deps): update dependency lru-cache to v11 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6270">#6270</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6272">#6272</a>: forward NO_SIDE_EFFECTS annotations to function expressions in variable declarations (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>v4.57.1</h2> <h2>4.57.1</h2> <p><em>2026-01-30</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix heap corruption issue in Windows (<a href="https://redirect.github.com/rollup/rollup/issues/6251">#6251</a>)</li> <li>Ensure exports of a dynamic import are fully included when called from a try...catch (<a href="https://redirect.github.com/rollup/rollup/issues/6254">#6254</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6251">#6251</a>: fix: Isolate and cache <code>process.report.getReport()</code> calls in a child process for robust environment detection (<a href="https://github.com/alan-agius4"><code>@alan-agius4</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's changelog</a>.</em></p> <blockquote> <h2>4.59.0</h2> <p><em>2026-02-22</em></p> <h3>Features</h3> <ul> <li>Throw when the generated bundle contains paths that would leave the output directory (<a href="https://redirect.github.com/rollup/rollup/issues/6276">#6276</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6275">#6275</a>: Validate bundle stays within output dir (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>4.58.0</h2> <p><em>2026-02-20</em></p> <h3>Features</h3> <ul> <li>Also support <code>__NO_SIDE_EFFECTS__</code> annotation before variable declarations declaring function expressions (<a href="https://redirect.github.com/rollup/rollup/issues/6272">#6272</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6256">#6256</a>: docs: document PreRenderedChunk properties including isDynamicEntry and isImplicitEntry (<a href="https://github.com/njg7194"><code>@njg7194</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6259">#6259</a>: docs: Correct typo and improve sentence structure in docs for <code>output.experimentalMinChunkSize</code> (<a href="https://github.com/millerick"><code>@millerick</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6260">#6260</a>: fix(deps): update rust crate swc_compiler_base to v47 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6261">#6261</a>: fix(deps): lock file maintenance minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6262">#6262</a>: Avoid unnecessary cloning of the code string (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6263">#6263</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6265">#6265</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6267">#6267</a>: fix(deps): update minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6268">#6268</a>: chore(deps): update dependency eslint-plugin-unicorn to v63 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6269">#6269</a>: chore(deps): update dependency lru-cache to v11 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6270">#6270</a>: chore(deps): lock file maintenance (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6272">#6272</a>: forward NO_SIDE_EFFECTS annotations to function expressions in variable declarations (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <h2>4.57.1</h2> <p><em>2026-01-30</em></p> <h3>Bug Fixes</h3> <ul> <li>Fix heap corruption issue in Windows (<a href="https://redirect.github.com/rollup/rollup/issues/6251">#6251</a>)</li> <li>Ensure exports of a dynamic import are fully included when called from a try...catch (<a href="https://redirect.github.com/rollup/rollup/issues/6254">#6254</a>)</li> </ul> <h3>Pull Requests</h3> <ul> <li><a href="https://redirect.github.com/rollup/rollup/pull/6251">#6251</a>: fix: Isolate and cache <code>process.report.getReport()</code> calls in a child process for robust environment detection (<a href="https://github.com/alan-agius4"><code>@alan-agius4</code></a>, <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6252">#6252</a>: chore(deps): update dependency lru-cache to v11 (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot])</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6253">#6253</a>: chore(deps): lock file maintenance minor/patch updates (<a href="https://github.com/renovate"><code>@renovate</code></a>[bot], <a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> <li><a href="https://redirect.github.com/rollup/rollup/pull/6254">#6254</a>: Fully include dynamic imports in a try-catch (<a href="https://github.com/lukastaegert"><code>@lukastaegert</code></a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
174d87798c
|
chore: claude gh action for better output (#1779) | ||
|
|
a6c88b5818
|
chore(deps-dev): bump storybook from 10.1.10 to 10.2.10 (#1815)
Bumps [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/core) from 10.1.10 to 10.2.10. Sourced from <a href="https://github.com/storybookjs/storybook/releases">storybook's releases</a>.</em></p> <blockquote> <h2>v10.2.10</h2> <h2>10.2.10</h2> <ul> <li>Core: Require token for websocket connections - <a href="https://redirect.github.com/storybookjs/storybook/pull/33820">#33820</a>, thanks <a href="https://github.com/ghengeveld"><code>@ghengeveld</code></a>!</li> </ul> <h2>v10.2.9</h2> <h2>10.2.9</h2> <ul> <li>Addon-Vitest: Improve config file detection in monorepos - <a href="https://redirect.github.com/storybookjs/storybook/pull/33814">#33814</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Builder-Vite: Update dependencies react-vite framework - <a href="https://redirect.github.com/storybookjs/storybook/pull/33810">#33810</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Builder-Vite: Use relative path for mocker entry in production builds - <a href="https://redirect.github.com/storybookjs/storybook/pull/33792">#33792</a>, thanks <a href="https://github.com/DukeDeSouth"><code>@DukeDeSouth</code></a>!</li> <li>Next.js: Fix Link component override in appDirectory configuration - <a href="https://redirect.github.com/storybookjs/storybook/pull/31251">#31251</a>, thanks <a href="https://github.com/yatishgoel"><code>@yatishgoel</code></a>!</li> </ul> <h2>v10.2.8</h2> <h2>10.2.8</h2> <ul> <li>Telemetry: Add Expo metaframework - <a href="https://redirect.github.com/storybookjs/storybook/pull/33783">#33783</a>, thanks <a href="https://github.com/copilot-swe-agent"><code>@copilot-swe-agent</code></a>!</li> <li>Telemetry: Add init exit event - <a href="https://redirect.github.com/storybookjs/storybook/pull/33773">#33773</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Telemetry: Add share events - <a href="https://redirect.github.com/storybookjs/storybook/pull/33766">#33766</a>, thanks <a href="https://github.com/ndelangen"><code>@ndelangen</code></a>!</li> <li>Test: Update event creation logic in user-event package - <a href="https://redirect.github.com/storybookjs/storybook/pull/33787">#33787</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> </ul> <h2>v10.2.7</h2> <h2>10.2.7</h2> <ul> <li>CSF: Fix cross-file story imports in csf-factories codemod - <a href="https://redirect.github.com/storybookjs/storybook/pull/33723">#33723</a>, thanks <a href="https://github.com/yatishgoel"><code>@yatishgoel</code></a>!</li> <li>Core: Fix rendering of View Transitions in Firefox - <a href="https://redirect.github.com/storybookjs/storybook/pull/33651">#33651</a>, thanks <a href="https://github.com/ghengeveld"><code>@ghengeveld</code></a>!</li> <li>Globals: Repair dynamicTitle: false for user-defined tools - <a href="https://redirect.github.com/storybookjs/storybook/pull/33284">#33284</a>, thanks <a href="https://github.com/ia319"><code>@ia319</code></a>!</li> <li>Logger: Honor --loglevel for npmlog output - <a href="https://redirect.github.com/storybookjs/storybook/pull/33776">#33776</a>, thanks <a href="https://github.com/LouisLau-art"><code>@LouisLau-art</code></a>!</li> </ul> <h2>v10.2.6</h2> <h2>10.2.6</h2> <ul> <li>Addon-Vitest: Skip postinstall setup when configured - <a href="https://redirect.github.com/storybookjs/storybook/pull/33712">#33712</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Addon-Vitest: Support vite/vitest config with deferred export - <a href="https://redirect.github.com/storybookjs/storybook/pull/33755">#33755</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>CLI: Support addon-vitest setup when --skip-install is passed - <a href="https://redirect.github.com/storybookjs/storybook/pull/33718">#33718</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Manager: Update logic to use base path instead of full pathname - <a href="https://redirect.github.com/storybookjs/storybook/pull/33686">#33686</a>, thanks <a href="https://github.com/JSMike"><code>@JSMike</code></a>!</li> </ul> <h2>v10.2.5</h2> <h2>10.2.5</h2> <ul> <li>Angular: fix --loglevel options in docs and descriptions - <a href="https://redirect.github.com/storybookjs/storybook/pull/33726">#33726</a>, thanks <a href="https://github.com/theRuslan"><code>@theRuslan</code></a>!</li> <li>Builder-Vite: Add plugin to enforce Storybook's output directory in Vite build configuration - <a href="https://redirect.github.com/storybookjs/storybook/pull/33740">#33740</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Core: Invalidate cache on Storybook version upgrade - <a href="https://redirect.github.com/storybookjs/storybook/pull/33717">#33717</a>, thanks <a href="https://github.com/copilot-swe-agent"><code>@copilot-swe-agent</code></a>!</li> </ul> <h2>v10.2.4</h2> <h2>10.2.4</h2> <ul> <li>CSF-Factories: Fix codemod for preview files without exports - <a href="https://redirect.github.com/storybookjs/storybook/pull/33673">#33673</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>CSF: Fix false positive detection of Zod v4 .meta() as CSF Factory - <a href="https://redirect.github.com/storybookjs/storybook/pull/33666">#33666</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>CSFFactories: Add non-interactive mode and --glob flag - <a href="https://redirect.github.com/storybookjs/storybook/pull/33648">#33648</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md">storybook's changelog</a>.</em></p> <blockquote> <h2>10.2.10</h2> <ul> <li>Core: Require token for websocket connections - <a href="https://redirect.github.com/storybookjs/storybook/pull/33820">#33820</a>, thanks <a href="https://github.com/ghengeveld"><code>@ghengeveld</code></a>!</li> </ul> <h2>10.2.9</h2> <ul> <li>Addon-Vitest: Improve config file detection in monorepos - <a href="https://redirect.github.com/storybookjs/storybook/pull/33814">#33814</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Builder-Vite: Update dependencies react-vite framework - <a href="https://redirect.github.com/storybookjs/storybook/pull/33810">#33810</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Builder-Vite: Use relative path for mocker entry in production builds - <a href="https://redirect.github.com/storybookjs/storybook/pull/33792">#33792</a>, thanks <a href="https://github.com/DukeDeSouth"><code>@DukeDeSouth</code></a>!</li> <li>Next.js: Fix Link component override in appDirectory configuration - <a href="https://redirect.github.com/storybookjs/storybook/pull/31251">#31251</a>, thanks <a href="https://github.com/yatishgoel"><code>@yatishgoel</code></a>!</li> </ul> <h2>10.2.8</h2> <ul> <li>Telemetry: Add Expo metaframework - <a href="https://redirect.github.com/storybookjs/storybook/pull/33783">#33783</a>, thanks <a href="https://github.com/copilot-swe-agent"><code>@copilot-swe-agent</code></a>!</li> <li>Telemetry: Add init exit event - <a href="https://redirect.github.com/storybookjs/storybook/pull/33773">#33773</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Telemetry: Add share events - <a href="https://redirect.github.com/storybookjs/storybook/pull/33766">#33766</a>, thanks <a href="https://github.com/ndelangen"><code>@ndelangen</code></a>!</li> <li>Test: Update event creation logic in user-event package - <a href="https://redirect.github.com/storybookjs/storybook/pull/33787">#33787</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> </ul> <h2>10.2.7</h2> <ul> <li>CSF: Fix cross-file story imports in csf-factories codemod - <a href="https://redirect.github.com/storybookjs/storybook/pull/33723">#33723</a>, thanks <a href="https://github.com/yatishgoel"><code>@yatishgoel</code></a>!</li> <li>Core: Fix rendering of View Transitions in Firefox - <a href="https://redirect.github.com/storybookjs/storybook/pull/33651">#33651</a>, thanks <a href="https://github.com/ghengeveld"><code>@ghengeveld</code></a>!</li> <li>Globals: Repair dynamicTitle: false for user-defined tools - <a href="https://redirect.github.com/storybookjs/storybook/pull/33284">#33284</a>, thanks <a href="https://github.com/ia319"><code>@ia319</code></a>!</li> <li>Logger: Honor --loglevel for npmlog output - <a href="https://redirect.github.com/storybookjs/storybook/pull/33776">#33776</a>, thanks <a href="https://github.com/LouisLau-art"><code>@LouisLau-art</code></a>!</li> </ul> <h2>10.2.6</h2> <ul> <li>Addon-Vitest: Skip postinstall setup when configured - <a href="https://redirect.github.com/storybookjs/storybook/pull/33712">#33712</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Addon-Vitest: Support vite/vitest config with deferred export - <a href="https://redirect.github.com/storybookjs/storybook/pull/33755">#33755</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>CLI: Support addon-vitest setup when --skip-install is passed - <a href="https://redirect.github.com/storybookjs/storybook/pull/33718">#33718</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Manager: Update logic to use base path instead of full pathname - <a href="https://redirect.github.com/storybookjs/storybook/pull/33686">#33686</a>, thanks <a href="https://github.com/JSMike"><code>@JSMike</code></a>!</li> </ul> <h2>10.2.5</h2> <ul> <li>Angular: fix --loglevel options in docs and descriptions - <a href="https://redirect.github.com/storybookjs/storybook/pull/33726">#33726</a>, thanks <a href="https://github.com/theRuslan"><code>@theRuslan</code></a>!</li> <li>Builder-Vite: Add plugin to enforce Storybook's output directory in Vite build configuration - <a href="https://redirect.github.com/storybookjs/storybook/pull/33740">#33740</a>, thanks <a href="https://github.com/valentinpalkovic"><code>@valentinpalkovic</code></a>!</li> <li>Core: Invalidate cache on Storybook version upgrade - <a href="https://redirect.github.com/storybookjs/storybook/pull/33717">#33717</a>, thanks <a href="https://github.com/copilot-swe-agent"><code>@copilot-swe-agent</code></a>!</li> </ul> <h2>10.2.4</h2> <ul> <li>CSF-Factories: Fix codemod for preview files without exports - <a href="https://redirect.github.com/storybookjs/storybook/pull/33673">#33673</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>CSF: Fix false positive detection of Zod v4 .meta() as CSF Factory - <a href="https://redirect.github.com/storybookjs/storybook/pull/33666">#33666</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>CSFFactories: Add non-interactive mode and --glob flag - <a href="https://redirect.github.com/storybookjs/storybook/pull/33648">#33648</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>CSFFactories: Preserve leading comments when adding imports - <a href="https://redirect.github.com/storybookjs/storybook/pull/33645">#33645</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>Codemod: Fix csf-2-to-3 failing due to quoted filenames - <a href="https://redirect.github.com/storybookjs/storybook/pull/33646">#33646</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>Codemod: Fix glob pattern handling on Windows - <a href="https://redirect.github.com/storybookjs/storybook/pull/33714">#33714</a>, thanks <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>!</li> <li>Manager: Remove deprecated <code>active</code> prop warning in ZoomButton - <a href="https://redirect.github.com/storybookjs/storybook/pull/33697">#33697</a>, thanks <a href="https://github.com/yatishgoel"><code>@yatishgoel</code></a>!</li> <li>Next.js: Alias AppRouterContext to shared runtime to fix Link navigation - <a href="https://redirect.github.com/storybookjs/storybook/pull/33419">#33419</a>, thanks <a href="https://github.com/pallaprolus"><code>@pallaprolus</code></a>!</li> </ul> <h2>10.2.3</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
8a4ca3029c
|
build(deps): bump semver from 5.7.1 to 7.7.3 (#1702)
Bumps [semver](https://github.com/npm/node-semver) from 5.7.1 to 7.7.3. Sourced from <a href="https://github.com/npm/node-semver/releases">semver's releases</a>.</em></p> <blockquote> <h2>v7.7.3</h2> <h2><a href="https://github.com/npm/node-semver/compare/v7.7.2...v7.7.3">7.7.3</a> (2025-10-06)</h2> <h3>Bug Fixes</h3> <ul> <li><a href=" |
||
|
|
65b9f6bfb1
|
build(deps): bump webpack from 5.91.0 to 5.105.0 (#1707)
Bumps [webpack](https://github.com/webpack/webpack) from 5.91.0 to 5.105.0. Sourced from <a href="https://github.com/webpack/webpack/releases">webpack's releases</a>.</em></p> <blockquote> <h2>v5.105.0</h2> <h3>Minor Changes</h3> <ul> <li> <p>Allow resolving worker module by export condition name when using <code>new Worker()</code> (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20353">#20353</a>)</p> </li> <li> <p>Detect conditional imports to avoid compile-time linking errors for non-existent exports. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20320">#20320</a>)</p> </li> <li> <p>Added the <code>tsconfig</code> option for the <code>resolver</code> options (replacement for <code>tsconfig-paths-webpack-plugin</code>). Can be <code>false</code> (disabled), <code>true</code> (use the default <code>tsconfig.json</code> file to search for it), a string path to <code>tsconfig.json</code>, or an object with <code>configFile</code> and <code>references</code> options. (by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20400">#20400</a>)</p> </li> <li> <p>Support <code>import.defer()</code> for context modules. (by <a href="https://github.com/ahabhgk"><code>@ahabhgk</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20399">#20399</a>)</p> </li> <li> <p>Added support for array values to the <code>devtool</code> option. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20191">#20191</a>)</p> </li> <li> <p>Improve rendering node built-in modules for ECMA module output. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20255">#20255</a>)</p> </li> <li> <p>Unknown import.meta properties are now determined at runtime instead of being statically analyzed at compile time. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20312">#20312</a>)</p> </li> </ul> <h3>Patch Changes</h3> <ul> <li> <p>Fixed ESM default export handling for <code>.mjs</code> files in Module Federation (by <a href="https://github.com/y-okt"><code>@y-okt</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20189">#20189</a>)</p> </li> <li> <p>Optimized <code>import.meta.env</code> handling in destructuring assignments by using cached stringified environment definitions. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20313">#20313</a>)</p> </li> <li> <p>Respect the <code>stats.errorStack</code> option in stats output. (by <a href="https://github.com/samarthsinh2660"><code>@samarthsinh2660</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20258">#20258</a>)</p> </li> <li> <p>Fixed a bug where declaring a <code>module</code> variable in module scope would conflict with the default <code>moduleArgument</code>. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20265">#20265</a>)</p> </li> <li> <p>Fix VirtualUrlPlugin to set resourceData.context for proper module resolution. Previously, when context was not set, it would fallback to the virtual scheme path (e.g., <code>virtual:routes</code>), which is not a valid filesystem path, causing subsequent resolve operations to fail. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20390">#20390</a>)</p> </li> <li> <p>Fixed Worker self-import handling to support various URL patterns (e.g., <code>import.meta.url</code>, <code>new URL(import.meta.url)</code>, <code>new URL(import.meta.url, import.meta.url)</code>, <code>new URL("./index.js", import.meta.url)</code>). Workers that resolve to the same module are now properly deduplicated, regardless of the URL syntax used. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20381">#20381</a>)</p> </li> <li> <p>Reuse the same async entrypoint for the same Worker URL within a module to avoid circular dependency warnings when multiple Workers reference the same resource. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20345">#20345</a>)</p> </li> <li> <p>Fixed a bug where a self-referencing dependency would have an unused export name when imported inside a web worker. (by <a href="https://github.com/samarthsinh2660"><code>@samarthsinh2660</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20251">#20251</a>)</p> </li> <li> <p>Fix missing export generation when concatenated modules in different chunks share the same runtime in module library bundles. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20346">#20346</a>)</p> </li> <li> <p>Fixed <code>import.meta.env.xxx</code> behavior: when accessing a non-existent property, it now returns empty object instead of full object at runtime. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20289">#20289</a>)</p> </li> <li> <p>Improved parsing error reporting by adding a link to the loader documentation. (by <a href="https://github.com/gaurav10gg"><code>@gaurav10gg</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20244">#20244</a>)</p> </li> <li> <p>Fix typescript types. (by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20305">#20305</a>)</p> </li> <li> <p>Add declaration for unused harmony import specifier. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20286">#20286</a>)</p> </li> <li> <p>Fix compressibility of modules while retaining portability. (by <a href="https://github.com/dmichon-msft"><code>@dmichon-msft</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20287">#20287</a>)</p> </li> <li> <p>Optimize source map generation: only include <code>ignoreList</code> property when it has content, avoiding empty arrays in source maps. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20319">#20319</a>)</p> </li> <li> <p>Preserve star exports for dependencies in ECMA module output. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20293">#20293</a>)</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/webpack/webpack/blob/main/CHANGELOG.md">webpack's changelog</a>.</em></p> <blockquote> <h2>5.105.0</h2> <h3>Minor Changes</h3> <ul> <li> <p>Allow resolving worker module by export condition name when using <code>new Worker()</code> (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20353">#20353</a>)</p> </li> <li> <p>Detect conditional imports to avoid compile-time linking errors for non-existent exports. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20320">#20320</a>)</p> </li> <li> <p>Added the <code>tsconfig</code> option for the <code>resolver</code> options (replacement for <code>tsconfig-paths-webpack-plugin</code>). Can be <code>false</code> (disabled), <code>true</code> (use the default <code>tsconfig.json</code> file to search for it), a string path to <code>tsconfig.json</code>, or an object with <code>configFile</code> and <code>references</code> options. (by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20400">#20400</a>)</p> </li> <li> <p>Support <code>import.defer()</code> for context modules. (by <a href="https://github.com/ahabhgk"><code>@ahabhgk</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20399">#20399</a>)</p> </li> <li> <p>Added support for array values to the <code>devtool</code> option. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20191">#20191</a>)</p> </li> <li> <p>Improve rendering node built-in modules for ECMA module output. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20255">#20255</a>)</p> </li> <li> <p>Unknown import.meta properties are now determined at runtime instead of being statically analyzed at compile time. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20312">#20312</a>)</p> </li> </ul> <h3>Patch Changes</h3> <ul> <li> <p>Fixed ESM default export handling for <code>.mjs</code> files in Module Federation (by <a href="https://github.com/y-okt"><code>@y-okt</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20189">#20189</a>)</p> </li> <li> <p>Optimized <code>import.meta.env</code> handling in destructuring assignments by using cached stringified environment definitions. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20313">#20313</a>)</p> </li> <li> <p>Respect the <code>stats.errorStack</code> option in stats output. (by <a href="https://github.com/samarthsinh2660"><code>@samarthsinh2660</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20258">#20258</a>)</p> </li> <li> <p>Fixed a bug where declaring a <code>module</code> variable in module scope would conflict with the default <code>moduleArgument</code>. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20265">#20265</a>)</p> </li> <li> <p>Fix VirtualUrlPlugin to set resourceData.context for proper module resolution. Previously, when context was not set, it would fallback to the virtual scheme path (e.g., <code>virtual:routes</code>), which is not a valid filesystem path, causing subsequent resolve operations to fail. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20390">#20390</a>)</p> </li> <li> <p>Fixed Worker self-import handling to support various URL patterns (e.g., <code>import.meta.url</code>, <code>new URL(import.meta.url)</code>, <code>new URL(import.meta.url, import.meta.url)</code>, <code>new URL("./index.js", import.meta.url)</code>). Workers that resolve to the same module are now properly deduplicated, regardless of the URL syntax used. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20381">#20381</a>)</p> </li> <li> <p>Reuse the same async entrypoint for the same Worker URL within a module to avoid circular dependency warnings when multiple Workers reference the same resource. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20345">#20345</a>)</p> </li> <li> <p>Fixed a bug where a self-referencing dependency would have an unused export name when imported inside a web worker. (by <a href="https://github.com/samarthsinh2660"><code>@samarthsinh2660</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20251">#20251</a>)</p> </li> <li> <p>Fix missing export generation when concatenated modules in different chunks share the same runtime in module library bundles. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20346">#20346</a>)</p> </li> <li> <p>Fixed <code>import.meta.env.xxx</code> behavior: when accessing a non-existent property, it now returns empty object instead of full object at runtime. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20289">#20289</a>)</p> </li> <li> <p>Improved parsing error reporting by adding a link to the loader documentation. (by <a href="https://github.com/gaurav10gg"><code>@gaurav10gg</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20244">#20244</a>)</p> </li> <li> <p>Fix typescript types. (by <a href="https://github.com/alexander-akait"><code>@alexander-akait</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20305">#20305</a>)</p> </li> <li> <p>Add declaration for unused harmony import specifier. (by <a href="https://github.com/hai-x"><code>@hai-x</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20286">#20286</a>)</p> </li> <li> <p>Fix compressibility of modules while retaining portability. (by <a href="https://github.com/dmichon-msft"><code>@dmichon-msft</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20287">#20287</a>)</p> </li> <li> <p>Optimize source map generation: only include <code>ignoreList</code> property when it has content, avoiding empty arrays in source maps. (by <a href="https://github.com/xiaoxiaojx"><code>@xiaoxiaojx</code></a> in <a href="https://redirect.github.com/webpack/webpack/pull/20319">#20319</a>)</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
d4aa6008d6
|
refactor: extract deltaChartUtils and PropertyComparisonChart from DBDeltaChart (#1831)
## Summary Fixes #1830 Pure refactor — **zero behavior change**. Extracts inline utility functions and the `PropertyComparisonChart` component from `DBDeltaChart.tsx` (601 lines) into separate files. ## Changes | Action | File | Lines | |--------|------|-------| | **NEW** | `deltaChartUtils.ts` | 107 lines — `flattenData`, `getPropertyStatistics`, `mergeValueStatisticsMaps` | | **NEW** | `PropertyComparisonChart.tsx` | 130 lines — `PropertyComparisonChart`, `HDXBarChartTooltip`, layout constants | | **MODIFIED** | `DBDeltaChart.tsx` | 601 → 344 lines — inline code replaced with imports | **+257 / -257** — exact symmetry confirming this is a pure move. ## Why `DBDeltaChart.tsx` at 601 lines violates the 300-line guideline. More importantly, extracting into separate files enables the Event Deltas improvement series (#1823–#1829) to add features to clean, focused files instead of one monolith. ## Review guidance This is a **move-only refactor**. To verify: 1. `deltaChartUtils.ts` contains the exact functions from lines 52–156 of the old `DBDeltaChart.tsx`, now exported 2. `PropertyComparisonChart.tsx` contains the exact component from lines 158–259 and constants from lines 261–271, now exported 3. `DBDeltaChart.tsx` imports from the new files — no logic changes ## Test plan - [ ] Existing E2E tests pass - [ ] Event Deltas comparison view works identically - [ ] No visual changes 🤖 Generated with [Claude Code](https://claude.com/claude-code) |
||
|
|
705dd1b79b
|
fix: Allow implicit column lucene search on services dashboard (#1821)
Closes HDX-3520 # Summary This PR fixes errors on the services dashboard page when using lucene search over the implicit column (eg. searching for `POST` instead of `SpanName:POST`). This PR also adds an E2E test for the scenario, some agent docs covering E2E testing, and adds a minWidth to the services dashboard search input so that it does not shrink down to 0 width on small page widths: ## Before Charts error due to implicit column search <img width="1746" height="1172" alt="Screenshot 2026-02-27 at 11 29 05 AM" src="https://github.com/user-attachments/assets/00f9e914-379d-4099-8399-69157c8b4ac6" /> Search input is hidden due to small page width <img width="972" height="153" alt="Screenshot 2026-02-27 at 11 28 55 AM" src="https://github.com/user-attachments/assets/ccb75d90-60e1-4dd6-be12-e21574319b26" /> ## After Implicit column is set according to the source: <img width="1665" height="1166" alt="Screenshot 2026-02-27 at 11 28 31 AM" src="https://github.com/user-attachments/assets/5312e3e4-06b3-4c7c-8275-d38270c5f161" /> Search remains visible <img width="974" height="152" alt="Screenshot 2026-02-27 at 11 28 46 AM" src="https://github.com/user-attachments/assets/deb6ffb8-8608-427c-aa9a-e1971c86041e" /> |
||
|
|
4a89e1f616
|
Release HyperDX (#1790)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
6f612e4a03
|
Refactor search input: unified SearchWhereInput and SQL editor expand-on-focus (#1726)
## Summary Unifies the "WHERE" / search input experience across the app with a new **SearchWhereInput** component, adds **expand-on-focus** behavior for the SQL and Lucene inputs, introduces **keyboard shortcuts** to focus search, and **persists the chosen WHERE language** (SQL vs Lucene) in localStorage so it is reused as the default across pages. Fix #1663 Fix #1666 ## What's in this PR ### New component: SearchWhereInput - **Single entry point** for "WHERE" / search that supports: - **SQL** (CodeMirror) and **Lucene** (textarea + autocomplete) via `InputLanguageSwitch` - Optional **multiline** SQL with expand-on-focus - Optional **hotkey** (`/` or `s`) to focus the input, with an optional hint in the UI - Props: `showLabel`, `label`, `allowMultiline`, `enableHotkey`, `width` / `maxWidth`, `sqlPlaceholder` / `lucenePlaceholder`, `sqlQueryHistoryType` / `luceneQueryHistoryType`, `additionalSuggestions`, plus `TableConnectionChoice` and `UseControllerProps` for react-hook-form. - Used in: - **DBSearchPage** (main search) - **DBDashboardPage** (dashboard filters) - **ChartSeriesEditorComponent** (DBEditTimeChartForm – series WHERE) - **SessionsPage** / **SessionSubpanel** - **ContextSidePanel** (log side panel surrounding context) - **DashboardFiltersModal**, **DBTracePanel**, **DBTraceWaterfallChart**, **DBSearchHeatmapChart**, **KubernetesFilters**, **Sources/SourceForm** (import path updates) ### Persisted WHERE language (localStorage) - **SearchWhereInput** saves the user's chosen query language (SQL or Lucene) in localStorage under `hdx-search-where-language` whenever they switch languages. - **getStoredLanguage()** is exported and used when building form and URL defaults so the same preference is applied when no value is set. - Pages that default to the stored language when none is set: - **DBSearchPage** (main search form, save/reset saved search, new search) - **DBDashboardPage** (global WHERE query param and form default) - **ServicesDashboardPage** (WHERE form default and chart config) - **SessionsPage** (WHERE form default) - **DBSearchPageAlertModal** (alert config default) - **ContextSidePanel** (WHERE form default, falls back through `originalLanguage → getStoredLanguage() → 'lucene'`) - Result: choosing SQL or Lucene on one page carries over as the default on others and when creating new searches, saved searches, or alerts. ### Expand on focus - **SQLInlineEditor** (CodeMirror): - When `allowMultiline` is true, the editor expands on focus and collapses when blurred. - Collapsed state uses a **fade** at the bottom so text isn't hard-cut. - Expanded state uses full height and appropriate border radius (coordinated with `SearchWhereInput` wrapper). - **AutocompleteInput** (Lucene): - Same idea: single-line when unfocused, expand when focused, with **collapse fade** when not focused. - `data-expanded="true"` on the wrapper for styling (e.g. rounded corners). ### Keyboard shortcuts - **`/`** or **`s`** focus the active search input (SQL CodeMirror or Lucene textarea) when `enableHotkey` is true. - Implemented in `SearchWhereInput` (for the wrapper), `SQLInlineEditor`, and `SearchInputV2` via `useHotkeys` from `react-hotkeys-hook`. - Optional hint in the UI: "Press / or s to focus search" with `<Kbd>/</Kbd>`. ### ContextSidePanel layout - Replaced the split `WhereLanguageControlled` / `SQLInlineEditorControlled` / `SearchInputV2` setup with a single `SearchWhereInput` at `size="xs"`. - Layout uses a simple `<Group justify="space-between">` — SearchWhereInput's `.root` uses `flex: 1 1 0%` with `min-width: 0`, so it fills remaining space after siblings claim their natural width and shrinks gracefully without forcing wrapping. When hidden (non-Custom context), the two `SegmentedControl` components naturally spread to opposite ends via `space-between`. - `whereLanguage` form default falls back through `originalLanguage → getStoredLanguage() → 'lucene'`. ### Code organization - **SearchInput components** moved under `packages/app/src/components/SearchInput/`: - `AutocompleteInput.tsx` + `AutocompleteInput.module.scss` - `InputLanguageSwitch.tsx` - `SQLInlineEditor.tsx` + `SQLInlineEditor.module.scss` - `SearchInputV2.tsx` + `SearchInputV2.module.scss` - `SearchWhereInput.tsx` + `SearchWhereInput.module.scss` - `index.ts` (barrel exports) - Removed legacy top-level `AutocompleteInput.tsx` and `InputLanguageSwitch.tsx` from `src/` and `src/components/`. - **SearchWhereInput** replaces direct use of `SQLInlineEditor` + `SearchInputV2` where a unified SQL/Lucene control is needed. ### Styling & theming - **SearchWhereInput**: Uses `flex: 1 1 0%` with `min-width: 0` so it fills remaining space after siblings claim their natural width — siblings no longer need `flexShrink: 0`. - **SearchWhereInput**: Size-variant classes (`.sizeXs` / `.sizeSm`) on `.inputWrapper` and `.languageSwitch` for explicit per-size height and textarea min-height control. `!important` on textarea `min-height` overrides `react-textarea-autosize` inline styles. - **SearchWhereInput**: Wrapper and expanded-state border radius so the expanded SQL/Lucene input aligns with the layout. - **SQLInlineEditor**: `.expanded` / `.collapsed` / `.collapseFade` in `SQLInlineEditor.module.scss`. - **AutocompleteInput**: `.focused` / `.collapseFade` in `AutocompleteInput.module.scss`. - **Theme tokens**: Small updates in `hyperdx` and `clickstack` theme tokens / Mantine theme for consistency. ### Tests & E2E - **Unit**: `SearchWhereInput.test.tsx` for language switch, placeholders, labels, `showLabel`, `width`/`maxWidth`, submit. - **Unit**: `DBEditTimeChartForm.test.tsx` mock path updates for new SearchInput location. - **E2E**: `multiline.spec.ts` – refined multiline input locator, autosize/expand verification, dropdown wait states, Query language selection. - **E2E**: `SearchPage` page object and related session specs adjusted for new structure. ### Storybook - **SearchWhereInput** stories: Default (Lucene), SQL mode, custom width, no label, single-line SQL. - **SQLInlineEditor** stories moved under `components/SearchInput/`. ## How to test 1. **DBSearchPage**: Toggle SQL/Lucene, use `/` or `s` to focus, try multiline SQL (expand on focus, collapse on blur). 2. **DB Dashboard**: Edit a chart series WHERE clause via SearchWhereInput; same hotkey and expand behavior. 3. **Sessions**: Use the search/WHERE input and confirm language switch and focus behavior. 4. **ContextSidePanel**: Open a log side panel, switch to "Custom" context — verify the SearchWhereInput appears inline between the two segmented controls in one row; switch away from Custom and verify the controls spread with space-between. 5. **Persisted language**: Switch to SQL on DBSearchPage, then open Sessions or a DB Dashboard — WHERE should default to SQL; repeat with Lucene and confirm it sticks across pages and new saved searches/alerts. 6. **Storybook**: Open "Components/SearchWhereInput" and "Components/SQLInlineEditor" and check layout, expand/collapse, and hotkey hint. ## Checklist - [x] SearchWhereInput supports SQL and Lucene with language switch - [x] SQL editor and Lucene input expand on focus when multiline is enabled - [x] Collapse fade applied when collapsed - [x] Keyboard shortcuts `/` and `s` focus the active input where enabled - [x] WHERE language (SQL/Lucene) persisted in localStorage and used as default across search, dashboards, sessions, saved searches, and alerts - [x] SearchInput components reorganized under `components/SearchInput/` - [x] ContextSidePanel migrated to SearchWhereInput with responsive single-row layout - [x] Unit tests and E2E updated; new tests for SearchWhereInput - [x] Stories added/updated for SearchWhereInput and SQLInlineEditor |
||
|
|
5162acb4ab
|
fix: apply correct color-scheme for light and dark modes so scrollbars match the active theme (#1818)
The `color-scheme` CSS property was hardcoded to `dark` on the root element, causing browser-native UI like scrollbars to always render in dark style regardless of the active theme. This moves `color-scheme` into the appropriate `[data-mantine-color-scheme]` selectors so it matches the user's selected theme. > [!NOTE] > This issue is only visible if you have your OS configured to always show scrollbars (macOS: System Settings → Appearance → Show scroll bars → Always). ## Before <img width="3456" height="1834" alt="scrollbar-color-issue" src="https://github.com/user-attachments/assets/3d820ad6-3952-444b-9bac-f7c9d15e2bdc" /> ## After <img width="3456" height="1834" alt="scrollbar-color-fixed" src="https://github.com/user-attachments/assets/002fb0bd-72ee-47f7-9af7-e90faa41562b" /> |
||
|
|
fedd586bba
|
feat: Remove potentially-sensitive fields from external webhooks API (#1816) | ||
|
|
578b1eea9e
|
fix: stop localmode premature fetches & discover existing sources during onboarding (#1811)
In localmode and the clickhouse build, it is common to hit a scenario where a connection is not defined, but sources are. This causes the search page to start spamming queries without any credentials, which causes the browser to repeatedly show a prompt for auth credentials and kills the whole onboarding process. Additionally, after creating a connection in the onboarding modal, the sources were not discovered by the onboarding modal and would force you to redefine a source even though you had some saved. This PR fixes both of those issues. Closes HDX-3515 Closes HDX-3516 |
||
|
|
a6edb0dd4c
|
fix: banner can collapse for clickhouse build (#1812) | ||
|
|
875f78d484
|
fix: connections will now auto connect if default credentials work (#1808)
Adds an automatic way to create a connection if the default credentials work (username = default, password = '') Closes HDX-3504 Closes HDX-3505 |
||
|
|
34c9afebe2
|
feat: Add list Webhooks API (#1802)
Closes HDX-3450 # Summary This PR adds a list webhooks endpoint to the external API, to better support alert creation via the API (which requires a webhook ID). <img width="2275" height="1048" alt="Screenshot 2026-02-25 at 11 54 54 AM" src="https://github.com/user-attachments/assets/a9a4f1cb-d3e9-4d18-bb9c-6647b784adf9" /> <img width="1463" height="1057" alt="Screenshot 2026-02-25 at 11 55 45 AM" src="https://github.com/user-attachments/assets/b7864e67-b8d0-4f71-aedf-04d2d13e27f1" /> |
||
|
|
3e8cc729d1
|
chore: add missing number charts alerts changeset (#1810)
Add a forgotten changeset for the new feature in this PR https://github.com/hyperdxio/hyperdx/pull/1677 |
||
|
|
3797e657d5
|
fix: guard formatNumber against non-numeric values (#1721)
## Summary Fixes #1510 **Root cause:** When a number format (e.g., Percent) is applied to table columns that contain non-numeric values, `formatNumber` doesn't catch non-empty strings. `numbro()` then produces NaN. The existing check `!value && value !== 0` catches `null`, `undefined`, and `NaN`, but NOT non-empty strings (which are truthy and pass through to `numbro()`). ## Changes - `packages/app/src/utils.ts`: Added `typeof value !== 'number' || isNaN(value)` guard that returns the raw value as a string instead of formatting it. ## Risk Assessment **Low** - Only adds a guard for an edge case. Numeric values are formatted exactly as before. Co-authored-by: Karl Power <85935352+karl-power@users.noreply.github.com> |
||
|
|
4cb175d477
|
feat: add alert to Number chart (#1677)
Fixes #1361 https://github.com/user-attachments/assets/c04980c3-5e28-4b6f-95fc-e7dc2d66427c Co-authored-by: Karl Power <85935352+karl-power@users.noreply.github.com> |
||
|
|
ef66cba8cd
|
build(deps): add security resolutions for vulnerable npm packages (#1740)
## Summary Addresses npm security vulnerabilities in transitive dependencies. Prefer direct dependency upgrades over broad resolutions where possible. ## Changes **Direct upgrade:** - **`@slack/webhook`**: `^6.1.0` → `^7.0.0` — v7 natively uses axios v1, eliminating the axios@0.21.4 SSRF/redirect vulnerabilities. Only breaking change in v7 is dropping Node <18 (we're on Node 22). **Resolutions for transitive deps with no direct upgrade path:** - **`fast-xml-parser`**: `^4.4.0` — fixes prototype pollution (High) - **`systeminformation`**: `^5.24.0` — fixes command injection (High) ## Removed/Not Done - `axios` resolution removed — covered by the `@slack/webhook` upgrade instead - `tar` resolution removed — was a v6→v7 major jump on build-only tools (`cacache`, `node-gyp`); not present in the production image - `glob` resolution removed — was breaking test coverage tooling (`test-exclude@6` depends on glob@^7) ## Related Follow-up to #1731 which addressed base image vulnerabilities (Node, Go, ClickHouse). |
||
|
|
733d612649
|
feat: Add saved query support to dashboards (#1584)
Fixes: HDX-1717 On the dashboard page, this PR adds: * An option in the ... dropdown to Save/update/delete default query/filters that will save the WHERE input filter, along with any filters applied to the dashboard via the custom filter functionality + ties it to the dashboard object itself. Future reloads of this dashboard will restore saved values. https://github.com/user-attachments/assets/5f7c18f7-a695-4d19-b338-6de852a4af6b https://github.com/user-attachments/assets/ea7653c8-f862-450f-916c-46edfcbfbf35 Co-authored-by: Himanshu Kapoor <2203925+fleon@users.noreply.github.com> |
||
|
|
d760d2db5b
|
chore: Run integration tests on different ports (#1801)
# Summary This PR updates the CI (integration tests) docker compose and env file so that the integration tests run on a separate set of ports, so that they can be run locally without interfering with an instance of the app running locally. ## Testing To test locally Start the app ``` yarn dev ``` Run the integration tests ``` make ci-int ``` Note that both can run at the same time without docker port conflicts. `make ci-int` can also be run without running the app - it uses its own independent mongo + clickhouse + api. |
||
|
|
247896e497
|
fix: Prevent crash when only one metric name exists (#1806)
Closes HDX-3511 # Summary This PR fixes a crash that occurs when only one metric name is available. The actual fix is 1 character, and is noted in the comments. The rest of the changes are for unit testing the case and adding an error boundary around the chart editor component. ## Before https://github.com/user-attachments/assets/e374b36b-0be3-468d-9469-3b1a5c88cd44 ## After https://github.com/user-attachments/assets/50004a07-b13e-4ff5-babb-952e391a8871 ## New Error Boundary If a similar error were to happen again, there is now an ErrorBoundary wrapping the chart editor, so there is no full page crash: <img width="1757" height="865" alt="Screenshot 2026-02-25 at 3 15 13 PM" src="https://github.com/user-attachments/assets/a2eda617-efcf-4b41-8765-f586d285f50e" /> |
||
|
|
6708687a5b
|
chore: allow claude and claudebot to trigger review workflow (#1800)
Without this, the claude code review PR will fail if the PR is authored by claude. |
||
|
|
6172230e9b
|
chore: separate e2e job (#1799)
for re-use in other jobs |
||
|
|
1eede5ed2e
|
fix: improve UI layout and styling in DBSearchPage and related components (#1798) | ||
|
|
8b267371e0
|
feat: dynamically adjust Event Deltas chart count based on screen width (#1770)
Dynamically fills available horizontal space in the Event Deltas view by calculating the number of chart columns based on the container width. Also moves pagination to the bottom of the list and hides it when not needed. Fixes #1769 Generated with [Claude Code](https://claude.ai/code) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
8772f5e294
|
chore: update clickhouse version for compose files to 26.1 (#1791) | ||
|
|
81a3259074
|
chore(deps): bump lodash-es from 4.17.21 to 4.17.23 (#1638)
Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
3dd8a7b995
|
chore(deps): bump lodash from 4.17.21 to 4.17.23 (#1641)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
44af73a98b
|
build(deps): bump bn.js from 4.12.0 to 4.12.3 (#1793)
Bumps [bn.js](https://github.com/indutny/bn.js) from 4.12.0 to 4.12.3. <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
2fa3352a3d
|
chore: update claude pr review gh action to use sticky comment (#1795) | ||
|
|
5474409317
|
fix: AI Notebook CH connections need to send pw (#1792)
A user reported that they could not use the Notebooks feature due to a random clickhouse connection failure, pointing to a bad password. https://discord.com/channels/1149498480893640706/1149500035403350036/1473446917198315563 The reason it failed was because we weren't selecting the pw in `mongo` prior to using it in a direct `CH` connection. Before the fix, the call in `getAIMetadata` omitted the `selectPassword` argument: `const connection = await getConnectionById(source.team.toString(), connectionId); // connection.password === undefined` So when the ClickhouseClient was constructed immediately after: ``` const clickhouseClient = new ClickhouseClient({ host: connection.host, username: connection.username, password: connection.password, }); ``` `connection.password` was undefined, and the ClickHouse client connected with no password — hence the authentication failure. The fix just adds `true` so the password is actually fetched from MongoDB and present in connection.password when the client is constructed. |
||
|
|
cd2b7a7615
|
fix: use_top_k_dynamic_filtering setting causing issues when ORDER BY is not a column (#1789) |