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

[web] Reduce code size impact of fallback font data #38787

Merged
merged 2 commits into from
Jan 17, 2023

Conversation

mdebbar
Copy link
Contributor

@mdebbar mdebbar commented Jan 11, 2023

Optimizes fallback font data introduced in #35646.

Counter app

Size of main.dart.js:

Before After
Uncompressed 1.65MB 1.5MB
Gzip (-9) 513KB 483KB
Brotli (-9) 419KB 408KB

Related to flutter/flutter#113898

@flutter-dashboard flutter-dashboard bot added the platform-web Code specifically for the web engine label Jan 11, 2023
@mdebbar
Copy link
Contributor Author

mdebbar commented Jan 13, 2023

Do we want to move forward with this @hterkelsen @eyebrowsoffire ?

Copy link
Contributor

@harryterkelsen harryterkelsen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

final int start = int.parse(starts[i], radix: 16);
final int end = int.parse(ends[i], radix: 16);

sb.write(start.toRadixString(36));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

36 just to get maximum "compression"?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. To encode the integer in as few characters as possible.

@eyebrowsoffire
Copy link
Contributor

I tested this against the dart2wasm stuff and it doesn't cause anything to explode, so LGTM!

Copy link
Contributor

@eyebrowsoffire eyebrowsoffire left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@kevmoo
Copy link
Contributor

kevmoo commented Jan 17, 2023

@mdebbar – make non-draft and land?

@mdebbar mdebbar marked this pull request as ready for review January 17, 2023 19:58
@mdebbar mdebbar added the autosubmit Merge PR when tree becomes green via auto submit App label Jan 17, 2023
@auto-submit auto-submit bot merged commit 928772e into flutter:main Jan 17, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jan 18, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jan 18, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jan 18, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Jan 18, 2023
…118720)

* 5aee7914c Roll Dart SDK from 645fd748e79e to 0097dcbada06 (3 revisions) (flutter/engine#38883)

* 78a68b9df Roll Skia from c64a10d525d1 to aa99fa0bdd31 (10 revisions) (flutter/engine#38886)

* 398af8c20 Roll Fuchsia Mac SDK from w0hr1ZMvYGJnWInwK... to nPbEqgIfE8TLOokQH... (flutter/engine#38889)

* 703502712 Roll Skia from aa99fa0bdd31 to 5a51583d09dd (2 revisions) (flutter/engine#38892)

* 2075cf3f8 Roll Fuchsia Mac SDK from nPbEqgIfE8TLOokQH... to SmEVvAFBC8oriPBou... (flutter/engine#38897)

* ef06ef602 Roll Skia from 5a51583d09dd to 34a14247bd4b (1 revision) (flutter/engine#38901)

* 0d374a919 Roll Skia from 34a14247bd4b to c727016cc09e (1 revision) (flutter/engine#38903)

* 31f2020d9 Roll Skia from c727016cc09e to 214411b09e92 (2 revisions) (flutter/engine#38907)

* a3006de27 Bump actions/setup-python from 4.4.0 to 4.5.0 (flutter/engine#38909)

* eacc09c47 Bump github/codeql-action from 2.1.37 to 2.1.38 (flutter/engine#38910)

* c33c11c93 Roll Skia from 214411b09e92 to 3704033dd106 (1 revision) (flutter/engine#38908)

* afa093dbe [Impeller] Map UVs correctly for TiledTextureContents (flutter/engine#38894)

* 46ea2b3cc Roll Fuchsia Mac SDK from SmEVvAFBC8oriPBou... to bZfX8KCoI3CfxEzsG... (flutter/engine#38912)

* aadb97112 Roll Skia from 3704033dd106 to 58e745419425 (4 revisions) (flutter/engine#38936)

* 24b21a5b4 Roll Fuchsia Mac SDK from bZfX8KCoI3CfxEzsG... to iwCuzAuMgsk75hlT0... (flutter/engine#38938)

* e65558087 Roll Skia from 58e745419425 to 6afb97022fa7 (1 revision) (flutter/engine#38943)

* 5932badce Revert "Revert "[web] Don't overwrite editing state with semantic updates (#38271)" (#38562)" (flutter/engine#38854)

* 928772eba [web] Reduce code size impact of fallback font data (flutter/engine#38787)

* 88a8d9a36 Roll Skia from 6afb97022fa7 to 8ea9b39f7213 (18 revisions) (flutter/engine#38952)

* 3a479434b Roll Skia from 8ea9b39f7213 to 69d8378097df (6 revisions) (flutter/engine#38953)

* 641623a51 wrap focus() in a post update callback (flutter/engine#38958)

* 7d71ee3bf Roll Fuchsia Mac SDK from iwCuzAuMgsk75hlT0... to -1N2YUML8GqNhK8YP... (flutter/engine#38960)

* d762142bb reland fix canvas drawLine bugs (flutter/engine#38949)

* 0d7953387 [Impeller] Fix back-to-back clip restoration (flutter/engine#38964)

* 19fe86ca9 Update scenario screenshots to iOS 16 (flutter/engine#38962)

* eb18ac0a7 Fix iOS safari keyboard issue when semantics is enabled (flutter/engine#38822)

* 84a73d92f [Impeller Scene] Add SceneNodeValue for synchronously fetching loaded ipscenes (flutter/engine#38913)

* 7bff5dd11 Revert "Roll Dart SDK from 645fd748e79e to 0097dcbada06 (3 revisions) (#38883)" (flutter/engine#38973)

* c52b29081 Roll Fuchsia Mac SDK from -1N2YUML8GqNhK8YP... to P5QcCJU8I71xVXuMT... (flutter/engine#38976)
gspencergoog pushed a commit to gspencergoog/flutter that referenced this pull request Jan 19, 2023
…lutter#118720)

* 5aee7914c Roll Dart SDK from 645fd748e79e to 0097dcbada06 (3 revisions) (flutter/engine#38883)

* 78a68b9df Roll Skia from c64a10d525d1 to aa99fa0bdd31 (10 revisions) (flutter/engine#38886)

* 398af8c20 Roll Fuchsia Mac SDK from w0hr1ZMvYGJnWInwK... to nPbEqgIfE8TLOokQH... (flutter/engine#38889)

* 703502712 Roll Skia from aa99fa0bdd31 to 5a51583d09dd (2 revisions) (flutter/engine#38892)

* 2075cf3f8 Roll Fuchsia Mac SDK from nPbEqgIfE8TLOokQH... to SmEVvAFBC8oriPBou... (flutter/engine#38897)

* ef06ef602 Roll Skia from 5a51583d09dd to 34a14247bd4b (1 revision) (flutter/engine#38901)

* 0d374a919 Roll Skia from 34a14247bd4b to c727016cc09e (1 revision) (flutter/engine#38903)

* 31f2020d9 Roll Skia from c727016cc09e to 214411b09e92 (2 revisions) (flutter/engine#38907)

* a3006de27 Bump actions/setup-python from 4.4.0 to 4.5.0 (flutter/engine#38909)

* eacc09c47 Bump github/codeql-action from 2.1.37 to 2.1.38 (flutter/engine#38910)

* c33c11c93 Roll Skia from 214411b09e92 to 3704033dd106 (1 revision) (flutter/engine#38908)

* afa093dbe [Impeller] Map UVs correctly for TiledTextureContents (flutter/engine#38894)

* 46ea2b3cc Roll Fuchsia Mac SDK from SmEVvAFBC8oriPBou... to bZfX8KCoI3CfxEzsG... (flutter/engine#38912)

* aadb97112 Roll Skia from 3704033dd106 to 58e745419425 (4 revisions) (flutter/engine#38936)

* 24b21a5b4 Roll Fuchsia Mac SDK from bZfX8KCoI3CfxEzsG... to iwCuzAuMgsk75hlT0... (flutter/engine#38938)

* e65558087 Roll Skia from 58e745419425 to 6afb97022fa7 (1 revision) (flutter/engine#38943)

* 5932badce Revert "Revert "[web] Don't overwrite editing state with semantic updates (flutter#38271)" (flutter#38562)" (flutter/engine#38854)

* 928772eba [web] Reduce code size impact of fallback font data (flutter/engine#38787)

* 88a8d9a36 Roll Skia from 6afb97022fa7 to 8ea9b39f7213 (18 revisions) (flutter/engine#38952)

* 3a479434b Roll Skia from 8ea9b39f7213 to 69d8378097df (6 revisions) (flutter/engine#38953)

* 641623a51 wrap focus() in a post update callback (flutter/engine#38958)

* 7d71ee3bf Roll Fuchsia Mac SDK from iwCuzAuMgsk75hlT0... to -1N2YUML8GqNhK8YP... (flutter/engine#38960)

* d762142bb reland fix canvas drawLine bugs (flutter/engine#38949)

* 0d7953387 [Impeller] Fix back-to-back clip restoration (flutter/engine#38964)

* 19fe86ca9 Update scenario screenshots to iOS 16 (flutter/engine#38962)

* eb18ac0a7 Fix iOS safari keyboard issue when semantics is enabled (flutter/engine#38822)

* 84a73d92f [Impeller Scene] Add SceneNodeValue for synchronously fetching loaded ipscenes (flutter/engine#38913)

* 7bff5dd11 Revert "Roll Dart SDK from 645fd748e79e to 0097dcbada06 (3 revisions) (flutter#38883)" (flutter/engine#38973)

* c52b29081 Roll Fuchsia Mac SDK from -1N2YUML8GqNhK8YP... to P5QcCJU8I71xVXuMT... (flutter/engine#38976)
ricardoamador pushed a commit to ricardoamador/engine that referenced this pull request Jan 25, 2023
* [web] Reduce code size impact of fallback font data

* fix rangeEnd vs rangeLength mistake
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App platform-web Code specifically for the web engine
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants