パスワードを忘れた? アカウント作成
14119602 story
オープンソース

最も広く使われているFOSSパッケージ 40

ストーリー by headless
調査 部門より
The Linux FoundationがLaboratory for Innovation Science at Harvardと共同で実施したフリー・オープンソースソフトウェア(FOSS)のセキュリティに関する調査報告書の暫定版「Preliminary Report and Census II of Open Source Software」を公開している(報告書: PDFThe Registerの記事)。

The Linux Foundationは2014年、Heartbleed脆弱性の問題を受けてオープンソースプロジェクトを援助するCore Infrastructure Initiative(CII)を設立。2015年には調査プロジェクト(Census I)を実施して報告書を公開しており、今回のCensus IIはその第2弾となる。冒頭で「典型的なアプリケーションの80%~90%は(オープンソースの)コンポーネントでできている」というSonatypeによる2016年の報告書(PDF)からの引用を掲げている通り、セキュリティ上の問題点特定に活用するため、どのようなFOSSパッケージが幅広く使われているのかを特定することが主目的となっている。

報告書では付録として最も広く使われているFOSSパッケージ(JavaScript: 10、JavaScript以外: 10)がまとめられている。JavaScriptとそれ以外を分けたのは、使用したデータソースでJavaScriptが多くを占めており、どのようなランキングを作成しても使用したJavaScriptが上位を独占する状態になってしまうからだという。ただし、JavaScript以外のパッケージでも同じ問題があり、すべてがJavaのパッケージとなっている。

最も広く使われているJavaScriptパッケージ、およびJavaScript以外のパッケージは以下の通り。なお、リストは人気順ではなくアルファベット順だ。

JavaScriptパッケージ JavaScript以外のパッケージ
async jackson-core
inherits jackson-databind
isarray Guava: Google Core Libraries for Java
kind-of Apache Commons Codec
lodash Apache Commons IO
minimist Apache HttpComponents Client
natives Apache HttpComponents Core
qs logback-core
readable-stream Apache Commons Lang
string_decoder SLF4J: Simple Logging Facade for Java
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • npm rank [github.com]と比べても、なんだか枯れきったパッケージが多いなあという印象だったんですが、データソースは以下のようなものらしいです。

    The Census II effort benefited from the contribution of
    private usage data by Software Composition Analysis
    (SCAs) and application security companies, including
    developer-first security company Snyk19 and Synopsys
    Cybersecurity Research Center (CyRC)20, who partnered
    with CII to advance the state of open source research.
    These SCA partners provided data from automated
    scans of production systems within their customers’
    environments

    Software Composition Analysis(SCAs)は依存関係しらべて脆弱性があったら教えてくれるようなヤツですね。

    # 別スレッド荒れてるなぁ

  • by Anonymous Coward on 2020年02月24日 22時56分 (#3767818)

    asyncもinheritsも、ES2015でPromiseやclassが導入される前にみんなが仕方なく使っていたライブラリですよね。
    いやまあ今でも当時のソースがいろんなところで使われているのでしょうが、それを良く使われているパッケージと言われると、うーん。。。
    TypeScriptとかReactはともかく、せめて一時代前でもBabelやjQueryが出てくるかと思っていた。

    • by Anonymous Coward on 2020年02月25日 9時41分 (#3767932)

      一度入れたJavaScriptライブラリは二度とアップデートされることはない
      https://qiita.com/rana_kualu/items/09678f8a87216a7292eb [qiita.com]

      わかりみ。

      親コメント
      • by Anonymous Coward

        依存関係弾き出すのが容易ではないので、変更の手間が大き過ぎててを出せないからじゃないですかね?

        • by Anonymous Coward

          一つ上げたら別のも上げないといけなくて、そのせいで別のも…みたいな感じで絶望的に絡み合ってるからなぁ。

    • by Anonymous Coward on 2020年02月25日 7時26分 (#3767897)

      一番使われているオープンソースソフトウェアはStackOverflow(からのコピペ)じゃないのか…

      親コメント
      • by Anonymous Coward on 2020年02月25日 7時35分 (#3767898)

        なるほど、日本でオープンソースソフトウェアの利用が普及しないのは
        StackOverflowからコピペ出来るだけの英語力すらない人が多いからなのか…

        親コメント
        • by Anonymous Coward

          かたや英語力だけのがあまりにアホな質問乱発して、でっかいマイナス連発喰らってたな…

      • by Anonymous Coward

        真面目に公式ドキュメント読んでれば、StackOverflowのサンプルのほとんどは公式のコピペだということはわかるはず。

    • by Anonymous Coward

      孫依存関係とかのdevDependenciesがそのまま統計に入ってるのであれば、アプリケーションの直接の依存関係(ただのdependencies)と分けて見たり、
      そもそもNode.jsなのか・ブラウザ向けなのかでどう変化するのかも気になりますね。lodashはどのみち入りそう。

      # asyncは開発もアクティブですし、そこそこ現役なのでは。Bluebird的なPromiseの孫の手ライブラリ。

  • by Anonymous Coward on 2020年02月25日 13時00分 (#3767996)

    gcc や g++はビルドバイナリに自身のバイナリの一部を含めるから、みんな使っていると思う。
    clang/llvm を使っても 最終的には gcc/g++を使っているらしいの。

    • by Anonymous Coward

      正確には間違ってるけど、正しく説明するほど詳しくないから困っちゃうあれですね。
      とりあえず「自身のバイナリの一部を含める」ではないんじゃない。GCC(GNU Compiler Collectionの方)で開発してるコードの一部は入ると思うけど、殆どはダイナミックリンクされるんじゃない?
      まあそれでもGCCのコードを使ってることに違いはないけど。

    • by Anonymous Coward

      clang/llvm を使っても 最終的には gcc/g++を使っているらしいの。

      そなの?
      今時のFreeBSDにはgcc/g++入ってないけど?
      置き換えた目的からしてそんなことにはなってないと思うのだが。

  • by Anonymous Coward on 2020年02月26日 8時23分 (#3768517)

    にしましょうや。
    VBに固執してる輩と同じ匂いを感じる。
    この言語とそれを取り巻く環境は害悪でしかない。

typodupeerror

開いた括弧は必ず閉じる -- あるプログラマー

読み込み中...