refactor: Restore strict noImplicitOverride by isolating proto-generated code#3291
Closed
mondoreale wants to merge 6 commits into
Closed
refactor: Restore strict noImplicitOverride by isolating proto-generated code#3291mondoreale wants to merge 6 commits into
noImplicitOverride by isolating proto-generated code#3291mondoreale wants to merge 6 commits into
Conversation
It's a good rule.
There's just 1. This change makes it visible. Good.
b851a34 to
f3d497a
Compare
Contributor
Author
|
I close this one. We're not in a position to approach this issue, and for packages that carry no protobuf code this issue has just been addressed in #3294. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request cleans up and standardizes TypeScript configuration across multiple packages, with a particular focus on restoring stricter typing by properly isolating auto-generated protobuf code.
Previously,
noImplicitOverridewas explicitly set tofalseacross the app. This was not a design choice, but a workaround: the auto-generated protobuf types were incompatible withnoImplicitOverride, and there was no proper isolation at thetsconfiglevel to scope that limitation. As a result, stricter typing guarantees were relaxed globally.This PR fixes that underlying issue and removes the workaround.
Changes
Configuration cleanup and standardization:
noImplicitOverridecompiler option from all relevanttsconfigfiles.noImplicitOverridecan safely default back to strict behavior, improving type safety across the app.Proto-generated code isolation and improvements:
tsconfig.proto.jsonfiles for theproto-rpc,dht,trackerless-network, andsdkpackages to compile protobuf-generated code separately.includeandexcludepatterns to clearly separate handwritten source code from generated proto files and other build artifacts.Minor code and config improvements:
getTransactionSignerasoverrideinEthereumKeyPairIdentityto comply with stricter TypeScript checks.tsconfigfiles for consistency and maintainability.Overall, these changes restore stricter TypeScript guarantees, improve project hygiene, and make protobuf code handling more robust without compromising type safety in the rest of the codebase.