asciidoctor-gradle-plugin
                                
                                 asciidoctor-gradle-plugin copied to clipboard
                                
                                    asciidoctor-gradle-plugin copied to clipboard
                            
                            
                            
                        Avoid SelfResolvingDependency
SelfResolvingDependency has been deprecated in Gradle 8.x and will be removed in Gradle 9.0
BaseNpmSelfResolvingDependency implements this API, as well as Dependency, and SelfResolvingDependencyInternal.
Implementing Gradle interfaces like Dependency is asking for trouble, as these APIs are subject to change in Gradle major versions. Plus, implementing these APIs often require also implementing internal types.
BaseNpmSelfResolvingDependency will be impacted by multiple breaking changes in Gradle 9.0:
- https://docs.gradle.org/current/userguide/upgrading_version_8.html#deprecate_self_resolving_dependency
- https://docs.gradle.org/current/userguide/upgrading_version_8.html#deprecated_content_equals
This commit removes all references to SelfResolvingDependency, and all references to BaseNpmSelfResolvingDependency, which implements SelfResolvingDependency. Instead, it uses public Gradle APIs to create a FileCollectionDependency which lazily installs NPM dependencies.