Kotlin / kotlinx-kover

Apache License 2.0
1.33k stars 52 forks source link

No `koverHtmlReport` task in submodule of multiplatform project #287

Closed e5l closed 1 year ago

e5l commented 1 year ago

Describe the bug Trying to add Kover in: https://github.com/ktorio/ktor and generate coverage for the ktor-io module, but there is no task available for doing so.

It looks like the plugin is not automatically applied to all submodules, as referenced in the documentation:

Could not determine the dependencies of task ':koverMergedHtmlReport'.
> Can't create Kover merge tasks: Kover plugin not applied in projects [:ktor-bom, :ktor-client, :ktor-http, :ktor-io, :ktor-java-modules-test, :ktor-network, :ktor-server, :ktor-shared, :ktor-test-dispatcher, :ktor-utils, :ktor-client:ktor-client-android, :ktor-client:ktor-client-apache, :ktor-client:ktor-client-cio, :ktor-client:ktor-client-core, :ktor-client:ktor-client-curl, :ktor-client:ktor-client-darwin, :ktor-client:ktor-client-darwin-legacy, :ktor-client:ktor-client-ios, :ktor-client:ktor-client-java, :ktor-client:ktor-client-jetty, :ktor-client:ktor-client-js, :ktor-client:ktor-client-mock, :ktor-client:ktor-client-okhttp, :ktor-client:ktor-client-plugins, :ktor-client:ktor-client-tests, :ktor-client:ktor-client-winhttp, :ktor-http:ktor-http-cio, :ktor-network:ktor-network-tls, :ktor-server:ktor-server-cio, :ktor-server:ktor-server-config-yaml, :ktor-server:ktor-server-core, :ktor-server:ktor-server-host-common, :ktor-server:ktor-server-jetty, :ktor-server:ktor-server-netty, :ktor-server:ktor-server-plugins, :ktor-server:ktor-server-servlet, :ktor-server:ktor-server-test-host, :ktor-server:ktor-server-test-suites, :ktor-server:ktor-server-tests, :ktor-server:ktor-server-tomcat, :ktor-shared:ktor-events, :ktor-shared:ktor-resources, :ktor-shared:ktor-serialization, :ktor-shared:ktor-websocket-serialization, :ktor-client:ktor-client-plugins:ktor-client-auth, :ktor-client:ktor-client-plugins:ktor-client-content-negotiation, :ktor-client:ktor-client-plugins:ktor-client-encoding, :ktor-client:ktor-client-plugins:ktor-client-json, :ktor-client:ktor-client-plugins:ktor-client-logging, :ktor-client:ktor-client-plugins:ktor-client-resources, :ktor-client:ktor-client-plugins:ktor-client-websockets, :ktor-network:ktor-network-tls:ktor-network-tls-certificates, :ktor-server:ktor-server-jetty:ktor-server-jetty-test-http2, :ktor-server:ktor-server-plugins:ktor-server-auth, :ktor-server:ktor-server-plugins:ktor-server-auth-jwt, :ktor-server:ktor-server-plugins:ktor-server-auth-ldap, :ktor-server:ktor-server-plugins:ktor-server-auto-head-response, :ktor-server:ktor-server-plugins:ktor-server-caching-headers, :ktor-server:ktor-server-plugins:ktor-server-call-id, :ktor-server:ktor-server-plugins:ktor-server-call-logging, :ktor-server:ktor-server-plugins:ktor-server-compression, :ktor-server:ktor-server-plugins:ktor-server-conditional-headers, :ktor-server:ktor-server-plugins:ktor-server-content-negotiation, :ktor-server:ktor-server-plugins:ktor-server-cors, :ktor-server:ktor-server-plugins:ktor-server-data-conversion, :ktor-server:ktor-server-plugins:ktor-server-default-headers, :ktor-server:ktor-server-plugins:ktor-server-double-receive, :ktor-server:ktor-server-plugins:ktor-server-forwarded-header, :ktor-server:ktor-server-plugins:ktor-server-freemarker, :ktor-server:ktor-server-plugins:ktor-server-hsts, :ktor-server:ktor-server-plugins:ktor-server-html-builder, :ktor-server:ktor-server-plugins:ktor-server-http-redirect, :ktor-server:ktor-server-plugins:ktor-server-jte, :ktor-server:ktor-server-plugins:ktor-server-locations, :ktor-server:ktor-server-plugins:ktor-server-method-override, :ktor-server:ktor-server-plugins:ktor-server-metrics, :ktor-server:ktor-server-plugins:ktor-server-metrics-micrometer, :ktor-server:ktor-server-plugins:ktor-server-mustache, :ktor-server:ktor-server-plugins:ktor-server-openapi, :ktor-server:ktor-server-plugins:ktor-server-partial-content, :ktor-server:ktor-server-plugins:ktor-server-pebble, :ktor-server:ktor-server-plugins:ktor-server-rate-limit, :ktor-server:ktor-server-plugins:ktor-server-request-validation, :ktor-server:ktor-server-plugins:ktor-server-resources, :ktor-server:ktor-server-plugins:ktor-server-sessions, :ktor-server:ktor-server-plugins:ktor-server-status-pages, :ktor-server:ktor-server-plugins:ktor-server-swagger, :ktor-server:ktor-server-plugins:ktor-server-thymeleaf, :ktor-server:ktor-server-plugins:ktor-server-velocity, :ktor-server:ktor-server-plugins:ktor-server-webjars, :ktor-server:ktor-server-plugins:ktor-server-websockets, :ktor-shared:ktor-serialization:ktor-serialization-gson, :ktor-shared:ktor-serialization:ktor-serialization-jackson, :ktor-shared:ktor-serialization:ktor-serialization-kotlinx, :ktor-client:ktor-client-plugins:ktor-client-content-negotiation:ktor-client-content-negotiation-tests, :ktor-client:ktor-client-plugins:ktor-client-json:ktor-client-gson, :ktor-client:ktor-client-plugins:ktor-client-json:ktor-client-jackson, :ktor-client:ktor-client-plugins:ktor-client-json:ktor-client-json-tests, :ktor-client:ktor-client-plugins:ktor-client-json:ktor-client-serialization, :ktor-shared:ktor-serialization:ktor-serialization-kotlinx:ktor-serialization-kotlinx-cbor, :ktor-shared:ktor-serialization:ktor-serialization-kotlinx:ktor-serialization-kotlinx-json, :ktor-shared:ktor-serialization:ktor-serialization-kotlinx:ktor-serialization-kotlinx-protobuf, :ktor-shared:ktor-serialization:ktor-serialization-kotlinx:ktor-serialization-kotlinx-tests, :ktor-shared:ktor-serialization:ktor-serialization-kotlinx:ktor-serialization-kotlinx-xml]
shanshin commented 1 year ago

Not a plugin bug.

It looks like the plugin is not automatically applied to all subprojects, as referenced in the documentation

the current documentation does not specify that the plugin is internally applied for subprojects.

Automatic application in subprojects has been removed for a gradual transition to Gradle project isolation.

Documentation needs to be improved #291