Details
-
Epic
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
MTA - VSCode - Dependency Analytics (POC)
-
False
-
False
-
To Do
-
-
0
-
0%
-
---
-
---
Description
Provide insights about application dependencies dynamically within VSCode without needing to execute the mta-cli.
The idea here is to provide a light-weight dependency checker that can identify and flag problematic dependencies.
For starters, this POC will work to identify potential dependency issues when targeting eap8 using the Jakarta rulesets.
The idea is to provide users with live feedback from the dependency analysis with the context of targeted technologies.
The analysis would take place when files are changed or opened.
The dependency analyzer would stay running in the background as the user develops their applications within VSCode.
Windup XML rulesets (starting with jakarta-ee), as well as a simplified regular expression notation are to be supported.
Feedback from the dependency analyzer would consist of possible solutions/quickfixes, as well as general information provided by the matched rules.
Architecture (top-level):
- A file watching process that detects changes to code and determines what rules need to be evaluated.
- A rule execution process that evaluates matched rules for a given file change and reports info to the user.
- UI for reporting results of the analysis to the user.
Architecture (breakdown):
- File watching
- When a file is opened or edited, trigger dependency checks, and report feedback to the user. This process should not take long as we’re reporting this feedback live.
- Rule Execution
- Rule execution is the process of evaluating matched rules for a given file and determining if the rule’s conditions are met.
- UI
- VSCode source code editor integration to provide feedback directly in the source code (similar to syntax highlighting developers are accustomed to).
- A table/tree of discovered issues (similar to the existing MTA issue explorer).