Skip to content

chore: migrate to @harperfast/code-guidelines - #1992

Merged
Ethan-Arrowood merged 3 commits into
mainfrom
chore/harperfast-code-guidelines
Jul 30, 2026
Merged

chore: migrate to @harperfast/code-guidelines#1992
Ethan-Arrowood merged 3 commits into
mainfrom
chore/harperfast-code-guidelines

Conversation

@Ethan-Arrowood

@Ethan-Arrowood Ethan-Arrowood commented Jul 29, 2026

Copy link
Copy Markdown
Member

@harperdb/code-guidelines has been deprecated and republished as @harperfast/code-guidelines. Version 0.1.2 is functionally identical to 0.0.6 — no config changes, just the new package name (0.1.2 also adds a files allowlist so .claude and docs are no longer included in the published artifact).

This updates the dependency, any config references (prettier/eslint/docs), and the lockfile. No new lockfiles were added.

sent with Claude Fable 5

@harperdb/code-guidelines is deprecated and has been republished as
@harperfast/code-guidelines; 0.1.1 is functionally identical to 0.0.6.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions
github-actions Bot requested review from cb1kenobi, heskew and kriszyp July 29, 2026 13:09

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the development dependency '@harperdb/code-guidelines' to '@harperfast/code-guidelines' (version '^0.1.1') in 'package.json' and updates the corresponding import path in 'prettier.config.mjs'. I have no feedback to provide.

@socket-security

socket-security Bot commented Jul 29, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Added@​harperfast/​code-guidelines@​0.1.2701009993100

View full report

@claude

claude Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Reviewed; no blockers found.

0.1.1 accidentally published .claude and docs directories; 0.1.2 adds
a files allowlist to package.json to exclude them.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

@kriszyp kriszyp left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

package-lock.json is such a source of joy. good luck. everything else looks fine.

🤖 Reviewed with GPT 5.6

Comment thread package-lock.json
"libc": [
"glibc"
],
"license": "Apache-2.0",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This lock regeneration removed the libc discriminator from all four top-level Linux RocksDB binding entries. In a minimal install using this head-side metadata, npm ci on glibc installed both @harperfast/rocksdb-js-linux-x64-glibc and @harperfast/rocksdb-js-linux-x64-musl; the packages are about 15 MB each, so every Linux install/image carries an unused binding (roughly 16 MB extra on x64). build-tools/build.sh then turns this graph into the published shrinkwrap, preserving the missing selectors. Could we keep the non-migration lock entries identical to main, or restore their libc: ["glibc"] / libc: ["musl"] fields when regenerating the lock?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch — root cause was my local npm 10.9.3, which doesn't write the libc field that npm 11 adds for platform-specific optional deps, so regenerating the lock silently stripped the glibc/musl discriminators from the RocksDB binding entries. Fixed in 38da35e: I reset the lock to main and regenerated with npm 11 (npx npm@11 install --package-lock-only). All libc fields are preserved and the diff is now scoped entirely to the @harperfast/code-guidelines subtree. Same fix applied to harper-pro#629, which had the identical issue.

sent with Claude Fable 5

The previous lock regeneration used npm 10, which drops the libc
discriminator from platform-specific optional deps, causing npm ci on
Linux to install both glibc and musl RocksDB bindings. Regenerated
from main's lock with npm 11; the diff is now scoped to the
code-guidelines subtree only.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@Ethan-Arrowood
Ethan-Arrowood requested a review from kriszyp July 29, 2026 16:22

@kriszyp kriszyp left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good.
🤖 Reviewed with GPT 5.6

Comment thread package-lock.json
"libc": [
"glibc"
],
"license": "Apache-2.0",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This lock regeneration removed the libc discriminator from all four top-level Linux RocksDB binding entries. In a minimal install using this head-side metadata, npm ci on glibc installed both @harperfast/rocksdb-js-linux-x64-glibc and @harperfast/rocksdb-js-linux-x64-musl; the packages are about 15 MB each, so every Linux install/image carries an unused binding (roughly 16 MB extra on x64). build-tools/build.sh then turns this graph into the published shrinkwrap, preserving the missing selectors. Could we keep the non-migration lock entries identical to main, or restore their libc: ["glibc"] / libc: ["musl"] fields when regenerating the lock?

@Ethan-Arrowood
Ethan-Arrowood merged commit b1ca9ef into main Jul 30, 2026
44 of 47 checks passed
@Ethan-Arrowood
Ethan-Arrowood deleted the chore/harperfast-code-guidelines branch July 30, 2026 18:51
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.

2 participants