-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CrashReporter improvement : IssueReporter ? #2777
Conversation
Can one of the admins please verify this patch? |
…guish the real fatal crash or not
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This actually works perfectly fine for me - no problems with the labels, even after switching to another language and back. Maybe there is something weird going on in your workspace?
If a thorough attempt to tidy up doesn't resolve it maybe we should try to find out if there are bugs that can mess up the display like that. I didn't do anything other than "Build Project" just in case, didn't delete my config.cfg
or anything
I used the embedded CR and it worked beautifully :-)
Only one tiny comment here about grammar (I think?) and that's a non-issue. We can improve it further especially the modal thing and more label fixes but I'm good to see both PRs get merged.
Edit: Oh, and yes probably "Extras" on the button, but am curious if others agree. Really I think we need to keep that button on just about any screen so it'll be consistent.
@@ -56,7 +56,7 @@ public void initialise() { | |||
WidgetUtil.trySubscribe(this, "settings", button -> triggerForwardAnimation(SettingsMenuScreen.ASSET_URI)); | |||
WidgetUtil.trySubscribe(this, "credits", button -> triggerForwardAnimation(CreditsScreen.ASSET_URI)); | |||
WidgetUtil.trySubscribe(this, "exit", button -> engine.shutdown()); | |||
WidgetUtil.trySubscribe(this, "crashReporter", widget -> CrashReporter.report(new Throwable("Report an error."), LoggingContext.getLoggingPath())); | |||
WidgetUtil.trySubscribe(this, "crashReporter", widget -> CrashReporter.report(new Throwable("Report a error."), LoggingContext.getLoggingPath(), false)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe "Report an error" is more correct in this case than "Report a error" - English is weird that way. You can generally go with an
if the next word starts with a vovel and otherwise a
but there are exceptions ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey, I'm just thinking about deleting all the text "Report a error" or changing it, because there is actually no error in issue reporter.
Problem found ! It's from system language setting, seems that Chinese support doesn't work well ! :( |
@GabrielXia just responded with a big comment over on #2677 - just to clarify, you picked Chinese yourself under the Player Settings, right? It didn't get picked by the game automatically from simply running on your system? I'd think it would start out English in any case :-) |
Why are you removing the button from the in-game menu? |
Uh oh, something went wrong with the build. Need to check on that |
@msteiger that one is on me, I raised it as an idea over in #2765 but it was honestly more of a stray thought / suggestion I had hoped to get some more opinions on first :-) To be clear the button just moved one level deeper, it didn't go away entirely. But I am curious what the most ideal setup there would be. Should reporting an issue be right there as a top level button users can easily spot, or grouped with other stuff under "Extras" ? I would love to instead see the thing I mentioned over in #2765 about what @iojw did in the CR, so we can have a little warning icon in a bottom corner instead of a full button. Make it highlight if anything has occurred we think might be worth reporting. Otherwise it is just a small icon hiding in a corner, not adding much to clutter. |
Hello :-) I've moved this button to the Developer Tools. I think the issue reporter might rather be a tool for developer, but you are right, put it in in-game menu is more convenient for user to check. Maybe we can ask @Cervator here to discuss about where we put this button :-) p.s. Why there is a red cross ? Scared ... |
The red x is because the build in Jenkins failed - in this case that's just the unfortunate reality of making a change that requires a new version of an external project like the CrashReporter. Since the engine build test uses the latest CR without your change there is a simple syntax error where the new thing is missing :-) Poking @rzats for an additional opinion on the button since he does UI stuff! |
@@ -27,6 +27,8 @@ | |||
import org.terasology.rendering.nui.widgets.UILabel; | |||
import org.terasology.version.TerasologyVersion; | |||
|
|||
import javax.print.attribute.standard.Severity; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The enum you're using is intended for a printer API and currently happens to contain the three values we need, but can be arbitrarily changed in the future. Can you replace it with a custom enum located within the CrashReporter
so that we "own" the enum's code?
@@ -33,7 +31,6 @@ public void initialise() { | |||
WidgetUtil.trySubscribe(this, "settings", widget -> getManager().pushScreen("settingsMenuScreen")); | |||
WidgetUtil.trySubscribe(this, "mainMenu", widget -> CoreRegistry.get(GameEngine.class).changeState(new StateMainMenu())); | |||
WidgetUtil.trySubscribe(this, "exit", widget -> CoreRegistry.get(GameEngine.class).shutdown()); | |||
WidgetUtil.trySubscribe(this, "crashReporter", widget -> CrashReporter.report(new Throwable("Report an error."), LoggingContext.getLoggingPath())); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Cervator I'd keep the button in the in-game menu. It's fairly well-hidden anyways.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I'm in no rush to move stuff around. More curious what we should be aiming for :-)
@@ -77,7 +77,7 @@ | |||
* <tr><td>-headless</td><td>Start headless.</td></tr> | |||
* <tr><td>-loadlastgame</td><td>Load the latest game on startup.</td></tr> | |||
* <tr><td>-noSaveGames</td><td>Disable writing of save games.</td></tr> | |||
* <tr><td>-noCrashReport</td><td>Disable crash reporting.</td></tr> | |||
* <tr><td>-noCrashReport</td><td>Disable crash reporting when having a crash.</td></tr> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No need to change the documentation - it still makes sense (the option disables crash reporting, but not issue/feedback reporting)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My thought was emphasizing the flag doesn't disable the usage of the CR for issue reporting (just on triggering actual crashes) ... but yeah this line as written kinda ends up working anyway, since the new option is indeed more about issue/feedback reporting, not crashes :-)
Uh oh, something went wrong with the build. Need to check on that |
1 similar comment
Uh oh, something went wrong with the build. Need to check on that |
Uh oh, something went wrong with the build. Need to check on that |
MovingBlocks/CrashReporter#36 has been merged some time ago. Is there something outstanding here except the new release and version bump? |
Thanks for keeping on this, I think it's ok for the moment. :-)
|
I've just released a new version of CR (4.1.0). We can probably merge this after the next Alpha release. @GabrielXia could you please update the dependency in this PR? |
Uh oh, something went wrong with the build. Need to check on that |
I'm so glad to see this to be merged :-) @skaldarnar which dependency do you refer to? Is that the exclusion of |
Minor conflicts resolved - just conflicting additions on the same line.
I went ahead and did the version bump (just the CR itself in the engine's |
@Cervator There seems to be a problem with my build. Although you bumped the version of CR, do i need to do anything else manually like download the new version jar for CR? |
@0shine0 running |
Contains
Fixes #2765
How to test
.lang
file but haven't changed others, like"crash-reporter": "Issue Reporter"
, I'm wondering if it's better change all "crash reporter" to "issue reporter", like"Issue-reporter": "Issue Reporter"
Developer Tools
menuDeveloper Tools
button toExtras
Outstanding before merging
jDialog
to modeless type, sadly log doesn't update @Cervator What's more, in the non modal windows, you can reopen this windows, and there can be more than one CR windows :( Other than making this window to update log, I think we should think about how to make sure there is only one CR window, like if CR window is open, press the CR button to make this windows in front of all other windows.