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

Register symbols even without scopehoisting #5528

Closed
wants to merge 6 commits into from
Closed

Conversation

mischnic
Copy link
Member

@mischnic mischnic commented Dec 24, 2020

↪️ Pull Request

@devongovett found a usecase for this.... And more importantly: deferring! (But still no symbol propagation)

If I didn't screw something up, both resolveSymbol and getExportedSymbols should work.

Closes T-733

  • Add/Update tests
  • Is deferring working? Add test
  • Is require handled gracefully (because the non-scope-hoist visitor doesn't analyze how the return value is used)?

@height
Copy link

height bot commented Dec 24, 2020

This pull request has been linked to and will mark 1 task as "Done" when merged:

  • T-733 also collect symbols data without scope-hoisting and defer in dev-mode (unlink task)

💡Tip: You can link multiple Height tasks to a pull request.

@parcel-benchmark
Copy link

parcel-benchmark commented Dec 24, 2020

Benchmark Results

Kitchen Sink ✅

Timings

Description Time Difference
Cold 8.75s -763.00ms 🚀
Cached 479.00ms -16.00ms

Cold Bundles

Bundle Size Difference Time Difference
dist/modern/parcel.d5807e82.webp 102.94kb +0.00b 550.00ms -70.00ms 🚀
dist/modern/index.b43fcc94.js 1.12kb +0.00b 960.00ms +285.00ms ⚠️
dist/modern/index.html 701.00b +0.00b 555.00ms -118.00ms 🚀
dist/modern/index.0bc656bc.css 77.00b +0.00b 960.00ms -133.00ms 🚀

Cached Bundles

Bundle Size Difference Time Difference
dist/modern/parcel.d5807e82.webp 102.94kb +0.00b 55.00ms -3.00ms 🚀

React HackerNews ✅

Timings

Description Time Difference
Cold 23.40s -2.82s 🚀
Cached 826.00ms +28.00ms

Cold Bundles

Bundle Size Difference Time Difference
dist/index.js 477.78kb +0.00b 7.97s -1.28s 🚀
dist/NotFound.f3269ae7.js 542.00b +0.00b 440.00ms +44.00ms ⚠️
dist/logo.24c8bf9e.png 274.00b +0.00b 252.00ms +126.00ms ⚠️

Cached Bundles

Bundle Size Difference Time Difference
dist/index.js 477.78kb +0.00b 179.00ms +10.00ms ⚠️
dist/PermalinkedComment.0a19c7e4.js 4.24kb +0.00b 178.00ms +9.00ms ⚠️
dist/UserProfile.b2960402.js 1.78kb +0.00b 178.00ms +10.00ms ⚠️
dist/NotFound.f3269ae7.js 542.00b +0.00b 95.00ms -16.00ms 🚀
dist/logo.24c8bf9e.png 274.00b +0.00b 141.00ms +13.00ms ⚠️

AtlasKit Editor ✅

Timings

Description Time Difference
Cold 3.03m +24.93s ⚠️
Cached 3.19s -322.00ms 🚀

Cold Bundles

Bundle Size Difference Time Difference
dist/index.59a13c6f.js 2.46mb +0.00b 1.18m +4.41s ⚠️
dist/pdfRenderer.f5a3f4a7.js 1.11mb +4.00b ⚠️ 42.81s +2.21s ⚠️
dist/editorView.ea13a2b7.js 588.08kb +0.00b 1.42m +29.70s ⚠️
dist/popup.119ff481.js 171.12kb +0.00b 22.09s +5.25s ⚠️
dist/Toolbar.0c83bb49.js 100.68kb +0.00b 22.21s +5.30s ⚠️
dist/card.df70c9b7.js 54.67kb +0.00b 11.62s +1.58s ⚠️
dist/card.1d931b4c.js 52.43kb +0.00b 21.94s +8.24s ⚠️
dist/Modal.558fb5db.js 39.59kb +0.00b 4.26s -895.00ms 🚀
dist/component.ad27194c.js 31.05kb +0.00b 4.71s +2.22s ⚠️
dist/esm.e3419f0a.js 27.83kb +0.00b 7.75s -2.24s 🚀
dist/component.f25dcadb.js 22.80kb +0.00b 4.25s -897.00ms 🚀
dist/DatePicker.faca45d0.js 21.38kb +0.00b 9.18s +1.50s ⚠️
dist/smartMediaEditor.21f91ed8.js 16.96kb +0.00b 14.29s -2.60s 🚀
dist/js.8167e2d5.js 16.55kb +0.00b 4.25s -897.00ms 🚀
dist/dropzone.3ae9a030.js 16.15kb +0.00b 12.55s -4.04s 🚀
dist/ui.15dd7acd.js 14.30kb +0.00b 11.51s +1.62s ⚠️
dist/workerHasher.bc6346e1.js 11.90kb +0.00b 8.35s -1.64s 🚀
dist/component.677fad45.js 6.23kb +0.00b 4.90s +537.00ms ⚠️
dist/card.3a4028bd.js 5.74kb +0.00b 11.90s +808.00ms ⚠️
dist/media-viewer.f15e56f4.js 4.01kb +0.00b 11.95s -615.00ms 🚀
dist/png-chunks-extract.608f438d.js 3.56kb +0.00b 4.25s -897.00ms 🚀
dist/dropzone.d1e8004d.js 3.46kb +0.00b 12.55s -3.92s 🚀
dist/index.ece3a13e.css 3.46kb +0.00b 15.96s -3.88s 🚀
dist/Modal.08282ab6.js 3.23kb +0.00b 1.07s -3.03s 🚀
dist/clipboard.6a6e5fbd.js 3.00kb +0.00b 14.16s +1.43s ⚠️
dist/16.b6ca7fd0.js 2.50kb +0.00b 1.07s -1.41s 🚀
dist/ResourcedEmojiComponent.5046c0ff.js 2.19kb +0.00b 10.98s +1.10s ⚠️
dist/card.2888338b.js 2.15kb +0.00b 12.60s +1.36s ⚠️
dist/date.a69000aa.js 1.97kb +0.00b 4.96s -989.00ms 🚀
dist/images.ece03ae5.js 1.91kb +0.00b 5.00s -631.00ms 🚀
dist/feedback.facaac2e.js 1.87kb +0.00b 9.17s +1.50s ⚠️
dist/16.a9ea9b41.js 1.86kb +0.00b 4.61s -680.00ms 🚀
dist/browser.8883c452.js 1.85kb +0.00b 12.55s -1.11s 🚀
dist/16.89d45d15.js 1.80kb +0.00b 4.41s -223.00ms 🚀
dist/list-number.d4568b49.js 1.69kb +0.00b 5.09s -561.00ms 🚀
dist/status.6595d133.js 1.69kb +0.00b 6.85s +969.00ms ⚠️
dist/link.5be155be.js 1.54kb +0.00b 5.09s -531.00ms 🚀
dist/heading6.5a6082c8.js 1.53kb +0.00b 5.58s -467.00ms 🚀
dist/heading3.1c92891c.js 1.52kb +0.00b 5.37s -636.00ms 🚀
dist/16.07ccad90.js 1.51kb +0.00b 4.60s -774.00ms 🚀
dist/16.00f25203.js 1.47kb +0.00b 4.41s -223.00ms 🚀
dist/16.02056ae6.js 1.47kb +0.00b 4.42s -950.00ms 🚀
dist/emoji.b5624cf5.js 1.46kb +0.00b 4.96s -660.00ms 🚀
dist/16.b7da7bde.js 1.45kb +0.00b 1.07s -1.41s 🚀
dist/16.00100306.js 1.44kb +0.00b 4.82s -605.00ms 🚀
dist/16.bdd61d2d.js 1.41kb +0.00b 4.80s -624.00ms 🚀
dist/heading5.88bc6249.js 1.41kb +0.00b 5.37s -636.00ms 🚀
dist/expand.4a483eb0.js 1.39kb +0.00b 9.17s +1.50s ⚠️
dist/16.fa5f411c.js 1.36kb +0.00b 4.80s -489.00ms 🚀
dist/16.2a21d3f4.js 1.34kb +0.00b 1.07s -1.41s 🚀
dist/heading2.22de70fe.js 1.34kb +0.00b 5.37s -637.00ms 🚀
dist/16.d10db5a3.js 1.32kb +0.00b 4.80s -489.00ms 🚀
dist/mention.c44b48ed.js 1.30kb +0.00b 5.09s -672.00ms 🚀
dist/heading4.a2524c70.js 1.29kb +0.00b 5.37s -646.00ms 🚀
dist/Modal.44e980e0.js 1.29kb +0.00b 4.25s -897.00ms 🚀
dist/16.9e97e787.js 1.28kb +0.00b 1.07s -1.41s 🚀
dist/16.acff901d.js 1.27kb +0.00b 4.60s -688.00ms 🚀
dist/component.233c7a65.js 1.26kb +0.00b 4.71s +608.00ms ⚠️
dist/16.015dfb9d.js 1.26kb +0.00b 4.41s -631.00ms 🚀
dist/16.828b958e.js 1.26kb +0.00b 4.60s -774.00ms 🚀
dist/16.b9b1643b.js 1.26kb +0.00b 4.60s -974.00ms 🚀
dist/16.ec84a250.js 1.26kb +0.00b 4.41s -223.00ms 🚀
dist/divider.ed7ccd2e.js 1.26kb +0.00b 4.96s -989.00ms 🚀
dist/quote.b6d8bffb.js 1.25kb +0.00b 5.33s -546.00ms 🚀
dist/media-card-analytics-error-boundary.ff0177b3.js 1.25kb +0.00b 11.90s +865.00ms ⚠️
dist/16.458399e0.js 1.23kb +0.00b 4.71s +610.00ms ⚠️
dist/decision.c48f9f1e.js 1.22kb +0.00b 4.96s -989.00ms 🚀
dist/panel-warning.b5f3360d.js 1.22kb +0.00b 5.22s -549.00ms 🚀
dist/list.2dfe3f18.js 1.19kb +0.00b 5.09s -1.86s 🚀
dist/heading1.cc82b077.js 1.19kb +0.00b 6.85s +966.00ms ⚠️
dist/16.90358f40.js 1.18kb +0.00b 4.80s -492.00ms 🚀
dist/panel-error.7454ebc0.js 1.12kb +0.00b 5.20s -570.00ms 🚀
dist/panel.fc70749c.js 1.11kb +0.00b 5.22s -656.00ms 🚀
dist/table.77df779b.js 1.10kb +0.00b 6.85s +970.00ms ⚠️
dist/panel-success.d5752da0.js 1.06kb +0.00b 5.22s -543.00ms 🚀
dist/panel-note.6a71a1f2.js 1.05kb +0.00b 5.22s -543.00ms 🚀
dist/media-picker-analytics-error-boundary.49b32f4d.js 1023.00b +0.00b 12.55s -3.97s 🚀
dist/media-card-analytics-error-boundary.9a500f44.js 1019.00b +0.00b 11.52s +1.22s ⚠️
dist/simpleHasher.79137cb4.js 767.00b +0.00b 8.30s -1.69s 🚀
dist/simpleHasher.2c5206fd.js 767.00b +0.00b 14.29s -2.60s 🚀
dist/index.html 119.00b +0.00b 3.57s +602.00ms ⚠️

Cached Bundles

Bundle Size Difference Time Difference
dist/component.ad27194c.js 31.05kb +0.00b 524.00ms -86.00ms 🚀
dist/component.f25dcadb.js 22.80kb +0.00b 548.00ms -31.00ms 🚀
dist/smartMediaEditor.21f91ed8.js 16.96kb +0.00b 678.00ms -38.00ms 🚀
dist/js.8167e2d5.js 16.55kb +0.00b 548.00ms -31.00ms 🚀
dist/png-chunks-extract.608f438d.js 3.56kb +0.00b 548.00ms -31.00ms 🚀
dist/Modal.08282ab6.js 3.23kb +0.00b 619.00ms +52.00ms ⚠️
dist/16.b6ca7fd0.js 2.50kb +0.00b 524.00ms -43.00ms 🚀
dist/workerHasher.d607e0b8.js 1.77kb +0.00b 678.00ms -37.00ms 🚀
dist/16.b7da7bde.js 1.45kb +0.00b 524.00ms -43.00ms 🚀
dist/16.2a21d3f4.js 1.34kb +0.00b 524.00ms -43.00ms 🚀
dist/Modal.44e980e0.js 1.29kb +0.00b 549.00ms -30.00ms 🚀
dist/media-card-analytics-error-boundary.b884d580.js 1019.00b +0.00b 678.00ms -37.00ms 🚀
dist/simpleHasher.2c5206fd.js 767.00b +0.00b 678.00ms -38.00ms 🚀

Three.js ✅

Timings

Description Time Difference
Cold 20.47s -382.00ms
Cached 631.00ms -63.00ms 🚀

Cold Bundles

Bundle Size Difference Time Difference
dist/Three.js 580.60kb +0.00b 8.17s +748.00ms ⚠️

Cached Bundles

Bundle Size Difference Time Difference
dist/Three.js 580.60kb +0.00b 120.00ms +7.00ms ⚠️

Click here to view a detailed benchmark overview.

@mischnic mischnic force-pushed the noscopehoist-symbols branch 2 times, most recently from 33e440d to 0de25de Compare March 3, 2021 22:34
@mischnic mischnic marked this pull request as ready for review March 3, 2021 23:05
@mischnic mischnic force-pushed the noscopehoist-symbols branch from 0de25de to de39b43 Compare March 4, 2021 12:01
@mischnic mischnic force-pushed the noscopehoist-symbols branch from de39b43 to 9c391b6 Compare March 11, 2021 23:46
@mischnic mischnic closed this Oct 31, 2021
@mischnic mischnic deleted the noscopehoist-symbols branch September 26, 2023 09:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants