GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Add diagnostics gathering feature to debugger and UI by hxrshxz · Pull Request #1297 · processing/processing4

Conversation

@hxrshxz

@hxrshxz hxrshxz commented Oct 19, 2025 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

Fixes #1294

Description

  • Adds ability to gather system diagnostics from a running sketch through the debugger.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@hxrshxz
Add diagnostics gathering feature to debugger and UI
0f95603
Copilot AI review requested due to automatic review settings October 19, 2025 11:51
Copilot AI reviewed Oct 19, 2025
View reviewed changes

Copilot AI left a comment

Copy link
Copy Markdown

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.

Pull Request Overview

This PR adds a diagnostics gathering feature to the debugger that allows developers to collect system information, memory statistics, and sketch runtime details from a running Processing sketch. The feature is accessible through a new menu item in the Debug menu and displays results in a formatted dialog with export capabilities.

Key Changes:

  • New diagnostics collection system that gathers system properties, memory usage, sketch details, and display information
  • Debug menu integration with "Gather Diagnostics" option that invokes the feature via JDWP
  • Dialog interface for viewing, copying, and exporting diagnostic data

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
DiagnosticsDialog.java New dialog UI for displaying formatted diagnostics with copy/export functionality
Debugger.java Adds menu item and implements remote diagnostics gathering via debugger connection
PDiagnostics.java Core diagnostics collection logic that gathers system, memory, and sketch information
PApplet.java Adds getDiagnostics() public method to enable remote invocation from debugger
PDE.properties Adds localization string for the new menu item

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

glvjr reacted with eyes emoji
All reactions
  • 👀 1 reaction
Comment thread java/src/processing/mode/java/debug/DiagnosticsDialog.java Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread java/src/processing/mode/java/debug/Debugger.java Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread core/src/processing/core/PDiagnostics.java Resolved

Uh oh!

There was an error while loading. Please reload this page.

@hxrshxz
Improve error messaging in Debugger and optimize token skipping in Di…
b3add5c
…agnosticsDialog
@Stefterv

Stefterv commented Oct 21, 2025 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Hi @hxrshxz Thank you so much for this work!

A few things:

  • Rather than communicating over JSON and writing a custom writer and parser, lets use the build-in communication in the Debug connection
  • The debug connection is active even when the debugger is not connected in Java mode, so this is not limited to running a sketch with the Debugger active
  • Rather than adding a whole new screen, let's just add it to the clipboard content that already exists when you click the version number
glvjr reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

hxrshxz added 2 commits December 17, 2025 01:01
@hxrshxz
Merge remote-tracking branch 'origin/main' into system-diagnostics
cab59cd
@hxrshxz
add suggested chaanges
c52c492
@hxrshxz

hxrshxz commented Dec 16, 2025 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor Author

Hi @benfry, thank you for the feedback. I've updated the PR to address your points:

  1. Direct JDWP Access: Switched to reading PApplet fields directly via JDI, removing the need for JSON or custom protocols.
  2. Universal Diagnostics: Implemented a static Debugger.getDiagnostics(Runner) that works for both Run and Debug modes without requiring an active debug session.
  3. Clipboard Integration: Simply appends sketch diagnostics to the existing version-click clipboard action. No new UI elements were added.

really sorry for taking so lonng

Screencast.from.2025-12-17.01-46-10.mp4
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@hxrshxz
hxrshxz marked this pull request as draft December 16, 2025 20:14
@hxrshxz
clean up
1d1085f
@hxrshxz
hxrshxz marked this pull request as ready for review December 16, 2025 20:15
@hxrshxz

hxrshxz commented Feb 5, 2026

Copy link
Copy Markdown
Contributor Author

Hey @Stefterv can you please have a look when you are free , thanks for your time

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@Stefterv
Stefterv self-requested a review February 5, 2026 16:40
Stefterv
Stefterv approved these changes Feb 6, 2026
View reviewed changes
@Stefterv

Stefterv commented Feb 6, 2026

Copy link
Copy Markdown
Member

Looks good @hxrshxz! Thank you!

Optionally, I think it would be good to add the same functionality to the new settings screen as the Generate Report button is much easier to find.
Also I think me and @catilac would need to think what kind of debug information would be helpful (renderer for example)
But neither are blockers for this PR so that can also be separate issues.

catilac reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

catilac
catilac approved these changes Feb 6, 2026
View reviewed changes
@catilac
catilac merged commit e42055f into processing:main Feb 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

Copilot code review Copilot
Copilot review effort
Applies to this pull request for everyone.Learn more about Copilot code review.
Copilot left review comments
@catilac catilac catilac approved these changes
+1 more reviewer
@Stefterv Stefterv Stefterv approved these changes
Reviewers whose approvals may not affect merge requirements

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Gathering System Diagnostics from a sketch over the debug connection

Uh oh!

There was an error while loading. Please reload this page.

4 participants

@hxrshxz @Stefterv @catilac
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.