Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@mdebbar
Copy link
Contributor

@mdebbar mdebbar commented Nov 20, 2024

The csslib parser was not reliably parsing all URLs in the CSS response. I'm switching to using a RegExp to extract all URLs reliably.

Fixes flutter/flutter#159215

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group.

@github-actions github-actions bot added the platform-web Code specifically for the web engine label Nov 20, 2024
int familyCount = 0;
// Give each font shard a unique family name.
for (final Uri uri in uriCollector.uris) {
for (final match in r.allMatches(cssString)) {
Copy link
Member

Choose a reason for hiding this comment

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

Do we need to check that the match is a proper font URI? (like ending in known extensions or something?)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Instead of doing that in the if, I'll make the regex more restrictive (i.e. starts with https?:// and ends with \.woff2).

Copy link
Member

@ditman ditman Nov 20, 2024

Choose a reason for hiding this comment

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

SGTM! Something I like to do when I write a complex RegEx is to create it here:

And save it (they support "Github login") with some Tests there. It's pretty fancy and IMO makes the regex explanation very legible!

(For example: https://regexr.com/88q3g)

@flutter-dashboard
Copy link

Golden file changes have been found for this pull request. Click here to view and triage (e.g. because this is an intentional change).

If you are still iterating on this change and are not ready to resolve the images on the Flutter Gold dashboard, consider marking this PR as a draft pull request above. You will still be able to view image results on the dashboard, commenting will be silenced, and the check will not try to resolve itself until marked ready for review.

Changes reported for pull request #56733 at sha 568868d

@mdebbar mdebbar added the autosubmit Merge PR when tree becomes green via auto submit App label Nov 21, 2024
@auto-submit auto-submit bot merged commit 78b87f3 into flutter:main Nov 21, 2024
39 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 21, 2024
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Nov 21, 2024
@mdebbar mdebbar deleted the missing_fonts branch November 26, 2024 18:25
nick9822 pushed a commit to nick9822/flutter that referenced this pull request Dec 18, 2024
The `csslib` parser was not reliably parsing all URLs in the CSS response. I'm switching to using a RegExp to extract all URLs reliably.

Fixes flutter#159215
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

autosubmit Merge PR when tree becomes green via auto submit App platform-web Code specifically for the web engine will affect goldens

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[web] The split CJK fallback fonts don't cover all code points

2 participants