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

Upgrade Stencil to version 4 #7861

Closed
4 tasks done
geospatialem opened this issue Sep 21, 2023 · 3 comments
Closed
4 tasks done

Upgrade Stencil to version 4 #7861

geospatialem opened this issue Sep 21, 2023 · 3 comments
Assignees
Labels
4 - verified Issues that have been released and confirmed resolved. breaking change Issues and pull requests with code changes that are not backwards compatible. Calcite (dev) Issues logged by Calcite developers. calcite-components Issues specific to the @esri/calcite-components package. calcite-components-react Issues specific to the @esri/calcite-components-react package. enhancement Issues tied to a new feature or request. eslint-plugin-calcite-components Issues specific to the @esri/eslint-plugin-calcite-components package. estimate - 5 A few days of work, definitely requires updates to tests.

Comments

@geospatialem
Copy link
Member

Check existing issues

Description

Upgrade Stencil from v2 to v4, which include the following breaking changes:

A more comprehensive list can be found on GitHub.

Acceptance Criteria

Upgrade to the latest version of Stencil to support users and teams also using Stencil in their projects.

Relevant Info

  • Since Calcite has come out of beta, Stencil has already bumped 2 versions (they are on version 4, Calcite is on version 2)
  • This means that any projects building on top of the Calcite Components are using version 2 and that puts us at in a little bit of a bind because Stencil is focusing all their efforts on the latest release, so if we want to pick up any of the most recent fixes or features, we need to be on version 4
  • To be cautious, Calcite is treating the update as a breaking change because with all the the projects building on top of Calcite Components and Stencil. As a result there might be some things that we're not considering that might pop up once we make the change.

Which Component

All components

Example Use Case

No response

Priority impact

p3 - want for upcoming milestone

Calcite package

  • @esri/calcite-components
  • @esri/calcite-components-react
  • @esri/eslint-plugin-calcite-components

Esri team

Calcite (dev)

@geospatialem geospatialem added enhancement Issues tied to a new feature or request. breaking change Issues and pull requests with code changes that are not backwards compatible. 1 - assigned Issues that are assigned to a sprint and a team member. labels Sep 21, 2023
@geospatialem geospatialem added this to the 2023 November Priorities milestone Sep 21, 2023
@github-actions github-actions bot added p3 - want for upcoming milestone Calcite (dev) Issues logged by Calcite developers. calcite-components Issues specific to the @esri/calcite-components package. calcite-components-react Issues specific to the @esri/calcite-components-react package. eslint-plugin-calcite-components Issues specific to the @esri/eslint-plugin-calcite-components package. labels Sep 21, 2023
@jcfranco jcfranco added 2 - in development Issues that are actively being worked on. and removed 1 - assigned Issues that are assigned to a sprint and a team member. labels Oct 31, 2023
@jcfranco jcfranco added the estimate - 5 A few days of work, definitely requires updates to tests. label Nov 2, 2023
jcfranco added a commit that referenced this issue Nov 10, 2023
**Related Issue:** #7861 

## Summary

Bumps Stencil to v4.

### Noteworthy changes

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
@omarkawach
Copy link

Watching

benelan added a commit that referenced this issue Nov 13, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Nov 14, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Nov 16, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
DitwanP pushed a commit that referenced this issue Nov 16, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Nov 16, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
@jcfranco jcfranco added 3 - installed Issues that have been merged to master branch and are ready for final confirmation. and removed 2 - in development Issues that are actively being worked on. labels Nov 18, 2023
@github-actions github-actions bot assigned geospatialem and DitwanP and unassigned jcfranco Nov 18, 2023
Copy link
Contributor

Installed and assigned for verification.

@geospatialem geospatialem added 4 - verified Issues that have been released and confirmed resolved. and removed 3 - installed Issues that have been merged to master branch and are ready for final confirmation. labels Nov 21, 2023
@geospatialem
Copy link
Member Author

Verified in the rc branch in the calcite-components package with version 4.7.2 (the latest version, published 8 days ago).

benelan added a commit that referenced this issue Nov 23, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Nov 29, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Dec 1, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Dec 1, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Dec 2, 2023
**Related Issue:** #7861

Bumps Stencil to v4.

* add `components.d.ts` to source control per [Stencil
recommendation](https://stenciljs.com/docs/typed-components)
* add workaround for JSX imports not matching what Stencil React output
target expects
* dropped workaround for
#6696 (fixed in v4)
* drop obsolete tree-shaking patch (#5233) (fixed in v4)
* skips additional locales that are showing formatting differences
between test/node and browser environments
* updates `volta` and `engines` fields from
`eslint-plugin-calcite-components`' `package.json` to match other
packages
* dep changes:
* bumps `@typescript-eslint`†, `angular`†, `jest`†, `puppeteer`,
`typescript` to latest († and related deps)
  * removed unused `@stencil/state-tunnel`
  * replaced `@stencil/postcss` with `@stencil-community/postcss`
  * added missing `globby` and `jsdom`
  * override `@jest/transform` to ensure node types match

BREAKING CHANGE: We are treating this core version bump as a
precautionary measure, particularly due to its potential impact on
projects using `calcite-components` and Stencil.

---------

Co-authored-by: Ben Elan <[email protected]>
Co-authored-by: jcfranco <[email protected]>
benelan added a commit that referenced this issue Dec 6, 2023
**Related Issue:** #7861 

## Summary

Make sure `component.d.ts` does not get formatted via `lint-staged` when
committing. `lint-stage` runs from the root of the monorepo, so the file
needs to be ignored there.
alisonailea pushed a commit that referenced this issue Dec 7, 2023
**Related Issue:** #7861 

## Summary

Make sure `component.d.ts` does not get formatted via `lint-staged` when
committing. `lint-stage` runs from the root of the monorepo, so the file
needs to be ignored there.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4 - verified Issues that have been released and confirmed resolved. breaking change Issues and pull requests with code changes that are not backwards compatible. Calcite (dev) Issues logged by Calcite developers. calcite-components Issues specific to the @esri/calcite-components package. calcite-components-react Issues specific to the @esri/calcite-components-react package. enhancement Issues tied to a new feature or request. eslint-plugin-calcite-components Issues specific to the @esri/eslint-plugin-calcite-components package. estimate - 5 A few days of work, definitely requires updates to tests.
Projects
None yet
Development

No branches or pull requests

4 participants