論文の概要: Breaking-Good: Explaining Breaking Dependency Updates with Build Analysis
- arxiv url: http://arxiv.org/abs/2407.03880v2
- Date: Tue, 27 Aug 2024 13:22:05 GMT
- ステータス: 処理完了
- システム内更新日: 2024-08-28 18:59:20.273060
- Title: Breaking-Good: Explaining Breaking Dependency Updates with Build Analysis
- Title(参考訳): Breaking-Good: ビルド分析による依存関係更新のブレークスルー
- Authors: Frank Reyes, Benoit Baudry, Martin Monperrus,
- Abstract要約: 依存関係の更新は、新しい依存関係バージョンが既存のクライアントコードと互換性のない変更を導入したときに、コンパイルエラーを引き起こすことが多い。
Breaking-Goodは、更新を壊すための説明を自動的に生成するツールです。
- 参考スコア(独自算出の注目度): 11.367562045401554
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Dependency updates often cause compilation errors when new dependency versions introduce changes that are incompatible with existing client code. Fixing breaking dependency updates is notoriously hard, as their root cause can be hidden deep in the dependency tree. We present Breaking-Good, a tool that automatically generates explanations for breaking updates. Breaking-Good provides a detailed categorization of compilation errors, identifying several factors related to changes in direct and indirect dependencies, incompatibilities between Java versions, and client-specific configuration. With a blended analysis of log and dependency trees, Breaking-Good generates detailed explanations for each breaking update. These explanations help developers understand the causes of the breaking update, and suggest possible actions to fix the breakage. We evaluate Breaking-Good on 243 real-world breaking dependency updates. Our results indicate that Breaking-Good accurately identifies root causes and generates automatic explanations for 70% of these breaking updates. Our user study demonstrates that the generated explanations help developers. Breaking-Good is the first technique that automatically identifies causes of a breaking dependency update and explains the breakage accordingly.
- Abstract(参考訳): 依存関係の更新は、新しい依存関係バージョンが既存のクライアントコードと互換性のない変更を導入したときに、コンパイルエラーを引き起こすことが多い。
依存関係の更新を壊すことは、その根本原因が依存関係ツリーの奥深くに隠されるため、非常に難しい。
Breaking-Goodは、更新を壊すための説明を自動的に生成するツールです。
Breaking-Goodはコンパイルエラーの詳細な分類を提供し、直接および間接依存関係の変更、Javaバージョン間の非互換性、クライアント固有の設定に関連するいくつかの要因を特定する。
breaking-Goodは、ログと依存性ツリーのブレンド分析によって、ブレークスルー毎に詳細な説明を生成する。
これらの説明は、開発者はブレークスルーアップデートの原因を理解し、ブレークスルーを修正するためのアクションを提案するのに役立つ。
実世界の243件の依存性更新についてBreaking-Goodを評価した。
以上の結果から,Breaking-Goodは根本原因を正確に同定し,その70%の自動説明を生成することがわかった。
私たちのユーザ調査では、生成された説明が開発者の役に立つことが示されています。
Breaking-Goodは、依存関係の更新が原因を自動的に識別し、それに従って障害を説明する最初のテクニックである。
関連論文リスト
- Towards Better Comprehension of Breaking Changes in the NPM Ecosystem [12.392457751450374]
我々は,NPM生態系の破壊的変化を調査するため,大規模な実証的研究を行っている。
我々は381のNPMプロジェクトから明示的に文書化された破壊的変更のデータセットを構築した。
我々は、JavaScriptとTypeScript固有の構文的破壊変化の分類と、主要な行動的破壊変化の分類を生成する。
論文 参考訳(メタデータ) (2024-08-26T17:18:38Z) - See to Believe: Using Visualization To Motivate Updating Third-party Dependencies [1.7914660044009358]
サードパーティの依存関係を使用したアプリケーションによって導入されたセキュリティ脆弱性が増加している。
開発者はライブラリのアップデートに注意を払っており、脆弱性の修正にも注意している。
本稿では、依存性グラフ可視化(DGV)アプローチが、開発者が更新を動機付けると仮定する。
論文 参考訳(メタデータ) (2024-05-15T03:57:27Z) - JailbreakBench: An Open Robustness Benchmark for Jailbreaking Large Language Models [123.66104233291065]
ジェイルブレイク攻撃は、大きな言語モデル(LLM)が有害、非倫理的、またはその他の不快なコンテンツを生成する原因となる。
これらの攻撃を評価することは、現在のベンチマークと評価テクニックの収集が適切に対処していない、多くの課題を提示します。
JailbreakBenchは、以下のコンポーネントを備えたオープンソースのベンチマークである。
論文 参考訳(メタデータ) (2024-03-28T02:44:02Z) - BUMP: A Benchmark of Reproducible Breaking Dependency Updates [10.405775369526006]
サードパーティの依存性更新は、新しい依存性バージョンが使用法と互換性のない変更を導入した場合、ビルドが失敗する可能性がある。
依存性の更新を壊す研究は活発に行われており、特徴付け、理解、更新を壊す自動修復、その他のソフトウェア工学的な側面が研究されている。
1) 現実世界のブレークスルー更新を含む; 2) ブレークスルー更新は実行可能である; 3) ベンチマークは、時間とともにブレークスルー更新の安定した科学的アーティファクトを提供する。
論文 参考訳(メタデータ) (2024-01-18T11:41:33Z) - Empirical Analysis of Vulnerabilities Life Cycle in Golang Ecosystem [0.773844059806915]
Golangの脆弱性のライフサイクルを総合的に調査した。
その結果、Golangエコシステムの66.10%のモジュールが脆弱性の影響を受けていることがわかった。
タグ付けされていない脆弱性やラベル付けされていない脆弱性の背後にある理由を分析することで、タイムリーリリースとインデクシングのパッチバージョンは、エコシステムのセキュリティを著しく向上させる可能性がある。
論文 参考訳(メタデータ) (2023-12-31T14:53:51Z) - KNOD: Domain Knowledge Distilled Tree Decoder for Automated Program
Repair [33.04645845117822]
APR(Automated Program repair)は、バグ修正プログラム用のパッチを自動生成することで、ソフトウェアの信頼性を向上させる。
最近のAPR技術は、ディープラーニング(DL)を利用して、既存のパッチやコードコーパスからパッチを生成するためのモデルを構築する。
本稿では,パッチ生成を直接的かつ包括的にガイドするために,ドメイン知識を取り入れたDLベースのAPRアプローチを提案する。
論文 参考訳(メタデータ) (2023-02-03T17:02:56Z) - Using Developer Discussions to Guide Fixing Bugs in Software [51.00904399653609]
我々は,タスク実行前に利用可能であり,また自然発生しているバグレポートの議論を,開発者による追加情報の必要性を回避して利用することを提案する。
このような議論から派生したさまざまな自然言語コンテキストがバグ修正に役立ち、オラクルのバグ修正コミットに対応するコミットメッセージの使用よりもパフォーマンスの向上につながることを実証する。
論文 参考訳(メタデータ) (2022-11-11T16:37:33Z) - Learning compositional structures for semantic graph parsing [81.41592892863979]
本稿では、AM依存性解析をニューラル潜在変数モデルで直接トレーニングする方法を示す。
本モデルでは,いくつかの言語現象を独自に把握し,教師あり学習に匹敵する精度を達成している。
論文 参考訳(メタデータ) (2021-06-08T14:20:07Z) - D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using
Differential Analysis [55.15995704119158]
静的解析ツールによって報告されたラベル問題に対する差分解析に基づくアプローチであるD2Aを提案する。
D2Aを使用して大きなラベル付きデータセットを生成し、脆弱性識別のためのモデルをトレーニングします。
論文 参考訳(メタデータ) (2021-02-16T07:46:53Z) - Please Mind the Root: Decoding Arborescences for Dependency Parsing [67.71280539312536]
我々はUniversal Dependency Treebankから多くの言語における最先端の出力を分析する。
最悪の制約違反率は24%です。
論文 参考訳(メタデータ) (2020-10-06T08:31:14Z) - Object Files and Schemata: Factorizing Declarative and Procedural
Knowledge in Dynamical Systems [135.10772866688404]
モノリシックな隠蔽状態を持つブラックボックスモデルは、手続き的知識を一貫して均一に適用できないことが多い。
宣言的および手続き的知識を分解するアーキテクチャを通じてこの問題に対処する。
論文 参考訳(メタデータ) (2020-06-29T17:45:03Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。