解決策は、あなたの投稿の文字通りすぐ上の投稿にあります。![]()
スクリプトを修正する必要があります。みんなのために問題を解決するPRを作成してもらえませんか?
解決策は、あなたの投稿の文字通りすぐ上の投稿にあります。![]()
スクリプトを修正する必要があります。みんなのために問題を解決するPRを作成してもらえませんか?
ありがとうございます、これで解決しました。申し訳ありませんでした。私の読解力のなさの償いとして、Added duplication to name to prevent modification of frozen string exception by adam-skalicky · Pull Request #30325 · discourse/discourse · GitHub を開きました。これにより、他の誰かが愚かな質問をする恥を避けることができます。
このインポートスクリプトは、DiscourseがMailman 2のメールスレッディングを何らかの形で再現しますか(例:「In-Reply-To」を示すためにDiscourseの小さな矢印を使用するなど)それとも、純粋に時系列(Message-ID、In-Reply-To、Referencesに基づく各スレッド)ですか?
はい、その通りです
クール。メーリングリストのメールの多くに、本来あるべき「In-Reply-To」および「References」ヘッダーが付いていないため、返信ではなく新しいトピックとしてインポートされる可能性があります。記憶が正しければ、スクリプトはこれらのヘッダーまたは件名ヘッダー(両方ではない)を使用します。
以前に尋ねたかもしれませんが、MBOXファイルにこれらのヘッダーを追加したり、Discourseにインポートする前後にメールを並べ替えたりする手動以外の方法があれば教えていただけますか?
トピックをマージして時系列順に保持することが可能になったので、それが答えかもしれません。返信対象を示すDiscourseの小さな矢印が欠けているだけです。
mbox インポート スクリプトには 2 つのフェーズがあります。最初のフェーズはインデックス作成で、SQLite データベースが出力されます。インポート前に SQLite のデータを変更するか、Ruby スクリプトを変更することができます。
件名またはヘッダーによる並べ替え/グループ化のすべての処理は、ここで実行されます。
メールをどのようにグループ化したいかがわかっている場合は、独自のグループ化ロジックを追加できます。
そんな複雑なものは、しばらくは考えられません!
https://bazaar.launchpad.net/~mailman-coders/mailman/2.1/view/head:/Mailman/Archiver/pipermail.py#L669 の Mailman 2 の Pipermail は、優先順位に従って次のものを探しているようです。
これらのアプローチの組み合わせは理想的だと思われます。3番目の場合、Discourse が「返信」矢印を使用しない方が理にかなっているかもしれません。
記憶によれば、Mailman 3 の Hyperkitty は件名をまったく考慮していませんでしたが、それはそれほど良くありませんでした。
失礼ながら、もしかしたら愚かな質問かもしれませんが、ここで明確な答えを見つけることができませんでした。インポートプロセスは、重複排除はもちろんのこと、各メールに対して新しいDiscourseユーザーを作成するのか、それともすべてが1つのシステムユーザーとして取り込まれるのかを知りたいです。メーリングリストには20年分の投稿があり、かなり大規模で実験しにくい状況です。また、元のリストでの返信はどうなりますか?それらはスレッド化されますか?
はい、ユーザーはメールアドレスごとに作成されます。
皆さん、こんにちは。
Google グループから移行しようとしています。このコマンド script/import_scripts/google_groups.rb -g <group_name> -d <domain_name> を使用してメッセージをダウンロードしようとすると、すぐにスタックトレースが表示されます。
Fetching gem metadata from https://rubygems.org/.......
Resolving dependencies...
/usr/local/lib/ruby/gems/3.4.0/gems/childprocess-4.1.0/lib/childprocess.rb:6: warning: logger was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.5.0.
You can add logger to your Gemfile or gemspec to silence this warning.
/usr/local/lib/ruby/gems/3.4.0/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/zipper.rb:23: warning: base64 was loaded from the standard library, but is not part of the default gems starting from Ruby 3.4.0.
You can add base64 to your Gemfile or gemspec to silence this warning.
/usr/local/lib/ruby/gems/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:71:in 'block (2 levels) in Bundler::Runtime#require': There was an error while trying to load the gem 'webdrivers'. (Bundler::GemRequireError)
Gem Load Error is: cannot load such file -- base64
google_groups.rb スクリプトに gem "base64" を追加してもう少し進めることはできますが、次にこれが表示されます。
Logging in...
/usr/local/lib/ruby/gems/3.4.0/gems/rubyzip-3.2.2/lib/zip/entry.rb:757:in 'File#initialize': No such file or directory @ rb_sysopen - /root/.webdrivers/root/.webdrivers/chromedriver (Errno::ENOENT)
メッセージのダウンロードを進めるための提案はありますか?
追記:このスクリプトの新しいバージョンはありますか?グループの URL は /forum ではなく /g/ 表記になり、他にも変更があります。