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

chore(NA): moving @kbn/config-schema to babel transpiler #106929

Merged
merged 7 commits into from
Jul 28, 2021

Conversation

mistic
Copy link
Member

@mistic mistic commented Jul 27, 2021

One step forward on #69706

That PR moves the @kbn/config-schema from using tsc compiler to babel transpiler to produce the js outputs.

@mistic mistic added chore Team:Operations Team label for Operations Team v8.0.0 release_note:skip Skip the PR/issue when compiling release notes auto-backport Deprecated - use backport:version if exact versions are needed v7.15.0 v7.14.1 labels Jul 27, 2021
@mistic mistic requested a review from jbudz July 27, 2021 21:30
@mistic mistic requested a review from a team as a code owner July 27, 2021 21:30
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-operations (Team:Operations)

@jbudz
Copy link
Member

jbudz commented Jul 27, 2021

I didn't hit the build failure locally. I'll reset and see what happens.

@mistic
Copy link
Member Author

mistic commented Jul 27, 2021

@jbudz I've fixed those

@jbudz
Copy link
Member

jbudz commented Jul 27, 2021

Were you able to hit the same error? I didn't have any luck after a reset. I'll take another look at my environment, want to make sure I'm actually testing things here.

@mistic
Copy link
Member Author

mistic commented Jul 27, 2021

Yeah I was able to reproduce it when running yarn kbn bootstrap with the commit hash 2122423

@mshustov
Copy link
Contributor

Why and when we decided to use babel as the code transpiler for bazel builds? IIRC the original plan was to ditch babel in favor of tsc #77303 (comment)

@mistic
Copy link
Member Author

mistic commented Jul 28, 2021

@mshustov we had to change our initial plans due to performance reasons with the tsc compiler \cc @tylersmalley

@mistic
Copy link
Member Author

mistic commented Jul 28, 2021

@elasticmachine merge upstream

@mshustov
Copy link
Contributor

The build time performance, I guess? These packages aren't rebuilt often. On the whole, is this concern relevant for the Bazel architecture since we rebuilt modules only when they changed?

@mistic
Copy link
Member Author

mistic commented Jul 28, 2021

@mshustov the problem was the performance plus the fact we cant run the tsc in the transpile only mode. We want to decouple the type generation from the transpilation so we can avoid unnecessary cascading rebuilds when developing on packages. We are considering multiple options at the moment but we already agreed that for now we will use babel as a transpiler for packages

@mshustov
Copy link
Contributor

that for now we will use babel as a transpiler for packages

Ok, let's document this decision in #77303

the problem was the performance

I believe you can improve performance by opting out of incremental builds for tsc. Yes, it's contr-intuitive, but incemental builds are slow for large modules, that problem seems to be solved in the last TS versions, but we are still lag behind.

@mistic
Copy link
Member Author

mistic commented Jul 28, 2021

@elasticmachine merge upstream

@mistic
Copy link
Member Author

mistic commented Jul 28, 2021

@mshustov I will let @tylersmalley document our decisions into that issue

@mistic
Copy link
Member Author

mistic commented Jul 28, 2021

@elasticmachine merge upstream

@mistic mistic enabled auto-merge (squash) July 28, 2021 18:19
@kibanamachine
Copy link
Contributor

💚 Build Succeeded

Metrics [docs]

✅ unchanged

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@mistic mistic merged commit 57bdd8b into elastic:master Jul 28, 2021
kibanamachine added a commit to kibanamachine/kibana that referenced this pull request Jul 28, 2021
)

* chore(NA): moving @kbn/config-schema to babel transpiler

* chore(NA): added runtime deps

* chore(NA): update api extractions

Co-authored-by: Kibana Machine <[email protected]>
kibanamachine added a commit to kibanamachine/kibana that referenced this pull request Jul 28, 2021
)

* chore(NA): moving @kbn/config-schema to babel transpiler

* chore(NA): added runtime deps

* chore(NA): update api extractions

Co-authored-by: Kibana Machine <[email protected]>
@kibanamachine
Copy link
Contributor

💚 Backport successful

Status Branch Result
7.14
7.x

The backport PRs will be merged automatically after passing CI.

kibanamachine added a commit that referenced this pull request Jul 28, 2021
…107087)

* chore(NA): moving @kbn/config-schema to babel transpiler

* chore(NA): added runtime deps

* chore(NA): update api extractions

Co-authored-by: Kibana Machine <[email protected]>

Co-authored-by: Tiago Costa <[email protected]>
kibanamachine added a commit that referenced this pull request Jul 28, 2021
…107088)

* chore(NA): moving @kbn/config-schema to babel transpiler

* chore(NA): added runtime deps

* chore(NA): update api extractions

Co-authored-by: Kibana Machine <[email protected]>

Co-authored-by: Tiago Costa <[email protected]>
streamich pushed a commit to vadimkibana/kibana that referenced this pull request Aug 8, 2021
)

* chore(NA): moving @kbn/config-schema to babel transpiler

* chore(NA): added runtime deps

* chore(NA): update api extractions

Co-authored-by: Kibana Machine <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto-backport Deprecated - use backport:version if exact versions are needed chore release_note:skip Skip the PR/issue when compiling release notes Team:Operations Team label for Operations Team v7.14.1 v7.15.0 v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants