- Add
filterDeclaredConfigurationsto leave out entries by the configuration name they show, whichfilterConfigurationsnever sees when a declarable configuration is read through a resolvable classpath that extends it (#1068, #1069) - Report the platforms a build imports through its own platform projects, and name the platform projects each was imported through, so a build that centralizes its BOMs has the coordinate to bump named in the report that holds the modules (#1070, #1071, #1077)
- Report the configurations skipped when a
resolutionStrategythrows, where their dependencies were dropped at info level and the report still read as complete (#1073, #1074) - Name a report entry by the project's build tree path, so the projects of an included build no longer share the
:that every build answers for its own root (#1075, #1076) - Sync the remaining
isNonStablecopies with the pattern the README recommends, which accepts Guava's-jreand-androidreleases (#1067) - Release from the deploy workflow, from building the tag to publishing the release (#1072)
Important
- A project of an included build is named by its build tree path, so an entry reads
declared in :childwhere it readdeclared in root project. The JSON and XML reports carry the same paths inprojects. AbuildSrcbuild is named the same way when its task is run from the outer build, as:buildSrc:dependencyUpdates. - An entry can now carry an attribution line reading
imported by the platform :platforms, naming the platform projects the build imports the dependency through. A tool that parses the plain text report line by line has to skip it, as it already does for the other attribution lines. The JSON and XML reports carry the same paths inplatformProjects. - The plain text report carries a section listing the configurations that could not be inspected, after the dependency ones, where they were logged at info level and left out silently before. The JSON and XML reports carry them under
skipped, whichcountdoes not include, so a tool totalling the report has to leave it out too. - A custom
outputFormatterthat callscopyonDependencyOutdated,DependencyLatestorDependencyUnresolvedhas to be recompiled against this release. Each gained aplatformProjectsproperty, and a data class has exactly onecopy, so the one earlier releases shipped is gone. Their constructors are unchanged: a formatter that only reads the report, as the documented ones do, needs nothing.
Tip
An entry can show a configuration name that filterConfigurations never sees, such as a declarable configuration read through a resolvable classpath that extends it. Rejecting the classpath instead removes the build's own dependencies with it. filterDeclaredConfigurations rejects the entry by the name it shows, and leaves what the task checks alone.
Note
- A dependency that two builds of a composite declare at different versions is now reported as divergent. The attribution naming the projects behind each version was withheld while every entry carried the same project path, which in a composite was always
:. - A build using
checkConstraintsgains an entry for each platform its own platform projects import, where the modules those constraints hold were reported as up to date with nothing naming the coordinate to bump. - A configuration that declares a platform is resolved a second time, to find those imports, so a
beforeResolvehook on it runs once more than it did. A configuration declaring no platform resolves nothing extra.