bug: class initialization can re-enter `B2JsonHandlerMap.getHandler`
メンテナーはふだん 3 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
Start with the testClassInitializationInDefaultValue reproduction in the issue and trace how B2Json.fromJsonOrThrowRuntime obtains a handler through B2JsonHandlerMap.getHandler. The issue gives no source or test file path, so locate the existing regression tests and handler implementation first. Done means the reproduction passes when a default value's class initializer re-enters handler lookup.
索引モデルが issue の本文から書いたものです。
説明
This test case triggers the problem:
/**
* A regression test for a case where a class has a field with a default value,
* and the class of the default value has a class initializer.
*/
@Test
public void testClassInitializationInDefaultValue() {
B2Json.fromJsonOrThrowRuntime("{}", TestClassInit_ClassWithDefaultValue.class);
}
private static class TestClassInit_ClassWithDefaultValue {
@B2Json.optionalWithDefault(defaultValue = "{}")
private final TestClassInit_ClassThatDoesInitializition objThatDoesInit;
@B2Json.constructor(params = "objThatDoesInit")
private TestClassInit_ClassWithDefaultValue(TestClassInit_ClassThatDoesInitializition objThatDoesInit) {
this.objThatDoesInit = objThatDoesInit;
}
}
private static class TestClassInit_ClassThatDoesInitializition {
private static TestClassInit_ClassThatDoesInitializition defaultValue =
B2Json.fromJsonOrThrowRuntime("{}", TestClassInit_ClassThatDoesInitializition.class);
@B2Json.constructor(params = "")
TestClassInit_ClassThatDoesInitializition() {}
}
- 主要言語
- Java
- スター
- 103
- フォーク
- 23
- 平均マージ
- 5日 8時間
- マージ済み PR(30日)
- 3
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Backblaze/b2-sdk-java のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
Backblaze/b2-sdk-java#248 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
Backblaze/b2-sdk-java#247 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
Backblaze/b2-sdk-java#246 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
Backblaze/b2-sdk-java#245 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
Backblaze/b2-sdk-java#242 ·
メンテナーはふだん 3 日以内に返信
Backblaze/b2-sdk-java の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
IETF-Hackathon/pqc-certificates#351 ·
メンテナーはふだん 2 日以内に返信
-
bug(core): skip_nodes.json is missing SELECT and PRE, causing Python and Java to insert separators into dropdown options and preformatted text対応中かも @Bhumit267 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
メンテナーはふだん 1 日以内に返信
-
ExceptionThrowShouldUseContext: NullPointerException on a catch block inside an annotation type対応中かも @Carbon14-48 が今日担当しました。 オープンapproved
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
checkstyle/checkstyle#22784 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
メンテナーはふだん 1 日以内に返信