From acf8545ced9c950c7b65b78d5f7b99d0407bd7a1 Mon Sep 17 00:00:00 2001 From: Andrzej Zabost <5508894+azabost@users.noreply.github.com> Date: Sun, 23 Apr 2023 01:45:15 +0200 Subject: [PATCH] Move to Maven Central --- .github/workflows/build.yml | 6 +- README.md | 10 ++-- build.gradle.kts | 24 +------- buildSrc/build.gradle.kts | 8 +-- buildSrc/src/main/kotlin/Config.kt | 6 +- .../src/main/kotlin/default-config.gradle.kts | 21 +++++++ .../kotlin/default-java-publish.gradle.kts | 55 +++++++++++++++++++ enums-serializer/build.gradle.kts | 6 +- enums/build.gradle.kts | 6 +- 9 files changed, 92 insertions(+), 50 deletions(-) create mode 100644 buildSrc/src/main/kotlin/default-config.gradle.kts diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 894bc90..5bc392b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,10 +1,6 @@ name: Build -on: - push: - branches: [ master ] - pull_request: - branches: [ master ] +on: [ push, pull_request ] jobs: build: diff --git a/README.md b/README.md index 550eda4..e0b28e3 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![](https://jitpack.io/v/bright/codified.svg)](https://jitpack.io/#bright/codified) +![build](https://github.com/bright/codified/actions/workflows/build.yml/badge.svg?branch=master) # codified # @@ -8,11 +8,11 @@ At the moment, the main application of this library is making it easier to encod ## Installation and usage ## -First, add JitPack to your repositories block in Gradle build script. +First, make sure Maven Central is in your repositories block in Gradle build script. ```kotlin repositories { - maven("https://jitpack.io") + mavenCentral() } ``` @@ -21,7 +21,7 @@ repositories { Add the following dependency in order to access `CodifiedEnum` class. ```kotlin -implementation("com.github.bright.codified:enums:1.6.21") +implementation("dev.bright.codified:enums:1.6.21.1") ``` `CodifiedEnum` is a sealed class which represents either "known" or "unknown" enum type depending on the `code` @@ -58,7 +58,7 @@ Add the following dependency in order to access `CodifiedEnum` serializer using [Kotlin serialization](https://github.com/Kotlin/kotlinx.serialization). ```kotlin -implementation("com.github.bright.codified:enums-serializer:1.6.21") +implementation("dev.bright.codified:enums-serializer:1.6.21.1") ``` Add `CodifiedSerializer` object for your enum class to handle both known and unknown enum types. diff --git a/build.gradle.kts b/build.gradle.kts index 88473e9..ee59037 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,31 +1,9 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { kotlin("jvm") version Versions.kotlin + id("default-config") id("default-java-publish") } -allprojects { - group = Config.group - version = Config.version - - repositories { - mavenCentral() - maven(Repositories.jitpack) - } - - tasks.withType { - kotlinOptions.jvmTarget = Config.jvmTarget - } - - tasks.withType { - useJUnitPlatform() - testLogging { - events("passed", "skipped", "failed") - } - } -} - dependencies { implementation(kotlin("stdlib")) } diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index a2cd31c..f63e031 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -1,8 +1,8 @@ +repositories { + gradlePluginPortal() +} + plugins { `kotlin-dsl` `kotlin-dsl-precompiled-script-plugins` } - -repositories { - jcenter() -} diff --git a/buildSrc/src/main/kotlin/Config.kt b/buildSrc/src/main/kotlin/Config.kt index e728926..bb10a64 100644 --- a/buildSrc/src/main/kotlin/Config.kt +++ b/buildSrc/src/main/kotlin/Config.kt @@ -1,5 +1,5 @@ object Config { - val group = "pl.brightinventions.codified" - val version = "1.5.2" - val jvmTarget = "1.8" + val group = "dev.bright.codified" + val version = "1.6.21.1" + val jvmToolchain = 8 } \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/default-config.gradle.kts b/buildSrc/src/main/kotlin/default-config.gradle.kts new file mode 100644 index 0000000..537e620 --- /dev/null +++ b/buildSrc/src/main/kotlin/default-config.gradle.kts @@ -0,0 +1,21 @@ +plugins { + `java-library` +} + +java { + toolchain { + languageVersion.set(JavaLanguageVersion.of(Config.jvmToolchain)) + } +} + +tasks.withType { + useJUnitPlatform() + testLogging { + events("passed", "skipped", "failed") + } +} + +repositories { + mavenCentral() + maven(Repositories.jitpack) +} \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/default-java-publish.gradle.kts b/buildSrc/src/main/kotlin/default-java-publish.gradle.kts index 670b597..656682f 100644 --- a/buildSrc/src/main/kotlin/default-java-publish.gradle.kts +++ b/buildSrc/src/main/kotlin/default-java-publish.gradle.kts @@ -1,11 +1,66 @@ plugins { + `java-library` `maven-publish` + signing +} + +group = Config.group +version = Config.version + +java { + withJavadocJar() + withSourcesJar() } publishing { publications { register("default") { from(components["java"]) + + pom { + name.set("Codified") + description.set("Facilitates codification of objects (mainly enums)") + url.set("https://github.com/bright/codified") + + licenses { + license { + name.set("MIT License") + url.set("http://www.opensource.org/licenses/mit-license.php") + } + } + + developers { + developer { + name.set("Andrzej Zabost") + email.set("andrzej.zabost@brightinventions.pl") + organization.set("Bright Inventions") + organizationUrl.set("https://brightinventions.pl/") + } + } + + scm { + connection.set("scm:git:git://github.com/bright/codified.git") + developerConnection.set("scm:git:ssh://github.com:bright/codified.git") + url.set("https://github.com/bright/codified/tree/master") + } + } + } + + repositories { + maven { + name = "MavenCentralStaging" + setUrl("https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/") + credentials(PasswordCredentials::class) + } + maven { + name = "MavenCentralSnapshots" + setUrl("https://s01.oss.sonatype.org/content/repositories/snapshots/") + credentials(PasswordCredentials::class) + } } } } + +signing { + sign(publishing.publications) +} \ No newline at end of file diff --git a/enums-serializer/build.gradle.kts b/enums-serializer/build.gradle.kts index 1b0f8bf..2a02f31 100644 --- a/enums-serializer/build.gradle.kts +++ b/enums-serializer/build.gradle.kts @@ -1,14 +1,10 @@ plugins { kotlin("jvm") kotlin("plugin.serialization") version Versions.kotlin + id("default-config") id("default-java-publish") } -java { - withJavadocJar() - withSourcesJar() -} - dependencies { implementation(kotlin("stdlib")) api(project(":enums")) diff --git a/enums/build.gradle.kts b/enums/build.gradle.kts index e6f2a3a..b285155 100644 --- a/enums/build.gradle.kts +++ b/enums/build.gradle.kts @@ -1,13 +1,9 @@ plugins { kotlin("jvm") + id("default-config") id("default-java-publish") } -java { - withJavadocJar() - withSourcesJar() -} - dependencies { implementation(kotlin("stdlib")) api(rootProject)