-
Notifications
You must be signed in to change notification settings - Fork 795
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
chore(wdio): include the right path for the wdio-specific .d.ts file #5470
Conversation
|
Path | Error Count |
---|---|
src/dev-server/index.ts | 37 |
src/dev-server/server-process.ts | 32 |
src/compiler/prerender/prerender-main.ts | 22 |
src/testing/puppeteer/puppeteer-element.ts | 22 |
src/runtime/client-hydrate.ts | 20 |
src/screenshot/connector-base.ts | 19 |
src/runtime/vdom/vdom-render.ts | 17 |
src/dev-server/request-handler.ts | 15 |
src/compiler/prerender/prerender-optimize.ts | 14 |
src/compiler/sys/stencil-sys.ts | 14 |
src/compiler/transpile/transpile-module.ts | 14 |
src/sys/node/node-sys.ts | 14 |
src/compiler/prerender/prerender-queue.ts | 13 |
src/compiler/sys/in-memory-fs.ts | 13 |
src/runtime/connected-callback.ts | 13 |
src/runtime/set-value.ts | 13 |
src/compiler/output-targets/output-www.ts | 12 |
src/compiler/transformers/test/parse-vdom.spec.ts | 12 |
src/compiler/transformers/transform-utils.ts | 12 |
src/mock-doc/test/attribute.spec.ts | 12 |
Our most common errors
Typescript Error Code | Count |
---|---|
TS2322 | 361 |
TS2345 | 349 |
TS18048 | 207 |
TS18047 | 82 |
TS2722 | 37 |
TS2532 | 24 |
TS2531 | 21 |
TS2454 | 14 |
TS2790 | 11 |
TS2352 | 10 |
TS2769 | 8 |
TS2538 | 8 |
TS2416 | 6 |
TS2493 | 3 |
TS18046 | 2 |
TS2684 | 1 |
TS2430 | 1 |
Unused exports report
There are 14 unused exports on this PR. That's the same number of errors on main, so at least we're not creating new ones!
Unused exports
File | Line | Identifier |
---|---|---|
src/runtime/bootstrap-lazy.ts | 21 | setNonce |
src/screenshot/screenshot-fs.ts | 18 | readScreenshotData |
src/testing/testing-utils.ts | 198 | withSilentWarn |
src/utils/index.ts | 145 | CUSTOM |
src/utils/index.ts | 269 | normalize |
src/utils/index.ts | 7 | escapeRegExpSpecialCharacters |
src/compiler/app-core/app-data.ts | 25 | BUILD |
src/compiler/app-core/app-data.ts | 115 | Env |
src/compiler/app-core/app-data.ts | 117 | NAMESPACE |
src/compiler/fs-watch/fs-watch-rebuild.ts | 123 | updateCacheFromRebuild |
src/compiler/types/validate-primary-package-output-target.ts | 61 | satisfies |
src/compiler/types/validate-primary-package-output-target.ts | 61 | Record |
src/testing/puppeteer/puppeteer-declarations.ts | 485 | WaitForEventOptions |
src/compiler/sys/fetch/write-fetch-success.ts | 7 | writeFetchSuccessSync |
PR built and packed!Download the tarball here: https://github.com/ionic-team/stencil/actions/runs/8282326906/artifacts/1326242798 If your browser saves files to
|
If you need to write a wdio test which references a host element interface the test will not compile correctly, complaining that it can't resolve the interface. This problem was revealed while working on https://github.com/ionic-team/stencil/compare/ap/wdio/form-associated, where the component has a method like this: ```tsx formAssociatedCallback(form: HTMLFormAssociatedElement) { form.ariaLabel = 'formAssociated called'; // this is a regression test for #5106 which ensures that `this` is // resolved correctly this.internals.setValidity({}); } ``` The `HTMLFormAssociatedElement` interface is defined in `test/wdio/src/components.d.ts` and should be part of the global type namespace for the `test/wdio` project, but our `include/` in `test/wdio/tsconfig-stencil.json` wasn't including the component types correctly so that the interface wasn't being resolved.
c552b2d
to
4603699
Compare
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.
👍
What is the current behavior?
If you need to write a wdio test which references a host element interface the test will not compile correctly, complaining that it can't resolve the interface. I ran into that working on https://github.com/ionic-team/stencil/compare/ap/wdio/form-associated, where the component has a method like this:
The
HTMLFormAssociatedElement
interface is defined intest/wdio/src/components.d.ts
and should be part of the global type namespace for thetest/wdio
project, but ourinclude/
intest/wdio/tsconfig-stencil.json
wasn't including the component types correctly so that the interface wasn't being resolved.What is the new behavior?
test/wdio/src/components.d.ts
is now included correctly so the interface can be resolved!Documentation
Does this introduce a breaking change?
Testing
If this same change is applied to my branch (https://github.com/ionic-team/stencil/compare/ap/wdio/form-associated) the tests should build repeatedly, without having to delete
test/wdio/src/components.d.ts
.