aminomeのv1.0をリリースした

Misskeyの過去投稿をMeilisearchへ登録するツールを改修した話

これはかんなすきーアドベントカレンダー2024の8日目の記事です。

去年(2023年)の5月頃に、Misskeyの過去投稿をMeilisearchへ登録するツールaminomeを作りました。
参考: Misskeyの過去投稿をMilisearchに登録するツールaminomeを作った

当時はとりあえず動けばいいとの思いから、ソースコードの中に接続先のデータベースやパスワードをべた書きする必要がありました。
これだと、複数のサーバーを運営している場合は、都度書き換えるか、ソースコードをコピーして書き換える手間が発生します。
いつか直したいという気持ちはありつつ、1年以上放置していました。

今回の改修点は何か

変更点は次のとおりです。

  1. 設定の外部ファイル化を行いました。
  2. 設定ファイルのpathをコマンドラインで指定できるようになりました。
  3. 1回のクエリで取得するノート数をコマンドラインで指定できるようになりました。
  4. 登録するノートのscopeをlocalまたはglobalから選べるようになりました。
  5. Meilisearchのhttps対応を行いました。

大きな変更点としては、今回のv1リリースで、設定の外部化を行いました。
設定はファイルに書けばよく、aminomeのソースコードにべた書きしなくてよくなりました。
過去のバージョンと互換性はなくなりました。v1より前のバージョンをご利用の方は、バージョンアップしたら設定ファイルを作成してください。
(バージョンアップしなくてもMeilisearchへの登録は引き続きできるので、しなくても大丈夫です。)

設定ファイルもpathを指定して読み込めるようになりました。
複数サーバーがある場合は、設定ファイルを複数用意すれば済みます。

登録する投稿をローカルのみにするか、連合も含むか選べるようになりました。
Meilisearchのhttps対応もやりました。(これまではソースコードをいじってhttpの末尾にsをつける必要がありました。)
Misskeyのdefault.confフォーマットに準拠して作ったつもりですが、動作確認はしてないです。

細かいところとしては、コマンドラインオプションをいくつか追加したり、 -h でヘルプを表示できるようにしました。

あとがき

とりあえず自分用に書いて放置してたのですが、思っていたより使われている方がいらっしゃったようで、設定をべた書きさせてごめんねの気持ちで過ごしていました。
が、v1リリースでそんな気持ちともおさらばです。ブヒ。
とりあえず動くと満足してしまったのと、いずれMisskeyに(投稿の登録機能が)実装されるだろうと思っていたので、改修するモチベが無くなりがちでした。
ここ数年は全然コードを書かない生活を送っていたので、良いリハビリになりました。久しぶりに楽しさを感じながらプログラミングできた気がします。
将来的にはエラーハンドリングをもっとしっかりしたり、コードの整形やログ出力も実装したいけど、気が向いたらやります。

バグを見つけたらプルリクエストを作って送ってください。 それでは、今日はこの辺で失礼します。

dev-hato/aminome: Add all misskey notes to Meilisearch

comments powered by Disqus
Built with Hugo
テーマ StackJimmy によって設計されています。