Skip to content

Implemented Data Editor Message Registry#1716

Open
stricklandrbls wants to merge 1 commit into
apache:mainfrom
ctc-oss:message-registry-implementation
Open

Implemented Data Editor Message Registry#1716
stricklandrbls wants to merge 1 commit into
apache:mainfrom
ctc-oss:message-registry-implementation

Conversation

@stricklandrbls

@stricklandrbls stricklandrbls commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Closes #1659
Closes #1469
Closes #1058
Closes #669

Description

  • Implemented a Message Registry which provides type-safe message content inspection for messages sent between the data editor, dfdl extension, and the Svelte UI.
  • Restructured some legacy Svelte stores into Svelte v5 runes.
  • Resolved issues related to message content mismathcing and message content being processed by multiple data editors when the message was intended for a single data editor instance.

Wiki

  • I have determined that no documentation updates are needed for these changes
  • I have added the following documentation for these changes

Review Instructions including Screenshots

Developer Perspective Reviews

  1. In any portion of the data editor's extension source, verify that message content is appropriately inspected and the VSCode intellisense engine emits correct types when invoking this.panel.postMessage(...).
Screenshots ( dataEditorClient.ts -> 'fileInfo') image image
  1. In any portion of the data editor's Svelte UI source, verify that message content is appropriately inspected and the VSCode intellisense engine emits correct types when invoking addListener(...).
Screenshots ( DataEditorLineFeed.svelte -> 'viewportRefresh') image
  1. In any portion of the data editor's Svelte UI source, verify that message content is appropriately inspected and the VSCode intellisense engine emits correct types when invoking vscode.postMessage(...).
Screenshots ( App.svelte -> 'requestEditedData') image

Functionality Review

Verify that all message traffic behaves as expected. Message content can be identified within the ./src/ext_types/message.ts & ./src/ext_types/messageContent.ts

@stricklandrbls stricklandrbls added this to the 1.6.0 milestone Jun 11, 2026
@stricklandrbls stricklandrbls self-assigned this Jun 11, 2026
@stricklandrbls stricklandrbls added enhancement New feature or request typescript code quality Issues related to code quality data editor Issues related to the Data Editor capability debugger Issues related to the DFDL debugger capability configuration issues related to configuration labels Jun 11, 2026
@stricklandrbls stricklandrbls added the extension Issues releated to the VSCode Extension label Jun 11, 2026
@stricklandrbls stricklandrbls force-pushed the message-registry-implementation branch from f94da23 to f2d91e0 Compare June 11, 2026 22:56
@stricklandrbls

Copy link
Copy Markdown
Contributor Author

Looks like I'll have to fix tests due to the strict type checks when transpiling with yarn tsc

@stricklandrbls stricklandrbls force-pushed the message-registry-implementation branch 2 times, most recently from 13cb602 to a72d6ca Compare June 12, 2026 03:47
@hdalsania hdalsania moved this to In Review in daffodil-vscode v1.6.0 Jun 12, 2026
@stricklandrbls

stricklandrbls commented Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

@scholarsmate Is the omegaEditServerLifecycle.ts a test file? The CI jobs are failing due to a permission denied when trying to run the transpiled JS file.

Disregard, I fixed this issue.

@stricklandrbls stricklandrbls force-pushed the message-registry-implementation branch 4 times, most recently from c99639a to 9c28091 Compare June 14, 2026 05:29
@stricklandrbls

Copy link
Copy Markdown
Contributor Author

Some changes needed to be made in order to get the updated data editor files to function properly for CI. Everything should be good to go, now.

@hdalsania

Copy link
Copy Markdown
Collaborator

@stricklandrbls Is this PR ready to test?

@stricklandrbls

Copy link
Copy Markdown
Contributor Author

@stricklandrbls Is this PR ready to test?

Yes it is ready

@stricklandrbls

Copy link
Copy Markdown
Contributor Author

Going to sift through and implement resolutions for import strings as referenced here

@stricklandrbls stricklandrbls force-pushed the message-registry-implementation branch 2 times, most recently from e5101a8 to a8dd573 Compare June 16, 2026 03:27
@stricklandrbls

Copy link
Copy Markdown
Contributor Author

The svelte imports should now all be aliased if the path is not a sub-directory of its path.

The rest of the extension imports still need to be updated.

@lrbarber

Copy link
Copy Markdown
Collaborator

@stricklandrbls , I did some testing on this code and found that the data editor does not open automatically when starting debug. Wondering if some messages are missing? The status bar at the bottom shows no indication that it is even trying to connect to the server.
Opening the data editor manually works, but it does not get the location tracking indicator. Also, after closing the editor and restarting debug, attempting to open data editor again results in an error: A Data Editor already exists for .

@stricklandrbls

Copy link
Copy Markdown
Contributor Author

@stricklandrbls , I did some testing on this code and found that the data editor does not open automatically when starting debug. Wondering if some messages are missing? The status bar at the bottom shows no indication that it is even trying to connect to the server.

Opening the data editor manually works, but it does not get the location tracking indicator. Also, after closing the editor and restarting debug, attempting to open data editor again results in an error: A Data Editor already exists for .

Awesome thanks for testing this. I'll take a look

@stricklandrbls stricklandrbls force-pushed the message-registry-implementation branch from a8dd573 to c648f68 Compare June 18, 2026 03:11
@stricklandrbls

Copy link
Copy Markdown
Contributor Author

@lrbarber The latest commit should fix the issue of the Data Editor not opening for the target data file in a debug session.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

code quality Issues related to code quality configuration issues related to configuration data editor Issues related to the Data Editor capability debugger Issues related to the DFDL debugger capability enhancement New feature or request extension Issues releated to the VSCode Extension typescript

Projects

Status: In Review

3 participants