From 7b297d5fb5043b6496f079d4899099e0099555de Mon Sep 17 00:00:00 2001 From: Paul Schaub Date: Tue, 1 Mar 2022 15:39:02 +0100 Subject: [PATCH] Apply changes to build scripts and ensure android API 10 compat for non-sqlite modules --- build.gradle | 27 +++++-------------- pgp-cert-d-java/build.gradle | 9 +++++++ .../pgp/cert_d/BaseDirectoryProvider.java | 26 ++++++++++++++---- pgp-certificate-store/build.gradle | 9 +++++++ settings.gradle | 6 ++--- version.gradle | 3 +-- 6 files changed, 50 insertions(+), 30 deletions(-) diff --git a/build.gradle b/build.gradle index 0631047..e414e12 100644 --- a/build.gradle +++ b/build.gradle @@ -37,18 +37,6 @@ allprojects { onlyIf { !sourceSets.main.allSource.files.isEmpty() } } - // For library modules, enable android api compatibility check - if (it.name != 'cli') { - // animalsniffer - apply plugin: 'ru.vyarus.animalsniffer' - dependencies { - signature "net.sf.androidscents.signature:android-api-level-${minAndroidSdk}:2.3.3_r2@signature" - } - animalsniffer { - sourceSets = [sourceSets.main] - } - } - // checkstyle checkstyle { toolVersion = '8.18' @@ -74,7 +62,6 @@ allprojects { slf4jVersion = '1.7.32' logbackVersion = '1.2.9' junitVersion = '5.8.2' - sopJavaVersion = '1.2.0' rootConfigDir = new File(rootDir, 'config') gitCommit = getGitCommit() isContinuousIntegrationEnvironment = Boolean.parseBoolean(System.getenv('CI')) @@ -145,15 +132,15 @@ subprojects { artifact javadocJar artifact testsJar pom { - name = 'PGPainless' - description = 'Simple to use OpenPGP API for Java based on Bouncycastle' - url = 'https://github.com/pgpainless/pgpainless' - inceptionYear = '2018' + name = 'Cert-D-Java' + description = 'Shared PGP Certificate Directory for Java' + url = 'https://github.com/pgpainless/cert-d-java' + inceptionYear = '2022' scm { - url = 'https://github.com/pgpainless/pgpainless' - connection = 'scm:https://github.com/pgpainless/pgpainless' - developerConnection = 'scm:git://github.com/pgpainless/pgpainless.git' + url = 'https://github.com/pgpainless/cert-d-java' + connection = 'scm:https://github.com/pgpainless/cert-d-java' + developerConnection = 'scm:git://github.com/pgpainless/cert-d-java.git' } licenses { diff --git a/pgp-cert-d-java/build.gradle b/pgp-cert-d-java/build.gradle index 3b78a4d..baca518 100644 --- a/pgp-cert-d-java/build.gradle +++ b/pgp-cert-d-java/build.gradle @@ -12,7 +12,12 @@ repositories { mavenCentral() } +apply plugin: 'ru.vyarus.animalsniffer' + dependencies { + // animal sniffer + signature "net.sf.androidscents.signature:android-api-level-${minAndroidSdk}:2.3.3_r2@signature" + testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion" testImplementation "org.junit.jupiter:junit-jupiter-params:$junitVersion" testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion" @@ -25,6 +30,10 @@ dependencies { api project(":pgp-certificate-store") } +animalsniffer { + sourceSets = [sourceSets.main] +} + test { useJUnitPlatform() } diff --git a/pgp-cert-d-java/src/main/java/pgp/cert_d/BaseDirectoryProvider.java b/pgp-cert-d-java/src/main/java/pgp/cert_d/BaseDirectoryProvider.java index bfa561f..0a24084 100644 --- a/pgp-cert-d-java/src/main/java/pgp/cert_d/BaseDirectoryProvider.java +++ b/pgp-cert-d-java/src/main/java/pgp/cert_d/BaseDirectoryProvider.java @@ -5,7 +5,6 @@ package pgp.cert_d; import java.io.File; -import java.nio.file.Paths; public class BaseDirectoryProvider { @@ -26,21 +25,38 @@ public class BaseDirectoryProvider { String STORE_NAME = "pgp.cert.d"; if (osName.contains("win")) { // %APPDATA%\Roaming\pgp.cert.d - return Paths.get(System.getenv("APPDATA"), "Roaming", STORE_NAME).toFile(); + String app_data = System.getenv("APPDATA"); + if (app_data == null) { + throw new AssertionError("Cannot determine APPDATA directory."); + } + File roaming = new File(app_data, "Roaming"); + return new File(roaming, STORE_NAME); } if (osName.contains("nux")) { // $XDG_DATA_HOME/pgp.cert.d String xdg_data_home = System.getenv("XDG_DATA_HOME"); if (xdg_data_home != null) { - return Paths.get(xdg_data_home, STORE_NAME).toFile(); + return new File(xdg_data_home, STORE_NAME); + } + String user_home = System.getProperty("user.home"); + if (user_home == null) { + throw new AssertionError("Cannot determine user.home directory."); } // $HOME/.local/share/pgp.cert.d - return Paths.get(System.getProperty("user.home"), ".local", "share", STORE_NAME).toFile(); + File local = new File(user_home, ".local"); + File share = new File(local, "share"); + return new File(share, STORE_NAME); } if (osName.contains("mac")) { - return Paths.get(System.getenv("HOME"), "Library", "Application Support", STORE_NAME).toFile(); + String home = System.getenv("HOME"); + if (home == null) { + throw new AssertionError("Cannot determine HOME directory."); + } + File library = new File(home, "Library"); + File applicationSupport = new File(library, "Application Support"); + return new File(applicationSupport, STORE_NAME); } throw new IllegalArgumentException("Unknown OS " + osName); diff --git a/pgp-certificate-store/build.gradle b/pgp-certificate-store/build.gradle index 599407c..3bafe81 100644 --- a/pgp-certificate-store/build.gradle +++ b/pgp-certificate-store/build.gradle @@ -12,7 +12,12 @@ repositories { mavenCentral() } +apply plugin: 'ru.vyarus.animalsniffer' + dependencies { + // animal sniffer + signature "net.sf.androidscents.signature:android-api-level-${minAndroidSdk}:2.3.3_r2@signature" + testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion" testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion" @@ -21,6 +26,10 @@ dependencies { testImplementation "ch.qos.logback:logback-classic:$logbackVersion" } +animalsniffer { + sourceSets = [sourceSets.main] +} + test { useJUnitPlatform() } diff --git a/settings.gradle b/settings.gradle index 9ff5a13..d7449ed 100644 --- a/settings.gradle +++ b/settings.gradle @@ -4,7 +4,7 @@ rootProject.name = 'cert-d-java' -include 'pgpainless-core', - 'pgpainless-sop', - 'pgpainless-cli' +include 'pgp-cert-d-java', + 'pgp-cert-d-java-jdbc-sqlite-lookup', + 'pgp-certificate-store' diff --git a/version.gradle b/version.gradle index 5ec456c..64b1606 100644 --- a/version.gradle +++ b/version.gradle @@ -4,10 +4,9 @@ allprojects { ext { - shortVersion = '1.1.2' + shortVersion = '0.1.0' isSnapshot = true minAndroidSdk = 10 javaSourceCompatibility = 1.8 - bouncyCastleVersion = '1.70' } }