Skip to content

fix(frontend): 設定マイグレーション周りの修正#15807

Open
kakkokari-gtyih wants to merge 11 commits intomisskey-dev:developfrom
kakkokari-gtyih:fix-fe-settings-migration
Open

fix(frontend): 設定マイグレーション周りの修正#15807
kakkokari-gtyih wants to merge 11 commits intomisskey-dev:developfrom
kakkokari-gtyih:fix-fe-settings-migration

Conversation

@kakkokari-gtyih
Copy link
Copy Markdown
Contributor

@kakkokari-gtyih kakkokari-gtyih commented Apr 13, 2025

What

  • 起動時の設定マイグレーションをlazy-loadingにした
    • マイグレーションが完了しているクライアントではマイグレーションプログラムの読み込みをスキップできるようになり、データ通信を軽減できる
  • 設定マイグレーションのPromiseを監視し、すべて完了したらリロードするように
    • 今は10秒固定で待った後にリロードしているが、Promise完了次第リロードすることで不必要に待たせないで済む(裏で別の移行処理が走っていてそれを考慮するために10秒固定で待たせていたのなら戻します)
    • 最低5秒は待たせ、文章がちゃんと読めるように

Why

Additional info (optional)

Checklist

  • Read the contribution guide
  • Test working in a local environment
  • (If needed) Add story of storybook
  • (If needed) Update CHANGELOG.md
  • (If possible) Add tests

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 13, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 13.97%. Comparing base (cb03f3f) to head (73dbadd).
⚠️ Report is 196 commits behind head on develop.

Additional details and impacted files
@@             Coverage Diff              @@
##           develop   #15807       +/-   ##
============================================
- Coverage    62.86%   13.97%   -48.90%     
============================================
  Files         1150      237      -913     
  Lines       115224    11273   -103951     
  Branches      7907     3728     -4179     
============================================
- Hits         72439     1575    -70864     
+ Misses       40644     7578    -33066     
+ Partials      2141     2120       -21     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@syuilo
Copy link
Copy Markdown
Member

syuilo commented Apr 13, 2025

起動時の設定マイグレーションをlazy-loadingにした

アプデ直後の読み込みでimportに失敗した場合に面倒なことになりそうなのと、当該ファイルを分割することによるサイズ削減の効果はあまり無さそうだから今のままで良いかも

設定マイグレーションのPromiseを監視し、すべて完了したらリロードするように

説明を読む時間を与えたいから今のままで良いかも?
あと一部のPromiseが失敗した場合にどうなるかは気になる

@kakkokari-gtyih
Copy link
Copy Markdown
Contributor Author

ファイルを分割することによるサイズ削減の効果はあまり無さそう

プロパティ名がminifyされないので結構でかいはず

説明を読む時間を与えたい

最低n秒待たすとかはやってもいいかも(それでもPromiseが終わるまでは待ったほうがいい気はする)

あと一部のPromiseが失敗した場合にどうなるかは気になる

Promise.allなのでそのまま続行するはず

@syuilo
Copy link
Copy Markdown
Member

syuilo commented Apr 27, 2025

あまり変更を行って問題が起きてもアレだからひとまず現在の実装を維持することにします 🙏🏻

@syuilo syuilo closed this Apr 27, 2025
@github-project-automation github-project-automation Bot moved this from Todo to Done in [実験中] 管理用 Apr 27, 2025
@kakkokari-gtyih
Copy link
Copy Markdown
Contributor Author

kakkokari-gtyih commented Aug 22, 2025

やっぱりあったほうがいい気がする

  • 1回きりとはいえ、10秒は長い(かと言って場当たり的に固定秒を短縮すると、今度は低スペック端末でこの処理時間を超えた場合をケアできなくなる)
  • 次回以降の起動でマイグレーションが必要ないにも関わらずそのコード(7kB)が必ずbootに含まれているのは無駄

@dosubot dosubot Bot added the size:S This PR changes 10-29 lines, ignoring generated files. label Aug 22, 2025
@dosubot dosubot Bot added size:M This PR changes 30-99 lines, ignoring generated files. and removed size:S This PR changes 10-29 lines, ignoring generated files. labels Aug 22, 2025
@kakkokari-gtyih
Copy link
Copy Markdown
Contributor Author

コンフリクト解消

@kakkokari-gtyih
Copy link
Copy Markdown
Contributor Author

最低5秒は待つようにした

@kakkokari-gtyih
Copy link
Copy Markdown
Contributor Author

コンフリクト解消

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

packages/frontend Client side specific issue/PR size:M This PR changes 30-99 lines, ignoring generated files.

Projects

Development

Successfully merging this pull request may close these issues.

2 participants