Skip to content

Nested classes is present in dump when outer class is annotated with nonPublicMarker  #91

Open
@ekursakov

Description

@ekursakov
apiValidation {
    nonPublicMarkers += ["com.example.InternalApi"]
}
package com.example

@InternalApi
class Example {
    class Nested {
        fun foo() {}
    }
}

produces following dump:

public final class com/example/Example$Nested {
	public fun <init> ()V
	public final fun foo ()V
}

In Kotlin, an opt-in annotations is propagated to an all class members, including a nested classes.
But binary-compatibility-validator filters only classes that are directly annotated with one of the annotations from nonPublicMarkers.

I think this behaviour should be aligned with opt-in annotations as they are often used as nonPublicMarkers.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions