From d626be512503da86d9172cf1eb7ea952edeea120 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2024 22:55:16 +0000 Subject: [PATCH 1/3] chore(internal): configure sonatype (#4) --- .github/workflows/create-releases.yml | 2 +- .github/workflows/publish-sonatype.yml | 2 +- build.gradle.kts | 12 +-- buildSrc/build.gradle.kts | 4 + .../src/main/kotlin/anthropic.java.gradle.kts | 14 +--- .../main/kotlin/anthropic.kotlin.gradle.kts | 1 + .../main/kotlin/anthropic.publish.gradle.kts | 83 ++++++++----------- 7 files changed, 47 insertions(+), 71 deletions(-) diff --git a/.github/workflows/create-releases.yml b/.github/workflows/create-releases.yml index e1d0d27..c02141f 100644 --- a/.github/workflows/create-releases.yml +++ b/.github/workflows/create-releases.yml @@ -42,7 +42,7 @@ jobs: export -- GPG_SIGNING_KEY_ID printenv -- GPG_SIGNING_KEY | gpg --batch --passphrase-fd 3 --import 3<<< "$GPG_SIGNING_PASSWORD" GPG_SIGNING_KEY_ID="$(gpg --with-colons --list-keys | awk -F : -- '/^pub:/ { getline; print "0x" substr($10, length($10) - 7) }')" - ./gradlew --parallel --no-daemon publish + ./gradlew publishAndReleaseToMavenCentral --stacktrace -PmavenCentralUsername="$SONATYPE_USERNAME" -PmavenCentralPassword="$SONATYPE_PASSWORD" env: SONATYPE_USERNAME: ${{ secrets.ANTHROPIC_SONATYPE_USERNAME || secrets.SONATYPE_USERNAME }} SONATYPE_PASSWORD: ${{ secrets.ANTHROPIC_SONATYPE_PASSWORD || secrets.SONATYPE_PASSWORD }} diff --git a/.github/workflows/publish-sonatype.yml b/.github/workflows/publish-sonatype.yml index 28b9c09..e2b1d57 100644 --- a/.github/workflows/publish-sonatype.yml +++ b/.github/workflows/publish-sonatype.yml @@ -29,7 +29,7 @@ jobs: export -- GPG_SIGNING_KEY_ID printenv -- GPG_SIGNING_KEY | gpg --batch --passphrase-fd 3 --import 3<<< "$GPG_SIGNING_PASSWORD" GPG_SIGNING_KEY_ID="$(gpg --with-colons --list-keys | awk -F : -- '/^pub:/ { getline; print "0x" substr($10, length($10) - 7) }')" - ./gradlew --parallel --no-daemon publish + ./gradlew publishAndReleaseToMavenCentral --stacktrace -PmavenCentralUsername="$SONATYPE_USERNAME" -PmavenCentralPassword="$SONATYPE_PASSWORD" env: SONATYPE_USERNAME: ${{ secrets.ANTHROPIC_SONATYPE_USERNAME || secrets.SONATYPE_USERNAME }} SONATYPE_PASSWORD: ${{ secrets.ANTHROPIC_SONATYPE_PASSWORD || secrets.SONATYPE_PASSWORD }} diff --git a/build.gradle.kts b/build.gradle.kts index b7bbefb..09b62d7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ plugins { - id("io.github.gradle-nexus.publish-plugin") version "1.1.0" + } allprojects { @@ -7,14 +7,4 @@ allprojects { version = "0.1.0-alpha.1" // x-release-please-version } -nexusPublishing { - repositories { - sonatype { - nexusUrl.set(uri("https://s01.oss.sonatype.org/service/local/")) - snapshotRepositoryUrl.set(uri("https://s01.oss.sonatype.org/content/repositories/snapshots/")) - username.set(System.getenv("SONATYPE_USERNAME")) - password.set(System.getenv("SONATYPE_PASSWORD")) - } - } -} diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index b88cd06..493cb32 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -1,12 +1,16 @@ plugins { `kotlin-dsl` + kotlin("jvm") version "1.9.22" + id("com.vanniktech.maven.publish") version "0.28.0" } repositories { gradlePluginPortal() + mavenCentral() } dependencies { implementation("com.diffplug.spotless:spotless-plugin-gradle:6.25.0") implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.23") + implementation("com.vanniktech:gradle-maven-publish-plugin:0.28.0") } diff --git a/buildSrc/src/main/kotlin/anthropic.java.gradle.kts b/buildSrc/src/main/kotlin/anthropic.java.gradle.kts index 1de5b8a..32a150e 100644 --- a/buildSrc/src/main/kotlin/anthropic.java.gradle.kts +++ b/buildSrc/src/main/kotlin/anthropic.java.gradle.kts @@ -1,6 +1,9 @@ import com.diffplug.gradle.spotless.SpotlessExtension import org.gradle.api.tasks.testing.logging.TestExceptionFormat -import java.util.Locale +import com.vanniktech.maven.publish.JavaLibrary +import com.vanniktech.maven.publish.JavadocJar +import com.vanniktech.maven.publish.MavenPublishBaseExtension +import com.vanniktech.maven.publish.SonatypeHost plugins { `java-library` @@ -11,11 +14,6 @@ repositories { mavenCentral() } -configure { - withJavadocJar() - withSourcesJar() -} - configure { java { importOrder() @@ -36,10 +34,6 @@ tasks.withType().configureEach { options.release.set(8) } -tasks.named("javadocJar") { - setZip64(true) -} - tasks.named("jar") { manifest { attributes(mapOf( diff --git a/buildSrc/src/main/kotlin/anthropic.kotlin.gradle.kts b/buildSrc/src/main/kotlin/anthropic.kotlin.gradle.kts index c541b26..990f0b2 100644 --- a/buildSrc/src/main/kotlin/anthropic.kotlin.gradle.kts +++ b/buildSrc/src/main/kotlin/anthropic.kotlin.gradle.kts @@ -1,5 +1,6 @@ import com.diffplug.gradle.spotless.SpotlessExtension import org.jetbrains.kotlin.gradle.tasks.KotlinCompile +import com.vanniktech.maven.publish.* plugins { id("anthropic.java") diff --git a/buildSrc/src/main/kotlin/anthropic.publish.gradle.kts b/buildSrc/src/main/kotlin/anthropic.publish.gradle.kts index 705ca82..538df23 100644 --- a/buildSrc/src/main/kotlin/anthropic.publish.gradle.kts +++ b/buildSrc/src/main/kotlin/anthropic.publish.gradle.kts @@ -3,65 +3,52 @@ import org.gradle.api.publish.maven.MavenPublication import org.gradle.kotlin.dsl.configure import org.gradle.kotlin.dsl.register import org.gradle.kotlin.dsl.get +import com.vanniktech.maven.publish.JavaLibrary +import com.vanniktech.maven.publish.JavadocJar +import com.vanniktech.maven.publish.MavenPublishBaseExtension +import com.vanniktech.maven.publish.SonatypeHost plugins { - `maven-publish` - `signing` + id("com.vanniktech.maven.publish") } -configure { - publications { - register("maven") { - from(components["java"]) +repositories { + gradlePluginPortal() + mavenCentral() +} - pom { - name.set("Anthropic API") - description.set("An SDK library for anthropic") - url.set("https://docs.anthropic.com/claude/reference/") +extra["signingInMemoryKey"] = System.getenv("GPG_SIGNING_KEY") +extra["signingInMemoryKeyId"] = System.getenv("GPG_SIGNING_KEY_ID") +extra["signingInMemoryKeyPassword"] = System.getenv("GPG_SIGNING_PASSWORD") - licenses { - license { - name.set("MIT") - } - } +configure { + signAllPublications() + publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL) - developers { - developer { - name.set("Anthropic") - email.set("support@anthropic.com") - } - } + this.coordinates(project.group.toString(), project.name, project.version.toString()) - scm { - connection.set("scm:git:git://github.com/anthropics/anthropic-sdk-java.git") - developerConnection.set("scm:git:git://github.com/anthropics/anthropic-sdk-java.git") - url.set("https://github.com/anthropics/anthropic-sdk-java") - } + pom { + name.set("Anthropic API") + description.set("An SDK library for anthropic") + url.set("https://docs.anthropic.com/claude/reference/") - versionMapping { - allVariants { - fromResolutionResult() - } - } + licenses { + license { + name.set("MIT") } } - } -} -signing { - val signingKeyId = System.getenv("GPG_SIGNING_KEY_ID")?.ifBlank { null } - val signingKey = System.getenv("GPG_SIGNING_KEY")?.ifBlank { null } - val signingPassword = System.getenv("GPG_SIGNING_PASSWORD")?.ifBlank { null } - if (signingKey != null && signingPassword != null) { - useInMemoryPgpKeys( - signingKeyId, - signingKey, - signingPassword, - ) - sign(publishing.publications["maven"]) - } -} + developers { + developer { + name.set("Anthropic") + email.set("support@anthropic.com") + } + } -tasks.named("publish") { - dependsOn(":closeAndReleaseSonatypeStagingRepository") + scm { + connection.set("scm:git:git://github.com/anthropics/anthropic-sdk-java.git") + developerConnection.set("scm:git:git://github.com/anthropics/anthropic-sdk-java.git") + url.set("https://github.com/anthropics/anthropic-sdk-java") + } + } } From bda246c273b0c2308f15919f2ef45ee85e915a78 Mon Sep 17 00:00:00 2001 From: Tomer Aberbach Date: Tue, 10 Dec 2024 11:17:43 -0500 Subject: [PATCH 2/3] docs: add note about alpha to readme --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 5839556..af2de80 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,10 @@ # Anthropic Java API Library +> [!NOTE] +> The Anthropic Java API Library is currently in _alpha_. +> +> There may be frequent breaking changes. + [![Maven Central](https://img.shields.io/maven-central/v/com.anthropic/anthropic-java)](https://central.sonatype.com/artifact/com.anthropic/anthropic-java/0.1.0-alpha.1) From 21a20bb9152819ca91d06517a453b9efe75a3bea Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2024 16:18:19 +0000 Subject: [PATCH 3/3] release: 0.1.0-alpha.2 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 13 +++++++++++++ README.md | 6 +++--- build.gradle.kts | 2 +- 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index ba6c348..f14b480 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.1.0-alpha.1" + ".": "0.1.0-alpha.2" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 340f75e..ec3052c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## 0.1.0-alpha.2 (2024-12-10) + +Full Changelog: [v0.1.0-alpha.1...v0.1.0-alpha.2](https://github.com/anthropics/anthropic-sdk-java/compare/v0.1.0-alpha.1...v0.1.0-alpha.2) + +### Chores + +* **internal:** configure sonatype ([#4](https://github.com/anthropics/anthropic-sdk-java/issues/4)) ([d626be5](https://github.com/anthropics/anthropic-sdk-java/commit/d626be512503da86d9172cf1eb7ea952edeea120)) + + +### Documentation + +* add note about alpha to readme ([bda246c](https://github.com/anthropics/anthropic-sdk-java/commit/bda246c273b0c2308f15919f2ef45ee85e915a78)) + ## 0.1.0-alpha.1 (2024-12-09) Full Changelog: [v0.0.1-alpha.0...v0.1.0-alpha.1](https://github.com/anthropics/anthropic-sdk-java/compare/v0.0.1-alpha.0...v0.1.0-alpha.1) diff --git a/README.md b/README.md index af2de80..21f704d 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ -[![Maven Central](https://img.shields.io/maven-central/v/com.anthropic/anthropic-java)](https://central.sonatype.com/artifact/com.anthropic/anthropic-java/0.1.0-alpha.1) +[![Maven Central](https://img.shields.io/maven-central/v/com.anthropic/anthropic-java)](https://central.sonatype.com/artifact/com.anthropic/anthropic-java/0.1.0-alpha.2) @@ -30,7 +30,7 @@ The REST API documentation can be foundĀ on [docs.anthropic.com](https://docs.an ```kotlin -implementation("com.anthropic:anthropic-java:0.1.0-alpha.1") +implementation("com.anthropic:anthropic-java:0.1.0-alpha.2") ``` #### Maven @@ -39,7 +39,7 @@ implementation("com.anthropic:anthropic-java:0.1.0-alpha.1") com.anthropic anthropic-java - 0.1.0-alpha.1 + 0.1.0-alpha.2 ``` diff --git a/build.gradle.kts b/build.gradle.kts index 09b62d7..2883933 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -4,7 +4,7 @@ plugins { allprojects { group = "com.anthropic" - version = "0.1.0-alpha.1" // x-release-please-version + version = "0.1.0-alpha.2" // x-release-please-version }