Constrain post-deployment file resolution to include only the source roots included in that deployment

Issue #2126 new
Scott Wells repo owner created an issue

Logging this based on a discussion with an end user who has a single-module project (which is all that's supported in non-IntelliJ IDEA IDEs anyway) with multiple source roots, one per configured package directory, who is trying to perform an incremental deployment on a single source root. The issue is that there are metadata files with the same name under multiple source roots, and when errors are reported, IC2 is finding all files with that name, even those not included in the original deployment.

The solution is to constrain resolution of file paths in reported errors to only those files that were included in the deployment.

UPDATE: There's a second required change here. Right now when IC2 invokes the CLI (assuming there are no substitution rules, etc.), it does so in-place using a package.xml file. Because there are multiple files with the same name, the CLI doesn't seem to know which to include in the deployment, though. IC2 would need to invoke the CLI differently or treat this situation the same way that it treats projects with substitution rules by copying the specific files into a temporary location and deploying them from there.

Comments (5)

  1. Scott Wells reporter

    Here's a build that's effectively 2.2.2.3 but with changes to filter resolved files by the operation's original source roots. You can install it using Settings / Preferences > Plugins > Install plugin from disk (under the gear drop-down menu). Allow the IDE to restart and let me know if it doesn't address the issues you've seen. If it doesn't, please get a new debug log and either attach it here or email it to me for review.

  2. Log in to comment