Improve dependency management#1537
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 5
🧹 Nitpick comments (7)
packages/mi-extension/src/rpc-managers/mi-diagram/rpc-manager.ts (1)
4129-4144: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winUse the existing top-level
XMLParserbinding here instead of requiring it inline.
fast-xml-parseris already loaded at module scope in this file, so the localrequireis redundant.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-extension/src/rpc-managers/mi-diagram/rpc-manager.ts` around lines 4129 - 4144, Update extractMavenCoordinates to remove the inline require("fast-xml-parser") and reuse the existing top-level XMLParser binding when constructing the parser. Keep the current XML parsing options and Maven coordinate extraction behavior unchanged.Sources: Path instructions, Linters/SAST tools
packages/mi-extension/src/rpc-managers/mi-visualizer/rpc-manager.ts (1)
150-151: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueConsider moving the dependency import to the top of the file.
Using an inline
requireworks, but moving the import to the top of the file aligns with standard module practices and avoids re-evaluating the module mapping every time the method is invoked.As per path instructions, this helps enforce standard best practices.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-extension/src/rpc-managers/mi-visualizer/rpc-manager.ts` around lines 150 - 151, Move the fast-xml-parser dependency import out of the inline require near the visualizer RPC logic and place it with the file’s top-level imports, preserving the existing XMLParser initialization options and behavior.Source: Path instructions
packages/mi-visualizer/src/views/ManageDependencies/ProjectAddPanel.tsx (1)
142-157: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick winHandle extraction failures for malformed pom.xml files.
extractMavenCoordinatesis awaited with no error handling. If the selected file can't be parsed, the rejection is unhandled and the user gets no feedback that the selection failed.🔧 Suggested fix
const handleSelectPom = async () => { const res = await rpcClient.getMiDiagramRpcClient().browseFile({ canSelectFiles: true, canSelectFolders: false, canSelectMany: false, defaultUri: "", title: "Select pom.xml", filters: { "POM File": ["xml"] } }); if (!res?.filePath) { return; } - const gav = await rpcClient.getMiDiagramRpcClient().extractMavenCoordinates({ pomPath: res.filePath }); - setPrefill({ groupId: gav.groupId, artifact: gav.artifactId, version: gav.version }); - setMode("pom"); + try { + const gav = await rpcClient.getMiDiagramRpcClient().extractMavenCoordinates({ pomPath: res.filePath }); + setPrefill({ groupId: gav.groupId, artifact: gav.artifactId, version: gav.version }); + setMode("pom"); + } catch (e) { + console.error("Failed to extract Maven coordinates from pom.xml", e); + } };🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-visualizer/src/views/ManageDependencies/ProjectAddPanel.tsx` around lines 142 - 157, Update handleSelectPom to catch extraction failures from extractMavenCoordinates after a file is selected, preventing rejected promises from going unhandled and providing user feedback that the pom.xml could not be parsed. Keep the existing prefill and mode updates only for successful extraction.packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx (3)
309-313: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winTwo divergent "is this dependency manually-added" predicates.
isManuallyAdded(line 309-310) requires!defaultVersion && (isOverridden || overriddenVersion || localPath), whileisAddedDep(line 703) only checks!dep.defaultVersion. In the normal case these agree, but for a dependency that has nodefaultVersionyet hasn't been flaggedisOverridden/overriddenVersion/localPath, the two diverge: the badge (lines 718-730, keyed offisOverridden) would render without an "added" label while the action buttons (785-826, keyed offisAddedDep) would still switch to the full-coordinate edit/delete UI. Consider derivingisAddedDepfrom the sameisManuallyAddedhelper to keep the predicate single-sourced.Also applies to: 703-703
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx` around lines 309 - 313, Unify the manual-dependency predicate by updating isAddedDep to reuse isManuallyAdded instead of independently checking defaultVersion. Keep the badge and action-button behavior aligned for dependencies lacking defaultVersion but without manual-addition markers.
321-417: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick winNew driver handlers swallow RPC errors silently.
handleDriverEditSave,handleAddDriverSave, andhandleBrowseLocalJarwrap their RPC calls in try/finally with nocatch; on failure the saving indicator clears but nothing tells the user the save/add/browse failed (this mirrors the existing pattern for the unchanged driver handlers in this file). Since this PR already introduces a better pattern inProjectInformation/index.tsx'shandleReloadDependencies(catch +showNotification), consider applying the same here for the new handlers.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx` around lines 321 - 417, Update handleDriverEditSave, handleAddDriverSave, and handleBrowseLocalJar to catch RPC failures and notify the user using the existing showNotification pattern from handleReloadDependencies in ProjectInformation/index.tsx. Preserve the finally blocks so isSaving is always cleared, and ensure each failed operation reports an appropriate error instead of failing silently.
650-690: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winDuplicate coordinate-entry form (Add driver vs. added-dependency edit).
The "Add driver" form (650-690) and the "added" branch of the per-row edit UI (733-758) render nearly identical groupId/artifactId/version
VSCodeTextField+ Save/Cancel markup against two different state shapes (addDriverFormvsdriverEditState). Consider extracting a shared coordinate-form subcomponent to avoid maintaining two copies of this markup.Also applies to: 733-758
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx` around lines 650 - 690, The coordinate-entry markup is duplicated between the add-driver form and the added-dependency edit branch. Extract the shared Group ID, Artifact ID, Version fields and Save/Cancel controls into a reusable coordinate-form component, parameterized for the differing state values, change handlers, save action, and saving/validation state; replace both inline renderings while preserving their existing behavior.packages/mi-visualizer/src/views/Overview/ProjectInformation/index.tsx (1)
58-68: 🚀 Performance & Scalability | 🔵 Trivial | ⚡ Quick win
useEffectdependency array[props]triggers refetch on every re-render.
ProjectInformationPropsis an empty interface, sopropsis a fresh object reference each render; using it as the effect dependency meansfetchData()(an RPC call) re-runs whenever the parent re-renders, not just on mount.🐛 Proposed fix
fetchData(); - }, [props]); + }, []);🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-visualizer/src/views/Overview/ProjectInformation/index.tsx` around lines 58 - 68, Update the useEffect in ProjectInformation to use an empty dependency array instead of [props], so fetchData performs the project-details RPC request only on mount. Remove the unused props dependency while preserving the existing fetch and error-handling behavior.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@packages/mi-extension/src/test/e2e-playwright-tests/components/Overview.ts`:
- Around line 41-47: Update the guard in the Overview navigation flow to compare
iframeTitle against overviewTitle instead of MACHINE_VIEW.Overview, ensuring the
existing Overview iframe is skipped in both single- and multi-workspace modes.
Preserve the ManageDependencies exception and the subsequent switchToIFrame
target.
In `@packages/mi-visualizer/src/views/ManageDependencies/ConnectorAddPanel.tsx`:
- Around line 149-189: Handle errors in both handleDownloadConnector and
handleImportZip by adding catch logic around their sequential RPC/update flows,
reporting the failure through the panel’s existing user-facing error mechanism.
Preserve the current success sequence and finally cleanup, while ensuring RPC
failures are not silently swallowed and the panel remains usable after an error.
In `@packages/mi-visualizer/src/views/ManageDependencies/DependencyTab.tsx`:
- Around line 231-244: Wrap the sequential RPC and refresh operations in
handleDeleteDependency, handleEditDependency, addDependencyToProject, and
handleConfirmOverwrite with try/finally blocks. Set each loading flag before the
try block and reset it in finally so isUpdating or isAddingDependency is cleared
even when an awaited operation throws; preserve the existing success-path
operations and values.
- Around line 196-207: Update fetchInboundStoreConnectors to use an
AbortController with a short timeout when calling the inbound store endpoint,
pass its signal to fetch, and reliably clear the timeout after completion.
Preserve the existing response parsing, state update, and catch logging while
ensuring stalled requests are aborted.
- Around line 328-359: Update addDependencyToProject to handle failures from
reloadDependencies after updateDependenciesFromOverview persists the dependency:
catch the reload error, revert the saved dependency or invoke the existing
rollback behavior used by handleEditDependency, surface the failure through the
established error state/UI, and ensure isAddingDependency is reset. Preserve the
successful reload flow and add-mode transition.
---
Nitpick comments:
In `@packages/mi-extension/src/rpc-managers/mi-diagram/rpc-manager.ts`:
- Around line 4129-4144: Update extractMavenCoordinates to remove the inline
require("fast-xml-parser") and reuse the existing top-level XMLParser binding
when constructing the parser. Keep the current XML parsing options and Maven
coordinate extraction behavior unchanged.
In `@packages/mi-extension/src/rpc-managers/mi-visualizer/rpc-manager.ts`:
- Around line 150-151: Move the fast-xml-parser dependency import out of the
inline require near the visualizer RPC logic and place it with the file’s
top-level imports, preserving the existing XMLParser initialization options and
behavior.
In `@packages/mi-visualizer/src/views/ManageDependencies/ProjectAddPanel.tsx`:
- Around line 142-157: Update handleSelectPom to catch extraction failures from
extractMavenCoordinates after a file is selected, preventing rejected promises
from going unhandled and providing user feedback that the pom.xml could not be
parsed. Keep the existing prefill and mode updates only for successful
extraction.
In
`@packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx`:
- Around line 309-313: Unify the manual-dependency predicate by updating
isAddedDep to reuse isManuallyAdded instead of independently checking
defaultVersion. Keep the badge and action-button behavior aligned for
dependencies lacking defaultVersion but without manual-addition markers.
- Around line 321-417: Update handleDriverEditSave, handleAddDriverSave, and
handleBrowseLocalJar to catch RPC failures and notify the user using the
existing showNotification pattern from handleReloadDependencies in
ProjectInformation/index.tsx. Preserve the finally blocks so isSaving is always
cleared, and ensure each failed operation reports an appropriate error instead
of failing silently.
- Around line 650-690: The coordinate-entry markup is duplicated between the
add-driver form and the added-dependency edit branch. Extract the shared Group
ID, Artifact ID, Version fields and Save/Cancel controls into a reusable
coordinate-form component, parameterized for the differing state values, change
handlers, save action, and saving/validation state; replace both inline
renderings while preserving their existing behavior.
In `@packages/mi-visualizer/src/views/Overview/ProjectInformation/index.tsx`:
- Around line 58-68: Update the useEffect in ProjectInformation to use an empty
dependency array instead of [props], so fetchData performs the project-details
RPC request only on mount. Remove the unused props dependency while preserving
the existing fetch and error-handling behavior.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 9a22b9ed-e6ff-4643-81b4-0e77fa2dc8c4
📒 Files selected for processing (27)
packages/mi-core/src/rpc-types/mi-diagram/index.tspackages/mi-core/src/rpc-types/mi-diagram/rpc-type.tspackages/mi-core/src/rpc-types/mi-diagram/types.tspackages/mi-core/src/rpc-types/mi-visualizer/index.tspackages/mi-core/src/rpc-types/mi-visualizer/rpc-type.tspackages/mi-core/src/rpc-types/mi-visualizer/types.tspackages/mi-extension/src/rpc-managers/mi-diagram/rpc-handler.tspackages/mi-extension/src/rpc-managers/mi-diagram/rpc-manager.tspackages/mi-extension/src/rpc-managers/mi-visualizer/rpc-handler.tspackages/mi-extension/src/rpc-managers/mi-visualizer/rpc-manager.tspackages/mi-extension/src/test/e2e-playwright-tests/components/Overview.tspackages/mi-extension/src/test/e2e-playwright-tests/overviewPageTests/projectSettingPage.spec.tspackages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/ConnectorConfigService.javapackages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/DependencyOverride.javapackages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/UpdateConnectorDependencyRequest.javapackages/mi-language-server/org.eclipse.lemminx/src/test/java/org/eclipse/lemminx/synapse/connector/inbound/ConnectorInfoEndpointTest.javapackages/mi-rpc-client/src/rpc-clients/mi-diagram/rpc-client.tspackages/mi-rpc-client/src/rpc-clients/mi-visualizer/rpc-client.tspackages/mi-visualizer/src/MainPanel.tsxpackages/mi-visualizer/src/PopupPanel.tsxpackages/mi-visualizer/src/views/ManageDependencies/ConnectorAddPanel.tsxpackages/mi-visualizer/src/views/ManageDependencies/DependencyTab.tsxpackages/mi-visualizer/src/views/ManageDependencies/ProjectAddPanel.tsxpackages/mi-visualizer/src/views/ManageDependencies/index.tsxpackages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsxpackages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyManager.tsxpackages/mi-visualizer/src/views/Overview/ProjectInformation/index.tsx
💤 Files with no reviewable changes (2)
- packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyManager.tsx
- packages/mi-visualizer/src/PopupPanel.tsx
0696b2f to
a702ae0
Compare
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx (1)
306-313: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winConsolidate "added dependency" detection logic.
isManuallyAdded(Lines 309-310) requires!defaultVersionand one ofisOverridden/overriddenVersion/localPath, while the newisAddedDep(Line 703) only checks!dep.defaultVersion. If a driver entry ever lacksdefaultVersionwithout being overridden (e.g. a data anomaly from the backend), it would be treated as "added" for action-button branching (full coordinate edit/delete) even thoughisManuallyAddedwould classify it differently for the active/inactive split. ReusingisManuallyAdded(dep)forisAddedDepwould keep the two definitions in sync and avoid future divergence.♻️ Suggested consolidation
- const isAddedDep = !dep.defaultVersion; + const isAddedDep = isManuallyAdded(dep);Also applies to: 703-703
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx` around lines 306 - 313, Consolidate added-dependency detection by updating the isAddedDep logic near the action-button branching to reuse isManuallyAdded(dep) instead of checking only !dep.defaultVersion. Keep the active/inactive filtering based on the same isManuallyAdded predicate so both behaviors classify dependencies consistently.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@packages/mi-extension/src/rpc-managers/mi-diagram/rpc-manager.ts`:
- Around line 4129-4144: Update extractMavenCoordinates to validate pomPath
before reading, verify the file exists and is a safe readable target, and wrap
the synchronous read and XMLParser.parse operations in error handling. Return
the established error response or propagate a clear controlled error instead of
allowing filesystem or parsing exceptions to escape unhandled.
In
`@packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx`:
- Around line 700-703: Update the isEditing comparison in the dependency row
logic to also require driverEditState?.groupId to equal dep.groupId, while
preserving the existing connectionType and artifactId checks. This must
disambiguate manually added drivers that share an artifactId but have different
groupIds.
- Around line 321-357: Update handleDriverEditSave so that when coordsChanged is
true, it creates the new connector dependency override with
updateConnectorDependencyOverride before removing the previous coordinates via
resetConnectorDependencyOverrides. Preserve the existing validation,
saving-state cleanup, and unchanged-coordinate behavior.
---
Nitpick comments:
In
`@packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsx`:
- Around line 306-313: Consolidate added-dependency detection by updating the
isAddedDep logic near the action-button branching to reuse isManuallyAdded(dep)
instead of checking only !dep.defaultVersion. Keep the active/inactive filtering
based on the same isManuallyAdded predicate so both behaviors classify
dependencies consistently.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 88bd97f7-c1b7-424b-8d0a-0422b99e6cb7
📒 Files selected for processing (27)
packages/mi-core/src/rpc-types/mi-diagram/index.tspackages/mi-core/src/rpc-types/mi-diagram/rpc-type.tspackages/mi-core/src/rpc-types/mi-diagram/types.tspackages/mi-core/src/rpc-types/mi-visualizer/index.tspackages/mi-core/src/rpc-types/mi-visualizer/rpc-type.tspackages/mi-core/src/rpc-types/mi-visualizer/types.tspackages/mi-extension/src/rpc-managers/mi-diagram/rpc-handler.tspackages/mi-extension/src/rpc-managers/mi-diagram/rpc-manager.tspackages/mi-extension/src/rpc-managers/mi-visualizer/rpc-handler.tspackages/mi-extension/src/rpc-managers/mi-visualizer/rpc-manager.tspackages/mi-extension/src/test/e2e-playwright-tests/components/Overview.tspackages/mi-extension/src/test/e2e-playwright-tests/overviewPageTests/projectSettingPage.spec.tspackages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/ConnectorConfigService.javapackages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/DependencyOverride.javapackages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/UpdateConnectorDependencyRequest.javapackages/mi-language-server/org.eclipse.lemminx/src/test/java/org/eclipse/lemminx/synapse/connector/inbound/ConnectorInfoEndpointTest.javapackages/mi-rpc-client/src/rpc-clients/mi-diagram/rpc-client.tspackages/mi-rpc-client/src/rpc-clients/mi-visualizer/rpc-client.tspackages/mi-visualizer/src/MainPanel.tsxpackages/mi-visualizer/src/PopupPanel.tsxpackages/mi-visualizer/src/views/ManageDependencies/ConnectorAddPanel.tsxpackages/mi-visualizer/src/views/ManageDependencies/DependencyTab.tsxpackages/mi-visualizer/src/views/ManageDependencies/ProjectAddPanel.tsxpackages/mi-visualizer/src/views/ManageDependencies/index.tsxpackages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyItem.tsxpackages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyManager.tsxpackages/mi-visualizer/src/views/Overview/ProjectInformation/index.tsx
💤 Files with no reviewable changes (2)
- packages/mi-visualizer/src/views/Overview/ProjectInformation/DependencyManager.tsx
- packages/mi-visualizer/src/PopupPanel.tsx
🚧 Files skipped from review as they are similar to previous changes (21)
- packages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/DependencyOverride.java
- packages/mi-core/src/rpc-types/mi-visualizer/rpc-type.ts
- packages/mi-core/src/rpc-types/mi-diagram/rpc-type.ts
- packages/mi-extension/src/rpc-managers/mi-visualizer/rpc-handler.ts
- packages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/UpdateConnectorDependencyRequest.java
- packages/mi-core/src/rpc-types/mi-visualizer/index.ts
- packages/mi-core/src/rpc-types/mi-diagram/types.ts
- packages/mi-rpc-client/src/rpc-clients/mi-visualizer/rpc-client.ts
- packages/mi-core/src/rpc-types/mi-visualizer/types.ts
- packages/mi-core/src/rpc-types/mi-diagram/index.ts
- packages/mi-visualizer/src/MainPanel.tsx
- packages/mi-extension/src/rpc-managers/mi-diagram/rpc-handler.ts
- packages/mi-rpc-client/src/rpc-clients/mi-diagram/rpc-client.ts
- packages/mi-language-server/org.eclipse.lemminx/src/test/java/org/eclipse/lemminx/synapse/connector/inbound/ConnectorInfoEndpointTest.java
- packages/mi-visualizer/src/views/ManageDependencies/index.tsx
- packages/mi-language-server/org.eclipse.lemminx/src/main/java/org/eclipse/lemminx/customservice/synapse/parser/connectorConfig/ConnectorConfigService.java
- packages/mi-visualizer/src/views/Overview/ProjectInformation/index.tsx
- packages/mi-visualizer/src/views/ManageDependencies/ProjectAddPanel.tsx
- packages/mi-extension/src/test/e2e-playwright-tests/components/Overview.ts
- packages/mi-visualizer/src/views/ManageDependencies/ConnectorAddPanel.tsx
- packages/mi-visualizer/src/views/ManageDependencies/DependencyTab.tsx
a702ae0 to
a132e6d
Compare
| try { | ||
| const { XMLParser } = require("fast-xml-parser"); | ||
| const xmlData = fs.readFileSync(pomPath, "utf8"); | ||
| const parser = new XMLParser({ ignoreAttributes: false }); |
There was a problem hiding this comment.
Better to pass parseTagValue: false here. wdyt?
| localPath: '', | ||
| additionalDependency: true, | ||
| }); | ||
| if (coordsChanged) { |
There was a problem hiding this comment.
Better to first reset the override and add a new override to prevent duplicates if there is an error in the second step. WDYT?
a132e6d to
1e03953
Compare
This PR will address the below mentioned issues.
Screen.Recording.2026-07-15.at.13.27.49.mov