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

Revert HTML templates and make everything typed using builder API #559

Closed

Conversation

lukechu10
Copy link
Collaborator

Closes #556
Supersedes #537

@lukechu10 lukechu10 added C-enhancement Category: new feature or improvement to existing feature BREAKING CHANGE Breaking changes introduced in this PR A-ergonomics Area: API ergonomics A-view Area: view! macro labels Jan 17, 2023
@lukechu10 lukechu10 added this to the v0.9 milestone Jan 17, 2023
@codecov
Copy link

codecov bot commented Jan 17, 2023

Codecov Report

Base: 60.52% // Head: 49.90% // Decreases project coverage by -10.62% ⚠️

Coverage data is based on head (9818c40) compared to base (6cecd1a).
Patch coverage: 1.23% of modified lines in pull request are covered.

❗ Current head 9818c40 differs from pull request most recent head db60e27. Consider uploading reports for the commit db60e27 to get more accurate results

Additional details and impacted files
@@             Coverage Diff             @@
##           master     #559       +/-   ##
===========================================
- Coverage   60.52%   49.90%   -10.62%     
===========================================
  Files          55       74       +19     
  Lines        9299    11323     +2024     
===========================================
+ Hits         5628     5651       +23     
- Misses       3671     5672     +2001     
Impacted Files Coverage Δ
packages/sycamore-core/src/component.rs 21.73% <ø> (ø)
packages/sycamore-core2/src/component.rs 0.00% <0.00%> (ø)
packages/sycamore-core2/src/elements.rs 0.00% <0.00%> (ø)
packages/sycamore-core2/src/generic_node.rs 0.00% <0.00%> (ø)
packages/sycamore-core2/src/noderef.rs 0.00% <0.00%> (ø)
packages/sycamore-core2/src/render.rs 0.00% <0.00%> (ø)
packages/sycamore-macro/src/view/codegen.rs 86.41% <ø> (ø)
packages/sycamore-web2/src/html/attributes.rs 0.00% <0.00%> (ø)
packages/sycamore-web2/src/html/bind_props.rs 0.00% <0.00%> (ø)
packages/sycamore-web2/src/html/elements.rs 0.00% <0.00%> (ø)
... and 15 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@lukechu10 lukechu10 added the performance Performance related label Jan 25, 2023
@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |       144.46 |   161.93 |  191.95 |  +18.53%
- 02_replace1k              |       152.55 |   188.81 |  212.96 |  +12.79%
  03_update10th1k_x16       |       477.37 |   471.87 |  460.82 |   -2.34%
  04_select1k               |        62.10 |    84.50 |   86.70 |   +2.62%
- 05_swap1k                 |       123.74 |   124.28 |  141.78 |  +14.08%
- 06_remove-one-1k          |       210.77 |   212.54 |  227.13 |   +6.87%
- 07_create10k              |      1448.40 |  1823.81 | 2028.15 |  +11.20%
- 08_create1k-after1k_x2    |       352.15 |   396.69 |  431.68 |   +8.82%
- 09_clear1k_x8             |       105.33 |   133.34 |  150.77 |  +13.07%
  21_ready-memory           |         0.00 |     0.00 |    0.00 |     NaN%
  22_run-memory             |         0.00 |     0.00 |    0.00 |     NaN%
  23_update5-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  25_run-clear-memory       |         0.00 |     0.00 |    0.00 |     NaN%
  26_run-10k-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  31_startup-ci             |      1831.96 |  1991.39 | 1989.30 |   -0.11%
+ 32_startup-bt             |         0.00 |     0.04 |    0.00 | -100.00%
+ 33_startup-mainthreadcost |        21.60 |    38.69 |   16.30 |  -57.87%
  34_startup-totalbytes     |       189.33 |   302.19 |  310.64 |   +2.80%

Workflow: 4009898185
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |       153.24 |   193.25 |  206.47 |   +6.84%
- 02_replace1k              |       164.79 |   213.51 |  226.28 |   +5.98%
  03_update10th1k_x16       |       471.02 |   492.44 |  496.94 |   +0.92%
  04_select1k               |        71.02 |    87.99 |   87.11 |   -1.00%
- 05_swap1k                 |       119.17 |   117.32 |  129.25 |  +10.16%
  06_remove-one-1k          |       203.56 |   213.24 |  209.77 |   -1.63%
- 07_create10k              |      1628.84 |  2073.93 | 2321.66 |  +11.95%
- 08_create1k-after1k_x2    |       392.48 |   450.92 |  504.27 |  +11.83%
- 09_clear1k_x8             |       114.81 |   146.26 |  167.20 |  +14.31%
  21_ready-memory           |         0.00 |     0.00 |    0.00 |     NaN%
  22_run-memory             |         0.00 |     0.00 |    0.00 |     NaN%
  23_update5-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  25_run-clear-memory       |         0.00 |     0.00 |    0.00 |     NaN%
  26_run-10k-memory         |         0.00 |     0.00 |    0.00 |     NaN%
+ 31_startup-ci             |      1881.70 |  1937.88 | 1861.22 |   -3.96%
- 32_startup-bt             |         0.00 |     0.00 |    0.04 |    +inf%
- 33_startup-mainthreadcost |        17.11 |    19.29 | 3236.99 | +16677.77%
- 34_startup-totalbytes     |       189.33 |   302.19 |  312.91 |   +3.55%

Workflow: 4010647856
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        44.36 |     0.00 |   50.44 |    +inf%
- 02_replace1k              |        46.26 |     0.00 |   54.63 |    +inf%
- 03_update10th1k_x16       |       107.63 |     0.00 |  116.28 |    +inf%
- 04_select1k               |        11.25 |     0.00 |   17.84 |    +inf%
- 05_swap1k                 |        30.00 |     0.00 |   31.15 |    +inf%
- 06_remove-one-1k          |        49.10 |     0.00 |   50.25 |    +inf%
- 07_create10k              |       466.23 |     0.00 |  637.81 |    +inf%
- 08_create1k-after1k_x2    |        98.97 |     0.00 |  111.91 |    +inf%
- 09_clear1k_x8             |        33.40 |     0.00 |   40.16 |    +inf%
- 21_ready-memory           |         1.87 |     0.00 |    1.83 |    +inf%
- 22_run-memory             |         2.84 |     0.00 |    6.58 |    +inf%
- 23_update5-memory         |         3.00 |     0.00 |    6.73 |    +inf%
- 25_run-clear-memory       |         1.93 |     0.00 |    5.38 |    +inf%
- 26_run-10k-memory         |        13.33 |     0.00 |   50.57 |    +inf%
- 31_startup-ci             |      1876.26 |     0.00 | 1877.92 |    +inf%
- 32_startup-bt             |         0.00 |     0.00 |    0.04 |    +inf%
- 33_startup-mainthreadcost |         6.93 |     0.00 | 6363.56 |    +inf%
- 34_startup-totalbytes     |       189.33 |     0.00 |  279.33 |    +inf%

Workflow: 4010877346
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |       113.34 |   129.69 |  141.25 |   +8.91%
- 02_replace1k              |       120.07 |   145.89 |  164.75 |  +12.93%
  03_update10th1k_x16       |       373.72 |   436.14 |  432.75 |   -0.78%
+ 04_select1k               |        50.84 |    68.75 |   64.68 |   -5.92%
- 05_swap1k                 |        93.97 |    97.15 |  101.05 |   +4.01%
+ 06_remove-one-1k          |       160.22 |   171.54 |  165.78 |   -3.36%
- 07_create10k              |      1243.96 |  1550.51 | 1723.05 |  +11.13%
- 08_create1k-after1k_x2    |       292.08 |   339.37 |  361.43 |   +6.50%
- 09_clear1k_x8             |        92.89 |   118.60 |  136.77 |  +15.32%
  21_ready-memory           |         0.00 |     0.00 |    0.00 |     NaN%
  22_run-memory             |         0.00 |     0.00 |    0.00 |     NaN%
  23_update5-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  25_run-clear-memory       |         0.00 |     0.00 |    0.00 |     NaN%
  26_run-10k-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  31_startup-ci             |      1733.21 |  1980.95 | 1958.40 |   -1.14%
  32_startup-bt             |         0.00 |     0.00 |    0.00 |     NaN%
+ 33_startup-mainthreadcost |        16.46 |    21.09 |   12.14 |  -42.44%
- 34_startup-totalbytes     |       189.33 |   302.19 |  312.91 |   +3.55%

Workflow: 4010753746
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |       118.06 |   140.40 |  151.44 |   +7.87%
- 02_replace1k              |       128.20 |   159.95 |  178.84 |  +11.81%
+ 03_update10th1k_x16       |       466.22 |   489.75 |  463.86 |   -5.29%
- 04_select1k               |        58.78 |    77.02 |   84.44 |   +9.64%
  05_swap1k                 |       104.10 |   121.13 |  124.37 |   +2.67%
  06_remove-one-1k          |       184.01 |   201.73 |  204.04 |   +1.15%
- 07_create10k              |      1265.06 |  1567.63 | 1759.87 |  +12.26%
- 08_create1k-after1k_x2    |       304.71 |   350.49 |  383.51 |   +9.42%
- 09_clear1k_x8             |        96.36 |   113.80 |  142.30 |  +25.05%
  21_ready-memory           |         0.00 |     0.00 |    0.00 |     NaN%
  22_run-memory             |         0.00 |     0.00 |    0.00 |     NaN%
  23_update5-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  25_run-clear-memory       |         0.00 |     0.00 |    0.00 |     NaN%
  26_run-10k-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  31_startup-ci             |      1831.08 |  1932.39 | 1982.05 |   +2.57%
  32_startup-bt             |         0.00 |     0.00 |    0.00 |     NaN%
+ 33_startup-mainthreadcost |        13.01 |    15.33 |   13.29 |  -13.33%
- 34_startup-totalbytes     |       189.33 |   302.19 |  312.91 |   +3.55%

Workflow: 4011035327
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |       107.12 |   122.47 |  143.18 |  +16.90%
- 02_replace1k              |       113.20 |   138.62 |  155.75 |  +12.36%
- 03_update10th1k_x16       |       284.80 |   308.97 |  323.90 |   +4.83%
- 04_select1k               |        34.65 |    45.43 |   57.32 |  +26.17%
  05_swap1k                 |        72.57 |    79.36 |   80.70 |   +1.69%
- 06_remove-one-1k          |       121.23 |   128.65 |  140.57 |   +9.26%
- 07_create10k              |      1166.82 |  1457.52 | 1607.56 |  +10.29%
- 08_create1k-after1k_x2    |       260.25 |   295.44 |  326.26 |  +10.43%
- 09_clear1k_x8             |        73.04 |    98.84 |  110.69 |  +11.99%
  21_ready-memory           |         0.00 |     0.00 |    0.00 |     NaN%
  22_run-memory             |         0.00 |     0.00 |    0.00 |     NaN%
  23_update5-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  25_run-clear-memory       |         0.00 |     0.00 |    0.00 |     NaN%
  26_run-10k-memory         |         0.00 |     0.00 |    0.00 |     NaN%
+ 31_startup-ci             |      1829.96 |  2031.27 | 1962.50 |   -3.39%
  32_startup-bt             |         0.00 |     0.00 |    0.00 |     NaN%
- 33_startup-mainthreadcost |        13.96 |    13.63 |   14.83 |   +8.79%
- 34_startup-totalbytes     |       189.33 |   302.19 |  312.84 |   +3.52%

Workflow: 4011144851
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |       108.78 |   125.59 |  140.63 |  +11.98%
- 02_replace1k              |       114.06 |   142.22 |  156.96 |  +10.37%
  03_update10th1k_x16       |       324.70 |   326.31 |  330.22 |   +1.20%
  04_select1k               |        45.34 |    51.48 |   50.72 |   -1.49%
+ 05_swap1k                 |        82.77 |    87.60 |   82.54 |   -5.78%
  06_remove-one-1k          |       137.96 |   143.16 |  142.78 |   -0.26%
- 07_create10k              |      1196.03 |  1480.62 | 1620.25 |   +9.43%
- 08_create1k-after1k_x2    |       272.51 |   313.52 |  335.41 |   +6.98%
- 09_clear1k_x8             |        80.22 |   110.70 |  125.61 |  +13.47%
  21_ready-memory           |         0.00 |     0.00 |    0.00 |     NaN%
  22_run-memory             |         0.00 |     0.00 |    0.00 |     NaN%
  23_update5-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  25_run-clear-memory       |         0.00 |     0.00 |    0.00 |     NaN%
  26_run-10k-memory         |         0.00 |     0.00 |    0.00 |     NaN%
  31_startup-ci             |      1831.95 |  1910.01 | 1911.39 |   +0.07%
  32_startup-bt             |         0.00 |     0.00 |    0.00 |     NaN%
+ 33_startup-mainthreadcost |        11.89 |    17.61 |   16.49 |   -6.35%
- 34_startup-totalbytes     |       189.33 |   302.19 |  312.79 |   +3.51%

Workflow: 4011238513
Adding new commits will generate a new report

@lukechu10
Copy link
Collaborator Author

This PR has become a giant mess and so it will probably be easier to restart again, this time splitting it up into more incremental chunks. Also I really don't want to go through all these merge conflicts!

@lukechu10 lukechu10 closed this May 3, 2023
@lukechu10 lukechu10 deleted the revert-templates-and-add-typed branch October 6, 2023 15:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-ergonomics Area: API ergonomics A-view Area: view! macro BREAKING CHANGE Breaking changes introduced in this PR C-enhancement Category: new feature or improvement to existing feature performance Performance related
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Completely make elements type-checked. Type all the things!
1 participant