-
Notifications
You must be signed in to change notification settings - Fork 212
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
update to typescript 4.5.5, and @typescript-eslint/parser 5.10.1 #4420
Conversation
7f12176
to
bebfbfc
Compare
@mhofman any ideas how I should proceed? |
Ok I had to update a few other eslint plugins and Looping in people to check the changes: @FUDCo @turadg @michaelfig @samsiegart |
The swingset kernelKeeper changes look fine, they match things I had to do in a different branch (#4417). If the inline-ification swingset changes aren't necessary, I'd like to avoid them. The types picked for manager-helper.js are fine. I think that covers the swingset parts of this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some suggestions. One non-blocking request: no explicit any
and instead use ts-expect-error
so that:
- it's more conspicuous that there's an error to address
- we don't erase type the info we do have
- when the error is gone we are notified
In general I'd agree, but the rest of the file is untyped and cluttered with implicit |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM all things considered. We can clean up the any
in a separate effort.
Glad to see 4.5. I was just today running into the need for const
in JSDoc https://devblogs.microsoft.com/typescript/announcing-typescript-4-5/#jsdoc-const-and-type-arg-defaults
41f8378
to
6c5d289
Compare
Noticed this in the release notes: https://devblogs.microsoft.com/typescript/announcing-typescript-4-5/#module-es2022 Should we change the module format from |
6c5d289
to
61f0238
Compare
I extracted the CI changes to #4433 as we realized the issue was independent, and rebased on top of that. I also opened a PR on endo with the necessary patches to marshal and eventual send: endojs/endo#1043
I don't think so. AFAIK there has been no problem with tracking a moving target. |
Noting here for visibility,
Looks like they have a fix in progress facebook/create-react-app#11764, but for now we'll have to do a workaround instead of blocking this PR. |
let me see if I can undo CRA update |
61f0238
to
a9f3176
Compare
Reverted the update of |
Nice that worked: https://github.com/Agoric/agoric-sdk/pull/4438/commits |
a9f3176
to
9dc29ca
Compare
9dc29ca
to
4449e2a
Compare
@FUDCo rebased on your landed PR! Please check that the fixes to satisfy type checks are still acceptable. |
Update @typescript-eslint/parser to 5.10.1 Bump various eslint plugins versions and groom yarn.lock to trim old eslint plugins Force update eslint dependencies of react-scripts to avoid upgrade to breaking 5.0 Drive-by remove of some egregious package duplicates
Fix date format jest mock No behavioral changes
4449e2a
to
9324cfe
Compare
}, | ||
"resolutions": { | ||
"**/react-scripts/@typescript-eslint/parser": "^5.10.2", | ||
"**/react-scripts/@typescript-eslint/eslint-plugin": "^5.10.2", | ||
"**/react-scripts/eslint-plugin-jest": "^26.0.0", | ||
"**/react-scripts/eslint-plugin-testing-library": "^5.0.1", | ||
"**/react-scripts/eslint-config-react-app": "^7.0.0", | ||
"**/eslint-config-react-app/eslint-plugin-jest": "^26.0.0" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@turadg @michaelfig any qualms about this approach to avoid eslint plugin duplication?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
none that block it.
my thought though is that if we're going to control the versions at the root then to consider removing the dependencies from the package level. Some options:
- Rely on the root package for these
- Make a new package like
common
that has utilities used by many packages - Expand the
eslint-config
package to be responsible for eslint deps too
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately resolutions
only work at the root with yarn
. The problem is that we can't update react-scripts
because of a breaking change, but it drags in eslint
plugins as dependencies instead of devDependencies
, and eslint plugins are notorious for causing issues when different versions lie around.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, I misread this as overriding all eslint, not just the react-scripts
ones. No concerns at all.
Update to TS 4.5. Use a
~
instead of^
since TS doesn't respect semver, and we want to avoid bumping "minor" versions inadvertently.Also update @typescript-eslint/parser to 5.10.1, bump various eslint plugins versions, and groom yarn.lock to trim old eslint plugins
Force update eslint dependencies of
react-scripts
(throughresolutions
) to avoid upgrade to a breaking 5.0 version (unblocks #4430)Drive-by remove of some egregious package duplicates