Skip to content

Conversation

@Stefterv
Copy link
Collaborator

@Stefterv Stefterv commented Feb 3, 2026

Add a publish-gradle job to the release workflow to publish Processing libraries to the Gradle Plugin Portal.

This way future processing libraries can be created by adding

plugins{
    id("org.processing.library") version "4.5.3"
}

processing {
    library {
        version = 1
        prettyVersion = "1.0.0"

        authors = mapOf(
            "The Processing Foundation" to "https://processing.org"
        )
        url = "https://processing.org/"
        categories = listOf("file", "exporter", "dxf")

        sentence = "DXF export library for Processing"
        paragraph =
            "This library allows you to export your Processing drawings as DXF files, which can be opened in CAD applications."

    }
}

To any standard Java/Kotlin gradle project, this will then handle packaging the library. We can add more functionality to it over time and the only thing library authors will need to do is update the plugin version.

TODO:

  • Create Gradle Portal Account @SableRaf
  • Set repository secrets (GRADLE_PUBLISH_KEY, GRADLE_PUBLISH_SECRET) @SableRaf

After merge:

  • Update the processing gradle library template

Related:
#1347
#1233 (needs extra step added to this PR)

Add a publish-gradle job to the release workflow to publish Processing libraries to the Gradle Plugin Portal using gradle publish with required secrets and version/group env vars. Update gradle/plugins/library/build.gradle.kts to use the com.gradle.plugin-publish plugin, provide plugin metadata (website, vcsUrl, displayName, description, tags) and make the plugin id dynamic ("$group.library"). These changes enable automated publishing of the Gradle plugin with the metadata required by the portal.
@Stefterv Stefterv requested a review from SableRaf February 3, 2026 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant