著作権表示を必要とするJavascriptを縮小できますか?


37

これは実際には法的問題だと思いますが、ソフトウェアに関連しています。プロジェクトにJSプラグインを含めようとしています。コメントは次のとおりです。

  • ソースコードの再配布では、上記の著作権表示、この条件リスト、および以下の免責事項を保持する必要があります。*バイナリ形式での再配布では、上記の著作権表示、この条件リスト、および以下の免責事項を配布物とともに提供されるドキュメントおよび/またはその他の資料に複製する必要があります。
  1. これを私のWebサイトで「再配布」しますか?
  2. 帯域幅を節約するためにこれを縮小すると、すべてのコメントが削除されると思います。#1の答えが「はい」である場合、それは私が法的にそれを縮小することを許可されていないことを意味しませんか?

(これは、展開プロセスの一部としてすべてのJSを自動縮小することを計画していたため、悪臭を放ちます。)


これはサーバー側ですか、クライアント側ですか?クライアント側は配布ですが、サーバー側はそうではありません(一般的なルールとして)。
デビッド

3
@DavidThornley-あなたの主張には同意しますが、とにかくサーバー側のJSを縮小する正当な理由は考えられません。
クリス・ドーラン

回答:


34

ほとんどの縮小ソフトウェアには、この正確な目的のために、その場でコメントを残す方法があります。

たとえば、YUI Compressorのドキュメントから

  + C-style comments starting with /*! are preserved. This is useful with
    comments containing copyright/license information. For example:

    /*!
     * TERMS OF USE - EASING EQUATIONS
     * Open source under the BSD License.
     * Copyright 2001 Robert Penner All rights reserved.
     */

    becomes:

    /*
     * TERMS OF USE - EASING EQUATIONS
     * Open source under the BSD License.
     * Copyright 2001 Robert Penner All rights reserved.
     */

Google Closure Compilerは、@licenseまたは@preserveタグを含むJavaDocブロックを保持します:

@license

    /* 
     * TERMS OF USE - EASING EQUATIONS
     * @license Open source under the BSD License.
     * Copyright 2001 Robert Penner All rights reserved.
     */

    becomes:

    /* 
      TERMS OF USE - EASING EQUATIONS
      Open source under the BSD License.
      Copyright 2001 Robert Penner All rights reserved.
     */

@preserve

    /* @preserve
     * TERMS OF USE - EASING EQUATIONS
     * Open source under the BSD License.
     * Copyright 2001 Robert Penner All rights reserved.
     */

    becomes:

    /* 
      TERMS OF USE - EASING EQUATIONS
      Open source under the BSD License.
      Copyright 2001 Robert Penner All rights reserved.
     */

ああ、知ってうれしい!
ネイサンロング

@Nathan Long:これは、最小化を行う人が推奨するアプローチです。
11

23

はい

警告付き。サイトの他の場所に通知を配置する必要があります。通常、利用規約または通知ページの下。これを行うには、単純化したすべてのJSピースの先頭に(または単純に単一のJSファイルの先頭に)以下を追加します。

/** Notice 
  *
  * This file contains works from many authors under various (but compatible)
  * licenses. Please visit http://example.com/notices for more information.
  *
 **/

4

実際、縮小ステップ自体の一部として通知を保存しないのはなぜですか?

最も簡単な方法は、最初に(手動で)通知を抽出し、どこかに保存することです。次に、ミニフィケーションスクリプトでJSをミニファイし、変更されていない通知を連結します。

もちろんそれは十分に小さいと思います...それが大きければ、Josh Kの答えはおそらくもっと良いでしょう。


問題は、構築時に通知を自動的に検出するようになります。あなたが触れた別のポイントは、通知が非常に大きく、再ダウンロードするのに費用がかかる可能性があることです。
ジョシュK

@ジョシュK:私は手動で通知抽出すると言った。大きな通知については、私もそれをカバーしたと思います。その場合、それを分離する方が良いことに同意します。
マチューM.

具体的には、jQuery Easing Pluginを考えていました。ソースを見ると、コードの約半数の契約条件行があります:gsgd.co.uk/sandbox/jquery/easing/jquery.easing.1.3.jsだから、この場合、できればt通知を削除します。これは縮小化にとって大きな問題です。
ネイサンロング

3

ライセンスを読んだところ、完全に安全であるためには、ソフトウェアまたはその派生著作物(縮小されたJSを含む)の配布に完全なライセンステキストを含める必要があると思います。主要なオープンソースライセンスから:

GPLv3:

...プログラムのソースコードの完全なコピーを、媒体を使用して、媒体で伝えることができます。ただし、すべての受信者に、プログラムとともにこのライセンスのコピーを提供します。...

[上記のセクション]の条件に基づいて、プログラムに基づいて作品をソースコードの形式で伝えることができます。

MITライセンス:

上記の著作権表示およびこの許可通知は、ソフトウェアのすべてのコピーまたは大部分に含まれるものとします。

BSDライセンス:

ソースコードの再配布では、上記の著作権表示、この条件リスト、および以下の免責事項を保持する必要があります。

ただし、ほとんどの人はこのアプローチを採用していないようです。公式に縮小されたTwitterのBootstrapでもわずかな著作権表示しか含まれていないため、ユーザーに提供した場合、MITライセンスに違反することになります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.