Skip to content

Vendor solhint-config-keep/eslint-config-keep/prettier-config-keep - #194

Open
piotr-roslaniec wants to merge 1 commit into
mainfrom
vendor-lint-configs
Open

piotr-roslaniec wants to merge 1 commit into
mainfrom
vendor-lint-configs

Conversation

@piotr-roslaniec

Copy link
Copy Markdown
Contributor

Summary

Vendors solhint-config-keep, eslint-config-keep, and @keep-network/prettier-config-keep into this repo's root, removing the github: protocol dependency on keep-network/solhint-config-keep, keep-network/eslint-config-keep, and keep-network/prettier-config-keep. These repos are fetched over the unauthenticated git:/github: protocol at install time, which is fragile (upstream availability, rate limits, protocol deprecation) compared to a normal registry dependency.

.eslintrc, .prettierrc.js, and .solhint.json now contain the inlined rules/config instead of extends/require-ing the external packages. eslint-config-keep's own transitive dependencies (eslint-config-google, eslint-config-prettier, eslint-plugin-no-only-tests, eslint-plugin-prettier) are added back as explicit pinned devDependencies, since they were previously pulled in only via its own dependencies block.

This repo's local overrides are preserved: max-states-count stays bumped to 20 (vs. the shared default of 15), and no-inline-assembly stays fully off.

Verification

npm run lint (eslint . then solhint 'contracts/**/*.sol') was run after this change and both are clean (exit 0, no problems reported), matching the pre-change baseline. No behavioral change to linting itself; only the dependency source changes.

Related

Companion PR in tbtc-v2: threshold-network/tbtc-v2#1144

Not in scope

Archiving the now-possibly-unreferenced keep-network/solhint-config-keep, keep-network/eslint-config-keep, keep-network/prettier-config-keep repos — separate decision, not attempted here.

Removes github: protocol dependencies on keep-network/solhint-config-keep,
keep-network/eslint-config-keep, and keep-network/prettier-config-keep,
replacing them with vendored .solhint.json/.eslintrc/.prettierrc.js
content plus explicit pinned devDependencies for the transitive packages
(eslint-config-google, eslint-config-prettier, eslint-plugin-no-only-tests,
eslint-plugin-prettier) that were previously pulled in only via
eslint-config-keep's own dependencies. This removes the git-protocol
dependency fragility (unauthenticated git: protocol, upstream repo
availability) from this repo's install.

npm run lint (eslint . then solhint 'contracts/**/*.sol') verified clean
before and after this change, confirming zero behavioral change.
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