fix: 3つのバグ修正と v3.1.4 リリース#108
Merged
Merged
Conversation
- fix: Issue #105 - remove コマンドの NameError を修正 remove.rb で Downloader クラスが未ロードだった問題を修正 - fix: Issue #103 - カクヨム・ハーメルンでタグが一部しか取得できない問題を修正 複数マッチへの対応として sitesetting.rb の multi_match メソッドを改善 tags キーに複数のタグがマッチする場合、配列として格納するように修正 database_updater.rb でタグ配列に対応 - fix: Issue #102 - web コマンドで --port オプションが無視される問題を修正 外部ループで argv が処理されるときにオプションが失われていたため @options["port"] がある場合、再度 argv に追加するように修正 - chore: バージョンを 3.1.4 に更新 @ponponusa
- lib/core/downloader → lib/novel/downloader (実在パス) - Gemfile.lock の narou-mod を 3.1.4 に追従 - bundle exec rspec を実行: 1379 examples, 0 failures, 4 pending @ponponusa
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5b7ea0cc66
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
PR #108 へのレビュー指摘 (codex-bot P1) への対応。 問題: ncode.syosetu.com / novel18.syosetu.com の tags 正規表現は <dd>(?<tag>.+?)</dd> 形式で「キーワード行を 1 回だけマッチ」する設計。 キャプチャ値は "恋愛 学園 異世界 主人公最強" のような空白区切り文字列。 直前の修正で常に配列化していたため、後段の clean/split ロジックを バイパスして "恋愛 学園 異世界 主人公最強" が 1 つのタグとして保存されていた。 また "キーワードが設定されていません" のプレースホルダも除去できなくなっていた。 修正: SiteSetting#update_match_values でマッチ数 > 1 のときのみ配列化する。 1 件のときは従来通り単一文字列として match_values に設定し、 database_updater.rb の legacy 経路で空白分割と置換クリーンアップを実施する。 これにより: - kakuyomu (複数行マッチ): 配列パスで全タグ取得 (#103 修正の意図を維持) - ncode/novel18 (1行マッチ): 文字列パスで空白分割 (修正前と同じ挙動に復帰) bundle exec rspec: 1379 examples, 0 failures, 4 pending @ponponusa
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
3 件の bug issue を修正し、バージョンを 3.1.4 に更新しました。
Fixes
narou-mod webの--portオプションが外部ループ再起動時に失われるsystem()呼び出し前に--portを argv へ再挿入multi_matchからupdate_match_valuesへkey/source/handleを渡し、key == "tags"のときString#scanで全マッチを収集@setting["tag"]が配列の場合に対応するよう分岐を追加narou-mod remove実行時にNameError: uninitialized constant Command::Remove::Downloaderrequire "lib/novel/downloader"を追加Version bump
3.1.3→3.1.4Test plan
bundle exec rspecをローカル実行: 1379 examples, 0 failures, 4 pendingnarou-mod removeを手動で動作確認narou-mod web --port <N>再起動時のポート保持を手動確認