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

perf: research building output targets separately from calcite-components #7111

Open
benelan opened this issue Jun 3, 2023 · 4 comments
Open
Labels
0 - new New issues that need assignment. estimate - 3 A day or two of work, likely requires updates to tests. p - low Issue is non core or affecting less that 10% of people using the library refactor Issues tied to code that needs to be significantly reworked. tooling Issues relating to build system fixes or improvements.

Comments

@benelan
Copy link
Member

benelan commented Jun 3, 2023

Description

Our monorepo follows Stencil's output targets example project, where the React output target is built every time the web components build. Building CCR isn't necessary for most of our day-to-day development, so it would be nice to split that process into a separate step.

Proposed Advantages

Build performance, although I doubt generating the CCR source takes very long since it is so small.

Which Component

Stencil/monorepo configuration

Relevant Info

#6988 (comment)

@benelan benelan added refactor Issues tied to code that needs to be significantly reworked. 0 - new New issues that need assignment. needs triage Planning workflow - pending design/dev review. labels Jun 3, 2023
@geospatialem geospatialem added tooling Issues relating to build system fixes or improvements. p - low Issue is non core or affecting less that 10% of people using the library estimate - 3 A day or two of work, likely requires updates to tests. needs milestone Planning workflow - pending milestone assignment, has priority and/or estimate. and removed needs triage Planning workflow - pending design/dev review. labels Apr 30, 2024
@geospatialem
Copy link
Member

geospatialem commented May 3, 2024

Effort requires build benchmarking to determine if the above is feasible and should be adopted.

Some opportunities for the above:

  • Change the name of the framework output target build in the npm script so it doesn't get included in turbo's build pipeline.
  • Determine if a few lines during the CC build (which takes the majority of the build time) could be removed and determine if it saves time.
  • If deemed worthy, create a separate stencil config file, similar to Storybook.

@jcfranco
Copy link
Member

Is this still valid after #10310?

@benelan
Copy link
Member Author

benelan commented Dec 19, 2024

I just tested and it's still valid. If you delete packages/calcite-components-react/src/components.ts and then run npm run --workspace @esri/calcite-components build, the deleted file will be re-generated. IIRC you asked me to log this, but I really don't think the performance improvement would be noticeable like I mentioned above.

@benelan
Copy link
Member Author

benelan commented Dec 19, 2024

My suggestion would be to close it as not planned, but up to you @jcfranco

@DitwanP DitwanP added this to the 2025-08-26 - Aug Milestone milestone Jan 3, 2025
@DitwanP DitwanP removed the needs milestone Planning workflow - pending milestone assignment, has priority and/or estimate. label Jan 3, 2025
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. estimate - 3 A day or two of work, likely requires updates to tests. p - low Issue is non core or affecting less that 10% of people using the library refactor Issues tied to code that needs to be significantly reworked. tooling Issues relating to build system fixes or improvements.
Projects
None yet
Development

No branches or pull requests

4 participants