Ivy CLI Detector: Transitive Dependency Support#1655
Open
zahidblackduck wants to merge 10 commits intomasterfrom
Open
Ivy CLI Detector: Transitive Dependency Support#1655zahidblackduck wants to merge 10 commits intomasterfrom
zahidblackduck wants to merge 10 commits intomasterfrom
Conversation
cpottsbd
reviewed
Mar 13, 2026
| If `ivy:dependencytree` is unavailable, [detect_product_short] will default to the Ivy Build Parse Detector, which extracts dependencies by parsing the `ivy.xml` file. | ||
|
|
||
| * Parses `ivy.xml` for direct dependency declarations only. Transitive dependencies are not resolved. | ||
| * Extracts the project's name and version from `build.xml`. If missing, it defers to values derived by git, from the project's directory, or defaults. |
Contributor
There was a problem hiding this comment.
Suggestion:
- Extracts the project name and version from
build.xml. If the project name or version is missing, the values are derived via Git from the project's directory or defaults.
cpottsbd
reviewed
Mar 13, 2026
| ### New features | ||
|
|
||
| * Support for the Conda Tree–based detector has been added. For more details, see [Conda Tree](packagemgrs/conda.md#conda-tree-detector). | ||
| * Ivy CLI Detector, leveraging the `ivy:dependencytree` Ant task to extract direct and transitive dependencies for Ant + Ivy projects. Falls back to the Ivy Build Parse Detector if the task is not present in `build.xml`. For further information, see [Ivy (Ant) support](packagemgrs/ivy.md). |
Contributor
There was a problem hiding this comment.
I'd suggest leaving this part out of the release notes as you have this information in the ivy.md page:
"Falls back to the Ivy Build Parse Detector if the task is not present in build.xml."
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
JIRA Ticket
IDETECT-4963
Description
This merge request introduces a new Ivy CLI Detector that resolves transitive dependencies for Apache Ant + Ivy projects by leveraging the
ivy:dependencytreetask. Previously, all the dependencies were reported as direct dependencies by the existingLOWaccuracy Ivy Build Parse Detector regardless they were transitive dependencies or not..The new detector executes
ant <targetName>to generate a complete dependency tree, then parses the hierarchical structure to identify direct dependencies, transitive dependencies, and parent-child relationships.Requirements
ivy:dependencytreetask inbuild.xmlImplementation
The detector automatically discovers the
ivy:dependencytreetarget inbuild.xmland executes it. If not found, detection falls back to the existingxmlparsing based Ivy Build Parse Detector (direct dependencies only).User Action Required
Add the
ivy:dependencytreetarget tobuild.xml:This is required to generate the dependency tree for parsing.
New Detect Properties
detect.ant.path=<path>- Specifies theantexecutable path (optional)