Skip to content

chore: version packages - #546

Merged
blove merged 1 commit into
mainfrom
changeset-release/main
Aug 31, 2026
Merged

chore: version packages#546
blove merged 1 commit into
mainfrom
changeset-release/main

Conversation

@blove

@blove blove commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@pretable/core@0.13.0

Minor Changes

  • autosizeColumns() becomes setAllColumnsAutoWidth(auto), and undeclared columns have one default width. (#542)

    The rename. The grid handle's autosizeColumns() never sized anything to content — it put every column into the auto-width set, the mode bit that says "the grid manages this column's width". Nothing in the column-width path measures a cell. It is now grid.setAllColumnsAutoWidth(auto: boolean), symmetric with the per-column setColumnAutoWidth(columnId, auto) that shipped alongside the tool panel, and it moves the roster in BOTH directions — false freezes every column at the engine's stored width, which the old name could not express. The surface's autosize?: boolean | AutosizeOptions prop is likewise allColumnsAutoWidth?: boolean, and the AutosizeOptions type is gone from both packages: it was a tuning bag (averageCharWidth, cellPaddingPx, min/max) for a measurement pass that does not exist, so every field was inert.

    One default width. A column that declares no widthPx was drawn by the renderer at 140px but STORED by the engine at 160px, so turning auto width off on a never-resized column jumped its width 140 → 160 for no reason a user could see. Both numbers now come from one shared constant (140, and 220 for a wrap: "text" column) and the engine seeds its stored width through the renderer's own resolver, so the freeze lands on the pixel the column was already drawing. 140 won because it is what undeclared columns have always painted at — no grid repaints as a result of this change.

    A double-click that does something. Double-clicking a column's resize handle was wired to a no-op. It now calls setColumnAutoWidth(columnId, true), the pointer shortcut for handing that column's width back to the grid, which is what the docs had claimed all along. It no longer fires onColumnWidthsChange: that callback reports the engine's STORED widths, and handing a column to the grid moves none of them — the notification announced a change that had not happened.

    Fixed: auto width did not survive a controlled state.columnWidths. setColumnWidth cleared a column's auto bit unconditionally, and a controlled consumer replays its whole widths map through setColumnWidth on every write-back pass. So any re-render of such a consumer silently took every column in the map back out of the auto set — the tool panel's Auto width toggle and the resize handle's double-click both appeared to work and were undone before paint. The bit is now cleared only when the write actually MOVES the stored width, compared across grid-core's own min/max clamping rather than against the requested number. This is a user-visible fix to behavior that shipped with the tool panel's auto-width toggle, not a consequence of the rename.

@pretable/react@0.13.0

Minor Changes

  • autosizeColumns() becomes setAllColumnsAutoWidth(auto), and undeclared columns have one default width. (#542)

    The rename. The grid handle's autosizeColumns() never sized anything to content — it put every column into the auto-width set, the mode bit that says "the grid manages this column's width". Nothing in the column-width path measures a cell. It is now grid.setAllColumnsAutoWidth(auto: boolean), symmetric with the per-column setColumnAutoWidth(columnId, auto) that shipped alongside the tool panel, and it moves the roster in BOTH directions — false freezes every column at the engine's stored width, which the old name could not express. The surface's autosize?: boolean | AutosizeOptions prop is likewise allColumnsAutoWidth?: boolean, and the AutosizeOptions type is gone from both packages: it was a tuning bag (averageCharWidth, cellPaddingPx, min/max) for a measurement pass that does not exist, so every field was inert.

    One default width. A column that declares no widthPx was drawn by the renderer at 140px but STORED by the engine at 160px, so turning auto width off on a never-resized column jumped its width 140 → 160 for no reason a user could see. Both numbers now come from one shared constant (140, and 220 for a wrap: "text" column) and the engine seeds its stored width through the renderer's own resolver, so the freeze lands on the pixel the column was already drawing. 140 won because it is what undeclared columns have always painted at — no grid repaints as a result of this change.

    A double-click that does something. Double-clicking a column's resize handle was wired to a no-op. It now calls setColumnAutoWidth(columnId, true), the pointer shortcut for handing that column's width back to the grid, which is what the docs had claimed all along. It no longer fires onColumnWidthsChange: that callback reports the engine's STORED widths, and handing a column to the grid moves none of them — the notification announced a change that had not happened.

    Fixed: auto width did not survive a controlled state.columnWidths. setColumnWidth cleared a column's auto bit unconditionally, and a controlled consumer replays its whole widths map through setColumnWidth on every write-back pass. So any re-render of such a consumer silently took every column in the map back out of the auto set — the tool panel's Auto width toggle and the resize handle's double-click both appeared to work and were undone before paint. The bit is now cleared only when the write actually MOVES the stored width, compared across grid-core's own min/max clamping rather than against the requested number. This is a user-visible fix to behavior that shipped with the tool panel's auto-width toggle, not a consequence of the rename.

Patch Changes

  • Updated dependencies [d53bc8d]:
    • @pretable/core@0.13.0
    • @pretable/ui@0.13.0

@pretable/stream-adapter@0.13.0

@pretable/ui@0.13.0

@vercel

vercel Bot commented Aug 31, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
pretable Ignored Ignored Aug 31, 2026 12:38am

Request Review

@blove
blove enabled auto-merge (squash) August 31, 2026 00:19
@blove
blove force-pushed the changeset-release/main branch from 2d6376f to 34df6e0 Compare August 31, 2026 00:28
@github-actions

github-actions Bot commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

Vercel preview ready

Preview: https://pretable-4is0w4fv1-cacheplane.vercel.app
Commit: 27657332bdf7f35471f089e007bdbf847010e810

Updated automatically by the deploy-preview job.

@blove
blove force-pushed the changeset-release/main branch from 34df6e0 to 2765733 Compare August 31, 2026 00:38
@blove
blove merged commit 77e56cb into main Aug 31, 2026
21 checks passed
@blove
blove deleted the changeset-release/main branch August 31, 2026 00:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant