hdalsania opened a new pull request, #1759:
URL: https://github.com/apache/daffodil-vscode/pull/1759
Closes #1273
## Description
- Added `Compile Schema`command, available from:
- Command Palette
- DFDL Command Explorer panel
- Schema file context actions
- Added/updated launch option Validate Schema Before Debug (launch key
`validateSchemaBeforeDebug`) so debug launch can validate schema before session
start
- Implemented parser cache serialization and reload flow so debug can avoid
repeated schema recompilation when inputs are unchanged
- Added cache key coverage for:
- Schema path
- Schema last-modified timestamp and size
- Root name/root namespace
- Tunables
- External variables
- Build version
- Added logging
- Updated user documentation and release notes
## Wiki
- [ ] I have determined that no documentation updates are needed for these
changes
- [x] I have added the following documentation for these changes
- doc/Wiki.md
- doc/Introduction-to-Daffodil-VS-Code-Extension.md
- CHANGELOG.md
## Review Instructions including Screenshots
- Open a `.dfdl.xsd` schema in VS Code.
- Open the Command Palette and confirm `Daffodil Debug: Compile Schema` is
available.
- Open the DFDL Command Explorer panel and confirm `Compile Schema` is
available there as well.
- Open the launch configuration wizard and confirm
`validateSchemaBeforeDebug` is present.
- Run `Compile Schema` on the schema and confirm it completes successfully.
- Start a debug session with `validateSchemaBeforeDebug` enabled.
- Start debug again without changing the schema, tunables, variables, or
root settings.
- Confirm the backend reuses the cached parser instead of recompiling.
<img width="1634" height="43" alt="image"
src="https://github.com/user-attachments/assets/03424916-8c4c-4aa0-9a1f-8ac50f6d1750"
/>
- Change one cache input, such as a variable or tunable, and run debug
again.
- Confirm the backend recompiles and refreshes the cache.
<img width="1635" height="39" alt="image"
src="https://github.com/user-attachments/assets/3af74da1-72fa-412f-8837-ce33ae5a1388"
/>
- Verify the updated docs and changelog entries describe the new
compile/debug workflow accurately.
### Regression Testing
- Verify existing debug and run flow works along with data editor and TDML
functionality.
- Confirm no existing command or launch config behavior was removed or
broken.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]