From 4a2991588b4798241bf77c6e97896d40552c4539 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Tue, 13 Aug 2024 20:11:20 +0800 Subject: [PATCH] Update Sentry libs - fix Java Property on startup --- forge-game/pom.xml | 2 +- .../forge/game/ability/effects/ManaEffect.java | 5 ++++- .../src/main/java/forge/game/card/Card.java | 9 +++++++-- .../java/forge/game/card/CardCopyService.java | 5 ++++- .../java/forge/game/card/CardFactoryUtil.java | 5 ++++- .../main/java/forge/game/card/CardState.java | 5 ++++- .../forge/game/keyword/KeywordInstance.java | 17 +++++++++++++---- .../java/forge/game/trigger/TriggerHandler.java | 9 +++++++-- forge-gui-android/pom.xml | 12 +++--------- forge-gui/src/main/java/forge/model/FModel.java | 3 +-- 10 files changed, 48 insertions(+), 24 deletions(-) diff --git a/forge-game/pom.xml b/forge-game/pom.xml index c1bfd257cb5..ce71344eab3 100644 --- a/forge-game/pom.xml +++ b/forge-game/pom.xml @@ -32,7 +32,7 @@ io.sentry sentry-logback - 5.7.0 + 7.14.0 diff --git a/forge-game/src/main/java/forge/game/ability/effects/ManaEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ManaEffect.java index 4cb107a8b9c..d3ccfa091da 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ManaEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ManaEffect.java @@ -6,6 +6,7 @@ import java.util.List; import java.util.Map; import forge.util.Lang; +import io.sentry.Hint; import org.apache.commons.lang3.StringUtils; import forge.card.ColorSet; @@ -240,7 +241,9 @@ public class ManaEffect extends SpellAbilityEffect { Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", card.getName()); bread.setData("SA", sa.toString()); - Sentry.addBreadcrumb(bread, sa); + Hint hint = new Hint(); + hint.set(sa.toString(), sa); + Sentry.addBreadcrumb(bread, hint); continue; } diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index d5f73de19f3..8ff9161e9c2 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -56,6 +56,7 @@ import forge.util.*; import forge.util.collect.FCollection; import forge.util.collect.FCollectionView; import io.sentry.Breadcrumb; +import io.sentry.Hint; import io.sentry.Sentry; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.mutable.MutableBoolean; @@ -2613,7 +2614,9 @@ public class Card extends GameEntity implements Comparable, IHasSVars { Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", this.getName()); bread.setData("Keyword", keyword); - Sentry.addBreadcrumb(bread, this); + Hint hint = new Hint(); + hint.set(this.getName(), this); + Sentry.addBreadcrumb(bread, hint); throw new RuntimeException("Error in Card " + this.getName() + " with Keyword " + keyword, e); } @@ -3184,7 +3187,9 @@ public class Card extends GameEntity implements Comparable, IHasSVars { Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", this.getName()); bread.setData("Keyword", keyword); - Sentry.addBreadcrumb(bread, this); + Hint hint = new Hint(); + hint.set(this.getName(), this); + Sentry.addBreadcrumb(bread, hint); throw new RuntimeException("Error in Card " + this.getName() + " with Keyword " + keyword, e); } diff --git a/forge-game/src/main/java/forge/game/card/CardCopyService.java b/forge-game/src/main/java/forge/game/card/CardCopyService.java index d9967e61a45..0b7b45491db 100644 --- a/forge-game/src/main/java/forge/game/card/CardCopyService.java +++ b/forge-game/src/main/java/forge/game/card/CardCopyService.java @@ -10,6 +10,7 @@ import forge.game.ability.ApiType; import forge.game.player.Player; import forge.game.spellability.SpellAbility; import io.sentry.Breadcrumb; +import io.sentry.Hint; import io.sentry.Sentry; import java.util.List; @@ -214,7 +215,9 @@ public class CardCopyService { bread.setData("Card", copyFrom.getName()); bread.setData("CardState", copyFrom.getCurrentStateName().toString()); bread.setData("Player", copyFrom.getController().getName()); - Sentry.addBreadcrumb(bread, copyFrom); + Hint hint = new Hint(); + hint.set(copyFrom.getName(), copyFrom); + Sentry.addBreadcrumb(bread, hint); final Card newCopy = new Card(copyFrom.getId(), copyFrom.getPaperCard(), copyFrom.getGame(), null); cachedMap.put(copyFrom.getId(), newCopy); diff --git a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java index 2bd6b3807cd..4e8ae55d172 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java @@ -51,6 +51,7 @@ import forge.util.Localizer; import forge.util.TextUtil; import io.sentry.Breadcrumb; import io.sentry.Sentry; +import io.sentry.Hint; import org.apache.commons.lang3.StringUtils; import java.util.*; @@ -542,7 +543,9 @@ public class CardFactoryUtil { Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", card.getName()); bread.setData("Ability", rawAbility); - Sentry.addBreadcrumb(bread, card); + Hint hint = new Hint(); + hint.set(card.getName(), card); + Sentry.addBreadcrumb(bread, hint); // rethrow the exception with card Name for the user throw new RuntimeException("crash in raw Ability, check card script of " + card.getName(), e); diff --git a/forge-game/src/main/java/forge/game/card/CardState.java b/forge-game/src/main/java/forge/game/card/CardState.java index ff7c0ade289..5d45082881f 100644 --- a/forge-game/src/main/java/forge/game/card/CardState.java +++ b/forge-game/src/main/java/forge/game/card/CardState.java @@ -50,6 +50,7 @@ import forge.game.trigger.Trigger; import forge.util.collect.FCollection; import forge.util.collect.FCollectionView; import io.sentry.Breadcrumb; +import io.sentry.Hint; import io.sentry.Sentry; public class CardState extends GameObject implements IHasSVars { @@ -303,7 +304,9 @@ public class CardState extends GameObject implements IHasSVars { Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", card.getName()); bread.setData("Keyword", s); - Sentry.addBreadcrumb(bread, this); + Hint hint = new Hint(); + hint.set(this.name, this); + Sentry.addBreadcrumb(bread, hint); //rethrow throw new RuntimeException("Error in Keyword " + s + " for card " + card.getName(), e); diff --git a/forge-game/src/main/java/forge/game/keyword/KeywordInstance.java b/forge-game/src/main/java/forge/game/keyword/KeywordInstance.java index efd94ef8e8e..6f9aaee18a1 100644 --- a/forge-game/src/main/java/forge/game/keyword/KeywordInstance.java +++ b/forge-game/src/main/java/forge/game/keyword/KeywordInstance.java @@ -17,6 +17,7 @@ import forge.game.staticability.StaticAbility; import forge.game.trigger.Trigger; import forge.util.Lang; import io.sentry.Breadcrumb; +import io.sentry.Hint; import io.sentry.Sentry; public abstract class KeywordInstance> implements KeywordInterface { @@ -106,7 +107,9 @@ public abstract class KeywordInstance> implements K Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", host.getName()); bread.setData("Keyword", this.original); - Sentry.addBreadcrumb(bread, this); + Hint hint = new Hint(); + hint.set(this.original, this); + Sentry.addBreadcrumb(bread, hint); // add Extra for debugging Sentry.setExtra("Card", host.getName()); @@ -122,7 +125,9 @@ public abstract class KeywordInstance> implements K Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", host.getName()); bread.setData("Keyword", this.original); - Sentry.addBreadcrumb(bread, this); + Hint hint = new Hint(); + hint.set(this.original, this); + Sentry.addBreadcrumb(bread, hint); //rethrow throw new RuntimeException("Error in Keyword " + this.original + " for card " + host.getName(), e); @@ -157,7 +162,9 @@ public abstract class KeywordInstance> implements K Breadcrumb bread = new Breadcrumb(msg); bread.setData("Player", player.getName()); bread.setData("Keyword", this.original); - Sentry.addBreadcrumb(bread, this); + Hint hint = new Hint(); + hint.set(this.original, this); + Sentry.addBreadcrumb(bread, hint); // add Extra for debugging Sentry.setExtra("Player", player.getName()); @@ -173,7 +180,9 @@ public abstract class KeywordInstance> implements K Breadcrumb bread = new Breadcrumb(msg); bread.setData("Player", player.getName()); bread.setData("Keyword", this.original); - Sentry.addBreadcrumb(bread, this); + Hint hint = new Hint(); + hint.set(this.original, this); + Sentry.addBreadcrumb(bread, hint); //rethrow throw new RuntimeException("Error in Keyword " + this.original + " for player " + player.getName(), e); diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java b/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java index eb825725674..b5a730d174e 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java @@ -43,6 +43,7 @@ import forge.game.zone.ZoneType; import forge.util.FileSection; import forge.util.Visitor; import io.sentry.Breadcrumb; +import io.sentry.Hint; import io.sentry.Sentry; public class TriggerHandler { @@ -135,7 +136,9 @@ public class TriggerHandler { Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", host.getName()); bread.setData("Trigger", trigParse); - Sentry.addBreadcrumb(bread, host); + Hint hint = new Hint(); + hint.set(host.getName(), host); + Sentry.addBreadcrumb(bread, hint); //rethrow throw new RuntimeException("Error in Trigger for Card: " + host.getName(), e); @@ -163,7 +166,9 @@ public class TriggerHandler { Breadcrumb bread = new Breadcrumb(msg); bread.setData("Card", host.getName()); bread.setData("Params", mapParams.toString()); - Sentry.addBreadcrumb(bread, host); + Hint hint = new Hint(); + hint.set(host.getName(), host); + Sentry.addBreadcrumb(bread, hint); //rethrow throw new RuntimeException("Error in Trigger for Card: " + host.getName(), e); diff --git a/forge-gui-android/pom.xml b/forge-gui-android/pom.xml index 3e078f2dbed..c121f6b4b54 100644 --- a/forge-gui-android/pom.xml +++ b/forge-gui-android/pom.xml @@ -133,7 +133,7 @@ io.sentry sentry-android - 5.7.0 + 7.14.0 aar @@ -150,7 +150,7 @@ io.sentry sentry-android-core - 5.7.0 + 7.14.0 aar @@ -170,7 +170,7 @@ io.sentry sentry-android-ndk - 5.7.0 + 7.14.0 aar @@ -191,12 +191,6 @@ - - - com.google.code.gson - gson - 2.9.0 - com.badlogicgames.gdx-controllers gdx-controllers-android diff --git a/forge-gui/src/main/java/forge/model/FModel.java b/forge-gui/src/main/java/forge/model/FModel.java index 2e4a1cdbdbc..02d352fb8ef 100644 --- a/forge-gui/src/main/java/forge/model/FModel.java +++ b/forge-gui/src/main/java/forge/model/FModel.java @@ -110,8 +110,7 @@ public final class FModel { if (GuiBase.isAndroid()) //todo get device on other mobile platforms System.out.println(GuiBase.getDeviceName() + " (RAM: " + GuiBase.getDeviceRAM() + "MB, Android " + GuiBase.getAndroidRelease() + " API Level " + GuiBase.getAndroidAPILevel() + ")"); else { - System.out.println(System.getProperty("os.name") + " (" + System.getProperty("os.version") + " " + System.getProperty("os.arch") + ")"); - System.out.println("Java Version - " + RuntimeVersion.of(System.getProperty("java.version")).toString()); + System.out.println(System.getProperty("os.name") + " (" + System.getProperty("os.version") + " " + System.getProperty("os.arch") + ")\n" + System.getProperty("java.vendor") + " (Java " + System.getProperty("java.runtime.version") + ", " + System.getProperty("java.vm.name") + ")"); } ImageKeys.initializeDirs( ForgeConstants.CACHE_CARD_PICS_DIR, ForgeConstants.CACHE_CARD_PICS_SUBDIR,