Skip to content

[pull] main from Comcast:main - #232

Merged
pull[bot] merged 2 commits into
code:mainfrom
Comcast:main
Aug 28, 2026
Merged

[pull] main from Comcast:main#232
pull[bot] merged 2 commits into
code:mainfrom
Comcast:main

Conversation

@pull

@pull pull Bot commented Aug 28, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

nstepien and others added 2 commits August 28, 2026 10:13
* oxlint: add unicorn rules

* oxlint: curate unicorn rules

Go through every unicorn rule, disable the ones that do not fit this
codebase, tune the options of the ones that do, and fix the code they flag.

Disabled:
- `no-null`, `no-useless-undefined`: `null`/`undefined` literals are required
  by the public `Maybe<T>` API, by React (`useRef<T>(undefined)`,
  `renderCell: () => null`) and by `noImplicitReturns`
- `prefer-number-coercion`: rewrites `parseFloat('10px')` to `Number('10px')`
- `prefer-at`: `at(-1)` returns `T | undefined` and is suggested for DOM
  collections, which have no `at()`
- `no-nested-ternary`, `empty-brace-spaces`, `number-literal-case`: oxfmt
  already owns this
- `prefer-includes`, `no-instanceof-array`: duplicate reports
- `no-negated-condition`, `prefer-query-selector`: style

Tuned:
- `filename-case`: camelCase + PascalCase
- `switch-case-braces`: `avoid`
- `prefer-ternary`: `only-single-line`
- `no-array-sort`: `allowAfterSpread`
- `max-nested-calls`: `max: 4`

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01BHDtvyEwsiM6EQJsgdiHt9

* website: use `Array.from(value, mapFn)` instead of `[...value].map(mapFn)`

Avoids building an intermediate array.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01BHDtvyEwsiM6EQJsgdiHt9

* Extract `getRowTracks` in `useViewportRows`

Both call sites built the same `repeat(n, Xpx)`/`Xpx` string. Extracting it
removes the duplication and keeps each `gridTemplateRows` append on one line.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01BHDtvyEwsiM6EQJsgdiHt9

* Avoid `Array#entries` allocation in `useCalculatedColumns`

`entries()` allocates a `[index, value]` tuple per column. Use an indexed
loop instead, matching the other loops in this file.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01BHDtvyEwsiM6EQJsgdiHt9

* Avoid allocating a key list per group in `TreeDataGrid`

`expandGroup` re-runs on every expand/collapse and only needed `Object.keys`
for `setSize`. Store `setSize` on each group entry instead — it is already
known while grouping, in a memo that recomputes far less often — so
`expandGroup` can walk the dictionary with `for…in` and no keys array.

`groupRows` now uses `Object.keys` + lookup instead of `Object.entries`,
which drops one tuple per group.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01BHDtvyEwsiM6EQJsgdiHt9

* website exports: use iterators

* review

* review

* review

* dict -> map

---------

Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
@pull pull Bot locked and limited conversation to collaborators Aug 28, 2026
@pull pull Bot added the ⤵️ pull label Aug 28, 2026
@pull
pull Bot merged commit 4d38d8f into code:main Aug 28, 2026
1 check passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant