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

プロジェクトファイルのバージョンがアプリバージョンより大きい(未来)な場合にエラーを出す #2523

Open
Hiroshiba opened this issue Feb 8, 2025 · 0 comments
Labels
初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上

Comments

@Hiroshiba
Copy link
Member

内容

プロジェクトファイルを受け渡したとき、未来のバージョンのプロジェクトファイルを開こうとしてしまうことがあります。
偶然読み込めるかもしれませんが、正しく読み込めてるかどうか怪しいし、エラーが出る場合もエラーメッセージが難しかったりします。

ということで、起動中のアプリのバージョンよりもバージョン番号が上のプロジェクトファイルが読み込まれた時は、エラーにしたいです。

Pros 良くなる点

エラーで迷う人が少なくなる

実現方法

プロジェクトファイルのバージョンはここで取得しています。

// appVersion Validation check
if (
!("appVersion" in projectData && typeof projectData.appVersion === "string")
) {
throw new ProjectFileFormatError(
"The appVersion of the project file should be string",
);
}
const projectAppVersion: string = projectData.appVersion;
if (!semver.valid(projectAppVersion)) {
throw new ProjectFileFormatError(
`The app version of the project file "${projectAppVersion}" is invalid. The app version should be a string in semver format.`,
);
}

なのでこの関数にアプリのバージョンを渡して、アプリのバージョンよりもプロジェクトのバージョンの方が高ければエラーを投げるようにすれば OK なはず!

アプリのバージョンはawait window.backend.getAppInfos().versionとかで取れるはず・・・?

でもこの関数はマイグレーション用なので、バージョンチェックをするのはちょっと違うかも。
バージョンチェックする用の関数を別で作って、そっちでチェックしてもいいかも!

その他

結構簡単なタスクだと思うので初心者歓迎ラベルをつけてみました 🙏

実際にエラーが生じた例(Discord)
https://discordapp.com/channels/879570910208733277/879628718455283722/1337698104195022868

@Hiroshiba Hiroshiba added 初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上 labels Feb 8, 2025
@Hiroshiba Hiroshiba changed the title 知らないバージョンのプロジェクトファイルに対してエラーを出す プロジェクトファイルのバージョンがアプリバージョンより大きい(未来)な場合にエラーを出す Feb 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
初心者歓迎タスク 初心者にも優しい簡単めなタスク 機能向上
Projects
None yet
Development

No branches or pull requests

1 participant