Skip to content
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

Bug: Missing types when building from a new clone #4246

Closed
benelan opened this issue Mar 16, 2022 · 5 comments
Closed

Bug: Missing types when building from a new clone #4246

benelan opened this issue Mar 16, 2022 · 5 comments
Labels
0 - new New issues that need assignment. blocked This issue is blocked by another issue. bug Bug reports for broken functionality. Issues should include a reproduction of the bug. has workaround Issues have a workaround available in the meantime. Stencil bug Issues that are tied to a reported Stencil bug.

Comments

@benelan
Copy link
Member

benelan commented Mar 16, 2022

Actual Behavior

Some of the components have missing types when building from a new clone. For example, here are the correct type files for calcite-combobox:
https://unpkg.com/browse/@esri/calcite-components@1.0.0-beta.78/dist/types/components/combobox/

And here is what it looks like when type files are missing:
https://unpkg.com/browse/@esri/calcite-components@1.0.0-beta.79/dist/types/components/combobox/

Expected Behavior

No missing type files when building

Reproduction Sample

N/A

Reproduction Steps

  1. git clone https://github.com/Esri/calcite-components.git
  2. cd calcite-components
  3. npm ci && npm run build
  4. Check for missing type files in dist/types/components/combobox

Reproduction Version

beta.79

Relevant Info

There are no errors in the console. The work around is to build again and make sure all the files are there.

I repro'd on WSL (Ubuntu 20.04)
@jcfranco repro'd on Mac

Regression?

No response

@benelan benelan added bug Bug reports for broken functionality. Issues should include a reproduction of the bug. 0 - new New issues that need assignment. needs triage Planning workflow - pending design/dev review. has workaround Issues have a workaround available in the meantime. labels Mar 16, 2022
@github-actions
Copy link
Contributor

More information is required to proceed with this issue:

This issue will be automatically closed in five days if the information is not provided. Thanks for your understanding.

@github-actions github-actions bot added the incomplete issue report New issues missing important information, and unless provided, they will be closed after 5 days. label Mar 16, 2022
@benelan benelan removed the incomplete issue report New issues missing important information, and unless provided, they will be closed after 5 days. label Mar 16, 2022
@Zay
Copy link

Zay commented Mar 16, 2022

I can confirm that 4 type definitions are missing.
I used https://github.com/Esri/calcite-components-examples/angular (currently on beta-78)

and ran commands:

  • npm install
  • ng build
  • ng serve

This works fine.

Then upgraded to version "1.0.0-beta.79" using
npm install @esri/calcite-components@latest

Getting the following errors on ng serve now:
ERROR in node_modules/@esri/calcite-components/dist/types/components.d.ts:19:61 - error TS2307: Cannot find module './components/combobox/interfaces'.

19 import { ComboboxChildElement, ComboboxSelectionMode } from "./components/combobox/interfaces";
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@esri/calcite-components/dist/types/components.d.ts:28:34 - error TS2307: Cannot find module './components/pagination/pagination'.

28 import { PaginationDetail } from "./components/pagination/pagination";
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@esri/calcite-components/dist/types/components.d.ts:29:29 - error TS2307: Cannot find module './components/pick-list/shared-list-logic'.

29 import { ListFocusId } from "./components/pick-list/shared-list-logic";
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@esri/calcite-components/dist/types/components.d.ts:37:53 - error TS2307: Cannot find module './components/tree/interfaces'.

37 import { TreeSelectDetail, TreeSelectionMode } from "./components/tree/interfaces";

When comparing to .78, I'm seeing more typing files missing. The entire tree folder is missing, for instance.

@benelan
Copy link
Member Author

benelan commented Mar 16, 2022

@Zay we will be releasing beta.80 tonight to patch this issue.

@benelan benelan removed the needs triage Planning workflow - pending design/dev review. label Mar 25, 2022
@benelan benelan added this to the Freezer milestone Mar 25, 2022
@benelan
Copy link
Member Author

benelan commented Jun 23, 2022

Possibly related to stenciljs/core#3239

@benelan benelan added Stencil bug Issues that are tied to a reported Stencil bug. blocked This issue is blocked by another issue. labels Jun 23, 2022
@benelan
Copy link
Member Author

benelan commented Sep 21, 2022

To recap, this issue occurs when you build w/o an existing components.d.ts file, which manifests in new clones since we don't commit the generated file. As mentioned above, doing a second build fixes the issue. This is a known Stencil issue, but we set up checks to prevent the missing types from making it into a release.

Closing based on ☝️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0 - new New issues that need assignment. blocked This issue is blocked by another issue. bug Bug reports for broken functionality. Issues should include a reproduction of the bug. has workaround Issues have a workaround available in the meantime. Stencil bug Issues that are tied to a reported Stencil bug.
Projects
None yet
Development

No branches or pull requests

2 participants