Commit Graph

6 Commits

Author SHA1 Message Date
Anton Kastritskiy
a978c96987 large fb icons only, no density
Summary:
Currently we download a bunch of FB icons and we normally use the smallest one available.

In this diff I change the download logic so we try to download from the largest to the smallest icon and use the first one available. One the client we no longer provide the icon of the same size that is requested, instead we provide the only one we have which will typically be larger than needed. This is a good thing because

1. flipper is a local application and we do not need to worry about icons take up broadband and downloading
2. People have high density displayed

I also stopped using density(rest of related code removed in the next diff) for icons as it the icons themselves did not support it.

Reviewed By: lblasa

Differential Revision: D50495194

fbshipit-source-id: f569c2f3b8ee424a67c6d21136e7e113868b8f6a
2023-10-20 07:23:34 -07:00
Anton Kastritskiy
64d97998fd fix prod icons
Summary:
Previously we had requested non existing icons. This fixes missing icons on pixel dense screens (macbook pro, 4k screens).

I could add x4, x5 icons as well. Though they are no better than x3. Even x3 is pretty raterized. Ideally we should be serving icons with higher resolution and scaling them down instead of doing this. Even better use SVG icons which we do not have.

Reviewed By: LukeDefeo

Differential Revision: D50454271

fbshipit-source-id: cda90972abb56069e160ddefdc6de460c49d06c0
2023-10-19 07:25:40 -07:00
Michel Weststrate
50f50fa46c fall back to larger images if requested size is not available
Summary: This diff follows up on the previous one, by trying a larger icon size if the original requested icon size was missing.

Reviewed By: lblasa

Differential Revision: D46556076

fbshipit-source-id: 4a078088aa27390f247e39afeda4b1df261d8b30
2023-06-08 07:31:34 -07:00
Michel Weststrate
a6dac1d8d9 make icon download more robust, and use assets_DO_NOT_HARDCODE urls instead of asset urls.
Summary:
Since ~yesterday all our builds started failing due to being unable to download static assets. Although those assets load correctly in the browser, and by using the browsers's generated `curl` command, which looks like:

```
curl 'https://facebook.com/assets/?name=face-unhappy&variant=outline&size=24&set=facebook_icons&density=1x' \
  -H 'authority: facebook.com' \
  -H 'accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7' \
  -H 'accept-language: nl,en-GB;q=0.9,en;q=0.8,nl-NL;q=0.7,en-US;q=0.6' \
  -H 'cache-control: no-cache' \
  -H 'cookie: OMITTED' \
  -H 'pragma: no-cache' \
  -H 'sec-ch-ua: "Not.A/Brand";v="8", "Chromium";v="114", "Google Chrome";v="114"' \
  -H 'sec-ch-ua-mobile: ?0' \
  -H 'sec-ch-ua-platform: "macOS"' \
  -H 'sec-fetch-dest: document' \
  -H 'sec-fetch-mode: navigate' \
  -H 'sec-fetch-site: none' \
  -H 'sec-fetch-user: ?1' \
  -H 'upgrade-insecure-requests: 1' \
  -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36' \
  --compressed
```

Download fails as soon as the cookie header is dropped.

Changes the base url to `https://facebook.com/images/assets_DO_NOT_HARDCODE/facebook_icons/` fixes that problem, unless the resolution doesn't exist (addressed in next diff).

This also seems to remove the flakiness we were experiencing before, so dropped the retry mechanism for now.

Also made failing to download an icon a warning instead of a build failure.

Reviewed By: lblasa

Differential Revision: D46552986

fbshipit-source-id: f1382d6a8fc6669691f0c8da6b77834d24a373c5
2023-06-08 07:31:34 -07:00
dependabot[bot]
1f41f1dc2d Bump @adobe/node-fetch-retry from 2.0.0 to 2.1.0 in /desktop (#3384)
Summary:
Bumps [adobe/node-fetch-retry](https://github.com/adobe/node-fetch-retry) from 2.0.0 to 2.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/adobe/node-fetch-retry/releases"><code>@​adobe/node-fetch-retry</code>'s releases</a>.</em></p>
<blockquote>
<h2>v2.1.0</h2>
<h1><a href="https://github.com/adobe/node-fetch-retry/compare/v2.0.0...v2.1.0">2.1.0</a> (2022-01-24)</h1>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="aaf1b7195d"><code>aaf1b71</code></a> [ci skip] no-release: version number update</li>
<li><a href="24d20a624b"><code>24d20a6</code></a> FEATURE-RELEASE: Add Typescript declarations (<a href="https://github-redirect.dependabot.com/adobe/node-fetch-retry/issues/42">https://github.com/facebook/flipper/issues/42</a>)</li>
<li>See full diff in <a href="https://github.com/adobe/node-fetch-retry/compare/v2.0.0...v2.1.0">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@adobe/node-fetch-retry&package-manager=npm_and_yarn&previous-version=2.0.0&new-version=2.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

 ---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

Pull Request resolved: https://github.com/facebook/flipper/pull/3384

Reviewed By: passy

Differential Revision: D33892201

Pulled By: cekkaewnumchai

fbshipit-source-id: e318850d9bcad6908a92e41080fb64d8efafb183
2022-02-02 11:14:39 -08:00
Anton Kastritskiy
071bcaff96 Rename second batch for '.ts' files to '.tsx' in scripts dir
Summary: Rename first batch for '.ts' files to '.tsx'

Reviewed By: passy

Differential Revision: D33843246

fbshipit-source-id: eb8080db8cc3ef07820339bf8deafa208432de7c
2022-01-31 02:57:54 -08:00