Skip to content
This repository was archived by the owner on Mar 2, 2026. It is now read-only.
This repository was archived by the owner on Mar 2, 2026. It is now read-only.

Publishing artifacts without generated CF annotations #268

@Meijuh

Description

@Meijuh

When publishing library artifacts (that have been built with CF support ) they include generated CF annotations, sometimes a lot. For example I have a library with a public API method, that has the following generated annotations:

@Pure
public @UnknownKeyFor @NonNull @Initialized @SubstringIndexUnknown @UnknownVal @SearchIndexUnknown @SameLenUnknown @LessThanUnknown @LowerBoundUnknown @UpperBoundUnknown @UnknownThis @CalledMethods({})
Integer getPeriodicity() {
    return 1;
}

Even when developing apps that require this library that have CF enabled, this clutters code hinting a lot in IDEs. So my questions:

  1. Why does this Gradle plugin export code with generated annotations? Is it necessary for proving correctness in applications that depend on such libraries, or is it only to speed up the verification?
  2. Is it possible to publish artifacts without CF generated annotations? Also, if we do, what are the consequences?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions