Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MDEP-779 show class names used in undeclared dependencies #178

Conversation

josephw
Copy link
Contributor

@josephw josephw commented Dec 15, 2021

This adds the class names tracked in this PR to the UI, when -Dverbose is set:

[WARNING] Used undeclared dependencies found:
[WARNING]    xml-apis:xml-apis:jar:1.0.b2:compile
[WARNING]       class org.apache.xmlcommons.Version
[WARNING] Unused declared dependencies found:
[WARNING]    dom4j:dom4j:jar:1.6.1:compile

It also includes the small changes necessary for any upgrade of maven-dependency-analyzer to 1.12.

To allow this to be reviewed ahead of a release of maven-dependency-analyzer, the version is set to 1.12.0-SNAPSHOT; if approved, it'll presumably be 1.12.0. As mentioned, it ties the new output to -Dverbose; I think this is simpler than adding a new specific property, and less disruptive than enabling it by default.

Following this checklist to help us incorporate your
contribution quickly and easily:

  • Make sure there is a JIRA issue filed
    for the change (usually before you start working on it). Trivial changes like typos do not
    require a JIRA issue. Your pull request should address just this issue, without
    pulling in other changes.
  • Each commit in the pull request should have a meaningful subject line and body.
  • Format the pull request title like [MDEP-XXX] - Fixes bug in ApproximateQuantiles,
    where you replace MDEP-XXX with the appropriate JIRA issue. Best practice
    is to use the JIRA issue title in the pull request title and in the first line of the
    commit message.
  • Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
  • Run mvn clean verify to make sure basic checks pass. A more thorough check will
    be performed on your pull request automatically.
  • You have run the integration tests successfully (mvn -Prun-its clean verify).

If your pull request is about ~20 lines of code you don't need to sign an
Individual Contributor License Agreement if you are unsure
please ask on the developers list.

To make clear that you license your contribution under
the Apache License Version 2.0, January 2004
you have to acknowledge this by using the following check-box.

@slawekjaranowski
Copy link
Member

maven-dependency-analyzer was released, please rebase your PR.

@josephw josephw force-pushed the issue/MDEP-779-show-class-names-used-in-undeclared-dependencies branch from ea117ae to b99d6fd Compare January 30, 2022 11:54
@josephw
Copy link
Contributor Author

josephw commented Jan 30, 2022

maven-dependency-analyzer was released, please rebase your PR.

Great; I've rebased on top of 7b8ff3d.

@slawekjaranowski
Copy link
Member

We need some tests to confirm regressions in next releases.
Please add IT test with output verification.

@slawekjaranowski
Copy link
Member

There is test src/it/projects/analyze you can try to extend test verification

This fixture works for the analyzer test; copy it over.
Invoke dependency:analyze-only in verbose mode, and ensure that
the result includes the expected warnings.
Comment on lines +20 to +22
import org.codehaus.plexus.util.*;

String log = FileUtils.fileRead( new File( basedir, "build.log" ) );
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can use groovy script here ... and we needn't external dependencies.
look for build.log reading in another groovy scripts

Comment on lines +24 to +26
String expected = "[WARNING] Used undeclared dependencies found:\n"
+ "[WARNING] xml-apis:xml-apis:jar:1.0.b2:compile\n"
+ "[WARNING] class org.apache.xmlcommons.Version\n";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we must use system native end line ...

@josephw josephw force-pushed the issue/MDEP-779-show-class-names-used-in-undeclared-dependencies branch from e52a02b to 4122b8e Compare January 31, 2022 00:01
@slawekjaranowski slawekjaranowski merged commit a97d2a6 into apache:master Feb 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants