Discourseクライアントのディストリビューションがフリーソフトウェアかどうかの見分け方

また、セーフモードを使用して、他の Discourse ディストリビューションがどのような変更を加えたかのアイデアを得ることもできます。

  • Purism には、テーマ スクリプトがいくつかあるだけです(セーフモードはすべてのテーマをブロックすると思われるため、これらは公式の Discourse の一部である可能性があります)。また、内部(HTML ファイルの一部であり、外部 JS ファイルではない)の JavaScript が 1 つあり、const DELAY_TARGET=2e3,POLLING_INTERVAL=50,splashS から始まります…
  • Exercism には、後でコアに追加された discourse-spoiler-alert プラグインと思われるものと、Purism とまったく同じ内部 JS があります。
  • FSF メンバー フォーラムには、他の 2 つとまったく同じ内部 JS があります。
  • Discourse Meta(このフォーラム)には、多くの JS の違いがあるようです。
    • discourse-activity-pub
    • discourse-customer-flair-plugin(これについてはどこにもライセンスが見つかりませんでした)
    • discourse-deprecation-collector
    • discourse-doc-categories
    • discourse-new-features-feeds(これもライセンスが見つかりませんでした)
    • ソース マップへのリンクさえ存在しないものを含む、さらに多くのスクリプト。

したがって、ほとんどのサードパーティ ディストリビューション(私の小さなサンプル サイズ 3 に基づく)は、メインライン Discourse にかなり近いように思われますが、このディストリビューションには、ほとんどのディストリビューションには含まれないプラグインが含まれているように見えます。それらのすべてについて、ライセンスされたソース コードはどこで見つけられますか? メイン リポジトリにありますか? メイン リポジトリでそれらの名前の一部を grep しても見つけられなかったかもしれませんが、見落とした可能性があります。

ここから、それらのほとんどはサードパーティではなく、ファーストパーティであるため、明白です :smirking_face:

カテゴリ Plugin および Theme component をチェックしてみてください。しかし、DevDocumentation なども興味深いかもしれません。

「いいね!」 2

フォーラム全体で「discourse-new-features-feeds」(例)を検索しましたが、何も見つかりませんでした。一部の拡張機能は、プラグインディレクトリ、GitHub、またはフォーラムで見つけることができましたが、discourse-new-features-feedsとdiscourse-customer-flair-pluginについては何も見つけられませんでした。すべてのプラグ係数スクリプトを確認したわけではないので、他にも見つけられないものがあるかもしれません。

理由があるのかもしれません。例えば、Meta独自のカスタマイズが公開されていない、あるいはDiscourseのリポジトリを十分に調べなかったのかもしれませんね :man_shrugging:

「いいね!」 2

Enterprise のお客様で、Discourse にフォーラムを特別にカスタマイズしてもらった可能性もあります。
また、クライアント側のカスタマイズを確認するためにセーフモードを使用したい場合、それは無効になってしまうのではないでしょうか?そもそも、これらのサイトで有効にするにはどうすればよいのでしょうか?

「いいね!」 2

興味本位で、正確にはどのような論理なのか疑問に思っています。あなたが提示している懸念事項を持ってインターネットを閲覧することはできませんよね?

「ライセンス」について話していますが、単純なユーザーとして特定のフォーラムを使用するあなたのライセンスは、フォーラムソフトウェアを実行するライセンス(誰かがそれで別のフォーラムをセットアップしたい場合)とは異なります。ユーザーが後者を気にするのはなぜでしょうか?彼が従いたい原則のためですか?再配布されないカスタマイズは「プロプライエタリ」になるでしょう。これは、どこから始まってどこで終わるのかという疑問を投げかけます。

JavaScriptとそのブラウザで実行できる可能性(そのリスクと可能性はしばしば議論されています。制限されているはずです)について警戒することができます。ただし、DiscourseがJavaScriptなしで実行できるかどうかはわかりません。または少なくとも正しく実行できるかどうか。いつでも試すことができます。たとえば、人気の「NoScript」ブラウザ拡張機能があります。

まだ理由がわかりません。悪意のあるコードについてですか?その場合、フォーラムが非改変バージョンを実行すると述べているライセンスで気分が良くなるというのは、私にはあまり意味がありません。それとも何についてですか?

「いいね!」 4

一般的に、私は非自由ソフトウェアを実行することを避けたいと考えています。主な理由は、自分のコンピューターで実行されるソフトウェアを自分で制御できるべきだと考えていること、そしてもう一つの理由は、修正することが違法かもしれないバグという考えが気に入らないことです。また、数百もの異なる独立したウェブサイトからソフトウェアをダウンロードするのではなく、第三者の監視や説明責任のない、少数の信頼できるリポジトリからソフトウェアを入手することが良いことだと考えています。そのため、信頼できるリポジトリのために、私が使用するソフトウェアをパッケージ化する自由があることは私にとって重要です(ただし、現在の技術ではサイトで提供されるJavaScriptにとっては非常に非現実的です)。

他人のコンピューターで実行されるソフトウェアを私が制御すべきだとは思いません。なぜなら、サーバーの運用者がその制御を持つべきだと考えており、複数のユーザーがソフトウェアを完全に制御できるようにすることは理にかなっていないように思えるからです。

いいえ、インターネット上で非自由ソフトウェアを実行することを避けることは比較的簡単です。信頼できないソースから任意のコードを自動的にダウンロードして実行するプログラムを使用しない場合、またはそのようなプログラムをそうしないように変更した場合(たとえば、ウェブブラウザにLibreJSをインストールするなど)は、比較的簡単です。

私の知る限り、フォーラムソフトウェアを実行することは、フォーラムのほとんどの機能を使用するために必要ですが、投稿を読むことはそれなしでも可能です。アカウントを登録してトピックを投稿したい場合、フォーラムソフトウェアを実行する必要があるようです。ほとんどの人は、ほとんどのブラウザがユーザーに通知することなく、ウェブサイトが送信する任意のソフトウェアをダウンロードして実行するため、それに気づいていません。

フォーラムソフトウェアの一部はサーバー上で実行されており、Discourseインスタンスは必ずしもそのソフトウェアを一切配布するわけではありません。つまり、インスタンスがサーバー側に追加した非自由ソフトウェアを必ずしも入手できない可能性があります。そのため、そのようなインスタンスを避けるように努めていません。

定義に関する補足

私の見解では、配布されないソフトウェアは「プロプライエタリ」ですが、それは単一の「所有者」(作者)がいるためですが、同時に「自由」でもあります。なぜなら、そのすべてのユーザー(作者一人だけ)は、それを使って何をしたいか自由にできるからです。まあ、サーバーとやり取りする人々は、サーバー上で実行されるソフトウェアの「ユーザー」であると言うこともできるかもしれませんが、代わりにどのような言葉を使うべきか確信が持てません。電話網や他人の電話で実行されているソフトウェアの「ユーザー」であると言うこともできるかもしれませんが、誰かに電話をかける場合。

はい、NoScriptをインストールしており、クライアントサイドのDiscourseソフトウェアをブロックすると、もちろんDiscourseはそれなしでは「実行」できません。なぜなら、ブラウザがスクリプトを実行しないようにしたからです。私のコンピューターで実行されないサーバーサイドのソフトウェアは、NoScriptによって実行が阻止されません。この状態では、Discourseサーバーソフトウェアによって提供されるトピックやコメントは表示可能ですが、登録して投稿するにはクライアントサイドのJavaScriptソフトウェアを使用する必要があるようです。

マルウェアに関して言えば、自由ソフトウェアプログラムが悪意のあるソフトウェアである場合、誰かがそれをマルウェアではないように変更し、その変更されたバージョンを代わりに配布することができます。サイトで提供されるJavaScriptの場合、これは現在やや非現実的です。理想的には、ソフトウェアが自由ソフトウェアであることを直接述べるライセンスがあれば、たとえソフトウェアが変更されたとしても、自由ソフトウェアとして使用することが合法になるでしょう。現状では、使用しているディストリビューションが、使用しているソフトウェアのバージョンについて「嘘をついていない」(たとえば、Discourseサーバーソフトウェアを変更して、実際には別のコミットが使用されているのに、あるコミットが使用されていると主張するなど)ことを信頼する必要があります。

この応答は少し長くなってしまったかもしれませんが、核心は、私はソフトウェアの自由を重視しており、そのため自分のコンピューターで非自由ソフトウェアを実行することを避けたいということです。

この場合、「彼ら」はDiscourse Metaですよね。それはDiscourse(会社)の一部ではありませんか?

はい、私が言いたかったのは、セーフモードを使用するとカスタマイズを無効にでき、両方のケースでブラウザに送信されるソフトウェアを比較できるということです。違いは、カスタマイズとテーマです。

セーフモードは、/safe-mode に移動する(例:http://meta.discourse.com/safe-mode)ことで有効にでき、そこでオプションを選択します。そのページはJavaScriptを必要としないため、NoScript、LibreJS、Haketiloなどの拡張機能を使用してJSをブロックしたり、Firefoxベースのブラウザの設定でjavascript.enabledをfalseに設定したりして、セーフモードを有効にすることができます。

この時点で、両方のページのスクリプトタグを比較して、セーフモードで削除されたものを確認できます。私は次のようなスクリプトを使用しました。

script-diff.js
// SPDX-FileCopyrightText: 2024 Jacob K
//
// SPDX-License-Identifier: CC0-1.0

// スクリプトが多い方のページで
const scriptSrcArr = [];
for (script of document.scripts) {
  if (script.src) {
		scriptSrcArr.push(script.src);
  } else {
    scriptSrcArr.push(script.textContent);
  }
}

console.log(scriptSrcArr)

// スクリプトが少ない方のページで(最初のページで配列を右クリックして「オブジェクトをコピー」をクリックする必要があります)
scriptSrcArr = PASTE_OBJECT_FROM_OTHER_PAGE_HERE
for (script of document.scripts) {
  if (!scriptSrcArr.includes(script.src)) {
      console.info(script)
  }
}
// 最初のページのスクリプトは2番目のページのスクリプトのスーパーセットであると仮定しています

@Jagster(Discourse(クールな提案機能!)が提案したように、編集による返信を試しています)

これは、meta.discourse.orgによって配布されているDiscourseが非フリーソフトウェアであることを示唆しており、そうなると「Discourseの全コードベースは公開されており、自由に利用できます」や「Discourseは100%無料のオープンソースフォーラムソフトウェアです。」(どちらもwww.discourse.orgから)という主張は、技術的にはソフトウェアとプラグインが同じものではないため、たとえ真実であっても誤解を招くように思えます。非フリーソフトウェアを実行するようにだまされたような気分です :slightly_frowning_face:

この主張は、既存のインスタンスに参加するのではなく、Discourseインスタンスをホストしようとしている人々を対象としているのだと思います。

私の考えが間違っていて、リポジトリを十分に調べていなかっただけであることを願っています。

インターネットやその中のアプリの仕組みについての発言なので、顔文字なしで、あなたは本当にそんな風に感じているに違いありません。

あなたはカスタマイズは悪いと言いました。そして、ベースがオープンソースであれば、すべての追加機能も無料であるべきだと。WordPressがそれを使用したかもしれませんが、もちろんwordpress.comではありません。しかし、私のWordPressサイトを訪れると、多くのカスタム作業があります。プロプライエタリなもの、オープンなもの、カスタムなもの、そして私自身によるものがあります。そして、この現実で2つのことが起こることはありません。

  • カスタム作業のすべてのコードが公開されること
  • 有効なライセンスを持っているかどうかをあなたや他の訪問者に伝えること

しかし、なぜDiscourse、WordPress、Moodleなどが、一部の追加機能が無料でない場合に無料であってはならないのか、理解に苦しんでいます。その考え方の論理が理解できません。

「いいね!」 2

まさにその通りです :+1:

ホスティング業者がその後、それを何に適合させるかは予測できません。

確かに、さらに、例えば、ホスティング業者の裁量で以下を追加する可能性があります。

  • 広告
  • サブスクリプション

「ソフトウェア」は「無料で使用可能」のままであっても、一部の機能は制限され、有料サブスクライバーのみ広告をオフにできる可能性があります。

誰もが無料でDiscourseインスタンスを実行するための無制限の資金を持っているわけではありません。多くのサイトは、請求書を支払うために収益を上げる必要があります。

Discourseの実行は、規模が大きくなると決して「無料」ではありません。ホスティング業者は、ドメイン名、VPS、および電子メールサービスのコストを支払う必要があります。

(そして、そもそもDiscourseを開発するためのコストについては触れないでおきましょう!)

「いいね!」 4

なるほど、あなたの言いたいことは理解できたと思います。

とんでもない!コードは常に無料です。


独自の Discourse サイトの管理者は、独自のフォーラムをカスタマイズする自由があります。プラグイン、テーマ、TC は常にオープンソースである必要はありません。Discourse はそれで問題ありません。カスタマイズを接続するために、公開リポジトリの代わりにプライベートリポジトリを使用する方法があるからです。
プラグインも同様です。ただし、非常に、非常に、非常にまれな場合(おそらくほとんどない!)を除き、そのようなカスタマイズは有料になることはありません[^有料のコミッションによる場合を除く。それはあなたのスポンサーになるという選択です]。したがって、「非フリー」なものはありません。すべて無料です。
私の言いたいのは、オープンソースソフトウェアは無料であるということです。プラグインは無料です。それらを使用するかどうかはあなたの選択です。テーマや TC なども同様です。ただし、オープンソースではないものは有料になる可能性がありますが、管理者はそれらを無料で使用できるように 選択 しています。あなたがクローズドソースのカスタマイズのコピーを、あなたの能力の限り作成して自分で使用することを妨げるものはありません。
Discourse は無料であり、公開されているカスタマイズ[^つまり、ここで Meta や GitHub で公開されているもの]は無料であり、プライベートなカスタマイズも 使用 する上では無料です(少なくともかなりの場所ではそうですが、

。ソースコードの所有者に支払うことは、別の話ですが。

基本的に、自分でプラグイン/テーマ/TC を作成して配布しない限り、カスタマイズは常に無料でインストールできます。誰もあなたを止めることはありません。


失礼に聞こえたり、同じことを繰り返し言っているように聞こえたりしたらごめんなさい。

「いいね!」 1

しかし、それらはオープンソースバージョンの「上に」乗るものであり、CLAが存在するだけでDiscourseが非フリーになるわけではありません。

これは金銭的な意味での無料ではなく、「制限のないライセンスが存在する」という意味での無料です。What is Free Software? - GNU Project - Free Software Foundation

必ずしもそうとは限りません。繰り返しますが、これは価格ではなく、自由についての話です。FSFの定義によれば、自由ソフトウェアと見なすにはライセンスが制限的すぎるオープンソースプロジェクトも存在します。例としては、MongoDBやElasticSearchが挙げられます。

フリーソフトウェアを実行することが、それを制御できることを意味するわけではありません。

つまり、「信頼できる」と「フリー」を混同しているようですね。サーバー管理者がDiscourseをビルドする際、ビルドプロセスではNPMからさまざまなパッケージがダウンロードされます。それらは常に信頼できるのでしょうか?(歴史が教えてくれたように、そうではありません - 別の例)。

「推測」ですか? :thinking: サーバー管理者はコミットハッシュを変更せずに変更を加えることができます。また、プラグインもJavaScriptコードを挿入する可能性があります。

残念ながら、それは真実ではありません。

これはフリーか非フリーか、オープンソースかクローズドソースかの問題ではなく、信頼の問題です。

Discourseインスタンスにアクセスする場合、以下のものを信頼する必要があります。

  • サーバー管理者
  • Discourseのgithub組織のコミット権限を持つすべての人
  • プラグインリポジトリのコミット権限を持つすべての人
  • githubのすべての人
  • NPMソフトウェアチェーン全体
  • 使用されているNPMリポジトリのコミット権限を持つすべての人
  • ブラウザソフトウェアを制御できるすべての人
  • SSL証明書とトラストチェーンを提供した会社

これは少なくとも数千人になるでしょう。

プラグインとテーマコンポーネントは別のリポジトリで見つけることができます。
すべてのプラグインがオープンソースであるわけではありません(例:discourse-customer-flair-pluginはそうではないと推測されます)。つまり、そういうことです。Metaの使用を中止する必要があります :wink: もちろん冗談です。私の言いたいのは、すべてがオープンソースまたはリブレでなくても、十分な信頼が存在しうるということです。

「いいね!」 8

何か、@JacobK1 さん、Discourse のライセンスを読みましたか?

関連する可能性のある点をいくつか引用します。

GNU 一般公衆利用許諾契約は、自由なソフトウェアを共有したり変更したりする自由を保証することを目的としています。つまり、ソフトウェアがすべてのユーザーにとって自由であることを保証します。

プログラムまたはその一部を、プログラムに基づく作業を形成するように、コピーまたはコピーを変更し、セクション 1 の条件に基づいてそのような変更または作業をコピーおよび配布することができます。

これは上記およびその上の引用で回答されたことを願っています。

「いいね!」 1

私の理解が正しければ、これらすべては主にJavaScriptに関連しており、各Discourseインスタンスによって提供されるブラウザ内でJavaScriptで実行されるものに関するものです。それは主に「信頼」と、実行されるコードを知る能力(コードを確認できること)に関するものでもあります。これで合っていますか?

これは私の専門知識をはるかに超えていますが、これに対して「制御」することは可能なのでしょうか?皆のために物事を変更するコミットを提出しない限り、ここで自分で何かを「修正」できるとは思えません。なぜなら、あなたが「ソフトウェア」と呼んでいるものは、毎回サーバーからあなたのブラウザに提供されるからです。

たとえ各フォーラムが独自のオープンソースコードを公開し、考えられるすべての変更を加えたとしても、それらが常に実際に実行されていることを確実に知ることができますか?一度ダウンロードして、自分で確認してコンパイルするというわけにはいきません。

あなたが本当に望むのは次のいずれかでしょう:

  1. JavaScriptを使用しない(Discourseはそれに大きく依存しているため、それは無理です)または
  2. 独立したオープンソースクライアントを実際にコンピュータにインストールすること。後者は、もしDiscourseでそれが可能であれば、JavaScriptを使用しない必要がありますが、それはわかりません。そうすれば、クライアントを自分で変更し、求めている制御を得ることができるでしょう。

これは公平な理解でしょうか?
(追伸:これも私の専門知識を超えていますが、私の記憶が正しければ、Discourseのコードの100%がオープンソースというわけではありません。今、あなたはサーバーサイドのすべてではなく、自分の側で実行されることだけを本当に気にしています。)

「いいね!」 1

ホスティング/インフラの一部を除き、すべてオープンソースです。

「いいね!」 2

@Jagster

Maybe I was being a bit overdramatic :slight_smile:

Because I get the vast majority of my software using apt install instead of a web browser, and I trust my software distribution (Trisquel) to only distribute free software, this isn’t usually a concern.

Just to be clear, I am not saying customizations are necessarily bad, just that they may be bad if they are nonfree, so a way to be sure you avoid running nonfree software is to disable customizations.

I think all software should be free/libre.

@Jagster @RGJ

To be clear, I am not trying to say Discourse is nonfree. It’s only this particular distribution of Discourse (Discourse Meta) that appears to include nonfree software.

@Jagster @merefield

I should have mentioned in my previous post that another reason I thought this distribution would be free is that the about page for Discourse says " There is only one version of Discourse – the awesome open source version.". This is, again, technically true because the plugins are not part of Discourse, but it felt misleading to me.

Discourse might not have control over third party distributions, but I would have expected Discourse instances hosted by Discourse to be free software if they are saying what they say on the about page. I might have also expected a license and/or framework that would effectively require derivatives to be free software, which there kind of is, since Discourse is GPL, but I guess it doesn’t cover plugins.

@merefield @NateDhaliwal

I think charging money for software or services is fine; usually the “free” in “free software” means “libre”, as in you are free to do what you want with it (copy, modify, etc.), after you get it. It does not necessarily mean that it is “free” as in “gratis” i.e. zero cost.

@NateDhaliwal

Strictly speaking, yes, there is no one stopping me, but it would be illegal, which seems bad. For private use this might work out, but generally public software repos and app stores don’t want to include code illegally, and some people who I might want to use the software may be uncomfortable running illegally copied code. I’m not sure I have the right approach; maybe I should just totally ignore copyright, but that seems like not the best option when it’s feasible to avoid illegal and nonfree software.

No worries! :slight_smile: I don’t think you’re being rude, and I don’t yet feel like we’re going in circles.

@RGJ

What do you mean by this? If the software is free that means I can modify it; therefore I do have control over what it does.

I don’t think free is the same as trusted; perhaps I should have said “arbitrary” instead of “untrusted”, but my point was that most browsers will execute whatever code a webpage gives them, and since I often visit websites I have never visited before, many websites I visit are “untrusted”. For these websites, I have no reason to think they will not send nonfree software.

Regarding NPM, I consider it more trusted than an arbitrary website, but maybe not as trusted as my apt or guix repos. Though, trust is not one-dimensional; although I would not trust a new package on NPM just because it is on NPM, I would trust that when I download JQuery from NPM it really is JQuery. NPM may make mistakes that allow an attacker to replace JQuery, but NPM could take measures to avoid malware that would not be as realistic for site-served JavaScript (e.g. pre-publish automated/manual review, post-publish crowd-sourced review, automated checking that minified/obfuscated scripts match source code, rules against downloading and running arbitrary code at runtime). Importantly, when malware is found on NPM, there’s a third party (NPM, as opposed to the software developer) to report it to so it can be removed. This is not the case for site-served JavaScript - the only one who can remove it is the site operator.

Does that mean the listed commit hash would be incorrect if a server administrator made modifications and didn’t also change the listed commit hash? I thought updating software would change the commit hash automatically, and I (incorrectly?) assumed the listed commit hash would be updated automatically.

Would plugin-injected JavaScript be disabled with safe_mode=no_themes,no_unofficial_plugins?

So, would the only way to avoid nonfree software while using Discourse be to package a Discourse client as a browser extension or Haketilo package or something similar?

I’m not sure what you mean by that considering my original question is about software freedom, and not trust.

I disagree that everyone you listed has to be trusted.

  • The server administrators would not have to be trusted if you don’t run software served by them, for example if you get the Discourse client from GitHub and package it so it can be used with that server.
  • In many cases, people collaborating on software might read some of each others’ commits, so I don’t have to trust all authors individually.

So that would mean the Discourse Meta client is proprietary software, right? Though, it is possible to use safe mode to disable the plugin JS.

Maybe, but that’s not very helpful if I want to avoid nonfree software.

@NateDhaliwal
I have read the license in the Discourse git repo, but (because of the CLA) it does not necessarily apply to derivatives of Discourse outside of that repo. I would like to see a notice on every Discourse distribution that says which of the distributed software is libre. It would even (IMO) fit with the spirit of the GPL: “you must show them these terms so they know their rights”.

@Mevo

Yes, it is possible, to run JavaScript from a browser extension or proxy, such a Haketilo or GreaseMonkey, though this can be very impractical for some software, for example if it updates very often, as would be the case for software where data is baked into the JavaScript software. Haketilo also doesn’t have support for some kinds of scripts, for example scripts with a type of “module”.

Yes, I think your understanding is correct overall. Though packaging the JavaScript as a browser extension or for Haketilo or GreaseMonkey would effectively result in an independent installed client, even though it would be using JavaScript.

@HAWK

I’m guessing you mean “Everything” as in “everything that’s part of Discourse”, as in, not including plugins like discourse-customer-flair-plugin?

上記で注記したものを除き、当社がホストしているコア製品(Meta を含む)の一部であるすべては、無料かつオープンソースです。

一部のプラグインは、実行するためにプロプライエタリなプラットフォームに依存していますが、それは Discourse がオープンソースであるかどうかとは関係ありません。

「いいね!」 5

CDCKまたは私たち(Discourseをホストする会社の共同創業者です)によってホストされているすべてのDiscourseインスタンスは、ホスティング環境に固有の機能を提供するために、1つまたは複数のクローズドソースプラグインを実行しています。

昔ながらのディストリビューション(ここにgithubリポジトリがあり、自由に何でもできます)と、より現代的なディストリビューション(ここにウェブサイトがあり、ブラウザにJavaScriptをプッシュします)との間には、多くの混乱があると思います。さらに、Discourse https://github.com/discourse/discourse と、サイト管理者が追加したDiscourseとそのすべてのファーストパーティおよびサードパーティプラグインおよびテーマコンポーネントとの間にも混乱があります。

それはコミットハッシュなので、リポジトリからプルした後、コミットする前に変更が加えられた場合、すでにそのような状況になっています。これは悪意のある行為である必要はありません。セキュリティパッチが適用された場合にも発生します(通常、公開ブランチにコミットする前に適用されます)。一般的にセキュリティパッチはクライアント側ではありませんが、更新されたクライアント側コードが導入される可能性があります。

はい、少なくとも理論上は。それが(意図的または偶発的に)回避するのがどれほど難しいかはわかりません。

:thinking: Was the iOS SSL Flaw Deliberate? - Schneier on Security

それは一つの方法でしょう。それが唯一の方法かどうかはわかりません。これを行う場合、問題を回避するためにほぼ毎日更新する必要があります。

このトピック全体が興味深い法的議論であるにもかかわらず、すべてが現実から少し切り離されているように思えます。

「いいね!」 3

@HAWK

プラグイン、例えば discourse-customer-flair-plugin のようなものには、以前見つけられなかったライセンス付きの別リポジトリがありますか?ブラウザに配信される JavaScript にはソースマップへのリンクがありますが、私の知る限りライセンスはありません。

「ホスティング/インフラコード」という私の理解には、クライアントサイドの JavaScript は含まれないと思いますが、それは正しいですか?

@RGJ

同意します。「Discourse」という言葉が実際に何を指すのか、混乱していると思います。

ああ、なるほど。では、それを知るための良い方法はないということですね。

良い点ですね。このような欠陥を隠そうとする人もいるかもしれません。しかし、アップストリームでコードを変更したすべての個人を信頼するよりも、サードパーティのコードを監査することでその問題を軽減する方が簡単のように思えますが、おそらくどちらのアプローチも完全に実行するのは現実的ではないでしょう。

はい、ただし、ほとんどの更新は自動的に処理できる可能性があります。

このケースでは、ほとんど真実だと思います。

「いいね!」 1

念のため、@JacobK1 さん:Discourse はよくできているので、その人を引用するときにタグ付けする必要はありません。引用自体で通知が生成されます :+1: (サブセクションを作成するためでもありましたが :pray:

「いいね!」 2