-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
コントロールパネルでMisskeyのアップデートを確認できる機能 #15089
Comments
👍 とはしたものの、何をもってアップデート可能とするか… |
バージョン比較して新しければ通知する |
新しいかの条件文がというのもあるけど、ローカルのバージョンとサーバー側のバージョンが一致しなければ通知でいい気がします |
sakuhanightさんはクライアントの更新だと思ってそうだけど、syuiloさんは多分サーバー自身の更新を指していそう |
🤯 |
|
じゃあどうしよう、となると難しい話ではありますが…
あたりが現実的なラインでしょうか… |
比較はクライアントでやってるのと同じだわね |
うーーーーむ
misskey/packages/frontend/src/boot/common.ts Lines 66 to 80 in 3a42183
ここですよね。 |
GitHubとかで良いんじゃないかしら |
Fork運用の場合に欲しいのは本体の更新通知な気がします(Forkメンテナー=運営者のケースが大多数と思われるため) |
となると、配信されるバージョンは (↑の懸念が1段ぬかしで出てきたのが #15089 (comment) の話) |
この機能はMisskeyを想定しているわね |
更新自体もできたら便利だわね |
(この機能に限らずMisskey ProjectではMisskeyしか開発しない) |
WordPressだと自動で更新できたりした気がする |
Forkでバージョンは不具合の可能性あるとき |
hmm... |
リポジトリはmisskey-dev/misskey以外になることってあるかしら? |
実際にはFork運用している場合この機能を使用しないかもしれませんが、ハードコードするよりもconfig参照する方が保守性がよいと思います。 |
configに書くと、リポジトリ名が変わった時に運営者に変えてもらう必要が生じますね |
それか、constsかなにかに定数として書いておくのはありかもしれません。 |
misskey-hub にリストされているインスタンスは、自分のインスタンスも含めて、misskey-dev を厳密に追跡しながらも、バージョン管理を別々に行っているインスタンスがあると思います (公式リリースがまだ出ていないときに 11.0 にアップグレードするなど)。 「前回コミットしてからメジャー アップデートがリリースされました」という通知があれば、役に立つ通知になると思います。 ただし、このようなインスタンスがいくつあるかはよくわかりませんし。。 |
更新の判定について、GitHubのLatest Release日時とビルド日時を比較するのは良い考えに思います。 |
(ちょっと気が早いけど書いておかないと漏れそうなので書いておきます) |
対応しているデプロイ方式については厳密に定義しておく必要があると思いますね…… |
普通にバージョンの比較で事足りるんじゃないかしら(実装を複雑にするほどの価値はこの機能にないと思う) |
提案頂いた方針ではなく、シンプルにバージョン比較で…ということなら、独自のバージョンコードを持つサーバに対するフォローはどうしようということになりますね(#15089 (comment) ←この話になる) |
独自のバージョンコードを持つ実装=Misskey派生ソフトという認識だけど、そうとも限らないのかしら |
フォークの場合、この機能は更新の実際のリクエストというよりは、最新情報を知らせる礼儀的な通知だけであると考えています。リリース後にコミットした場合、この更新を見たことが無いはずがないと判断するのに十分な情報がないと思います。実際に単に方法論を提案しているだけで、これが実装すべきだと言っているのではありません。 |
独自のバージョンコードを持つ=Forkについてですが、その場合はまずForkリポジトリがmisskey-devに追従し、その後にForkリポジトリをデプロイすることになる(2段階)必要なため、この場合の更新元はForkリポジトリになるはずです。 |
ああ、そういう意味か…(そして自分への返信だったのか…) つまり、派生ソフト側は考慮しない…ということになりますかね? |
うむむ、話が脱線してきている気がする |
Misskeyという語について、ここではForkを含まない、ということですね? |
フォークをする時点でupstreamをチェックして追従するも追従せず独自の道を行くもそのリポジトリの管理者の責任かと… |
です |
(この場に限らず、自分が「Misskey」といった場合は「Misskey」を指しています(トートロジー🤯)) |
とはいえ、upstreamで実装された場合にその機能をないものとするならば積極的に削除を行う必要があり、不親切です。 |
不親切ではあるのは承知の上で、それでも実装が複雑になるコストが無視できないものな以上は妥協点を探すべきです(それによってmisskeyそのものの実装を複雑にする理由にはなり得ないと思います) |
MisskeyはMisskeyのために作られていて、Misskey派生ソフトのために作られているわけではない(し、Misskeyから派生したソフトウェアを作ってくださいとお願いしているわけでもない)から、しょうがないんじゃないかしら |
off-topic: |
off-topic
その方法はこのIssue通りでなくてもよい(たとえば純粋に |
あー、Purposeに書かなかったけど更新があることを知ってもらう目的もあるけど楽しそうという理由もあるわね |
バージョン比較によるアップデート通知ではなくmisskey-devからのお知らせ・メッセージ・おたよりみたいな機能でもいいのかもしれない |
ほむん |
いや既にMisskey Hubがあるからできなくはないのか |
This comment has been minimized.
This comment has been minimized.
(ちなみにですが、GitHubのReleaseはRSSで取得できるため、熱心な運営者、Forkメンテナーはこれを見ることもできます) |
お知らせは別にした |
更新の告知は良さそう コンパネから更新ボタンは、仮に実現しようとすると 現状では最低でもgitの最新を取ってきてpnpm installとpnpm buildを実行する必要があり、misskeyの実行しているnode(を動かしているユーザー)よりも強い権限がないとできないことがあるので難しいかも? |
WordPressとかどういう実装になっているんだろう |
なんかファイルダウンロードしてきて、rsync的なもので自分自身を書き換えてると思う |
WordPressとかはファイルの置き換えだけで終わりだから、実行ユーザーと所有者が同一なら何の問題も無くできるはず |
ほむん |
Wordpressはめちゃくちゃ古いのでパッケージマネージャ的なものを使ってない(!)のでこんな芸当ができるけど、nodeアプリケーション全般で、バージョンに応じたnode_modulesがないと起動しないので、とても大変な予感 あとアプデに失敗したときにドウシヨウって話と、なんかよくわからないけどいじってた部分が消えちゃった!みたいな人のサポートがしぬほどだるそう というのも込み込みで模索するなら、まあアリなのかな……? |
そういうこともあり、十分な検証は必要だろうと思います……(fork云々に限らず) |
たしかCherryPickとかいうForkで実装されてたような気がする |
Summary
もしくは自動的にお知らせを表示する
Purpose
アップデートが利用可能であることが分かった方が良さそう
Do you want to implement this feature yourself?
The text was updated successfully, but these errors were encountered: