diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..1dedd8a --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,52 @@ +name: Build and Test + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +env: + MAVEN_OPTS: >- + -Dorg.slf4j.simpleLogger.showDateTime=true + -Djava.awt.headless=true + MAVEN_CLI_OPTS: >- + --batch-mode + --errors + --fail-at-end + --show-version + --no-transfer-progress + +jobs: + build: + runs-on: ubuntu-latest + container: + image: maven:3.9-eclipse-temurin-21 + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Compile + run: mvn ${{ env.MAVEN_CLI_OPTS }} -DskipTests=true clean compile + + - name: Run tests + run: mvn ${{ env.MAVEN_CLI_OPTS }} test + + - name: Package + run: mvn ${{ env.MAVEN_CLI_OPTS }} package -DskipTests=true + + - name: Upload JAR artifact + uses: actions/upload-artifact@v4 + with: + name: dd-plist-jar + path: target/dd-plist.jar + retention-days: 14 + + - name: Upload binary distribution + uses: actions/upload-artifact@v4 + with: + name: dd-plist-bin + path: target/dd-plist-bin.zip + retention-days: 14 + if-no-files-found: ignore \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index d46338b..022aa2f 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -18,11 +18,19 @@ + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 35c2dd0..54cbdaf 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -46,7 +46,7 @@ - + \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 093a1ed..0000000 --- a/.travis.yml +++ /dev/null @@ -1,7 +0,0 @@ -language: java -arch: - - amd64 -jdk: - - openjdk8 -install: true -script: mvn test diff --git a/README.md b/README.md index f1a8bc7..5f9c7a7 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # com.dd.plist - A Java library for working with property lists -[![Build Status](https://app.travis-ci.com/3breadt/dd-plist.svg?branch=master)](https://app.travis-ci.com/3breadt/dd-plist) +![Build Status](https://github.com/3breadt/dd-plist/actions/workflows/build.yml/badge.svg) This library enables your Java application to handle property lists of various formats. It is licensed under the terms of the MIT license. diff --git a/pom.xml b/pom.xml index 8fb5b6f..c7bb5dc 100644 --- a/pom.xml +++ b/pom.xml @@ -1,235 +1,224 @@ - - 4.0.0 - - org.sonatype.oss - oss-parent - 7 - - com.googlecode.plist - dd-plist - jar - 1.29 - dd-plist - http://www.github.com/3breadt/dd-plist - - This library enables Java applications to work with property lists in various formats. - Supported formats for reading and writing are OS X/iOS binary and XML property lists. - ASCII property lists are also supported. - The library also provides access to basic functions of NeXTSTEP/Cocoa classes like - NSDictionary, NSArray, etc. - - - - MIT License - http://opensource.org/licenses/mit - - - - - daniel.dreibrodt - Daniel Dreibrodt - daniel.dreibrodt@gmail.com - - owner - - - - - - Keith H. Randall - keithr@alum.mit.edu - - - Cornel Creanga - cornelcreanga@yahoo.com - - - - GitHub - https://github.com/3breadt/dd-plist/issues - - - scm:git:https://github.com/3breadt/dd-plist.git - scm:git:git@github.com:3breadt/dd-plist.git - https://github.com/3breadt/dd-plist/tree/master - - - UTF-8 - 1.8 - 1.8 - - - - ossrh - https://oss.sonatype.org/content/repositories/snapshots - - - - ${project.artifactId} - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - -Xlint:unchecked - -Xlint:deprecation - - - - default-testCompile - process-test-sources - - testCompile - - - ${maven.compiler.source} - ${maven.compiler.source} - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.1.1 - - target - javadoc - 8 - - - - make-javadoc - package - - javadoc - - - - - - org.apache.maven.plugins - maven-assembly-plugin - 3.2.0 - - - src/main/assembly/bin.xml - src/main/assembly/javadoc.xml - src/main/assembly/sources.xml - - true - - - - make-assembly - package - - single - - - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - - sign-artifacts - verify - - sign - - - - - - org.apache.maven.plugins - maven-jar-plugin - 3.2.0 - - - ${project.build.directory}/osgi/MANIFEST.MF - - - - - org.apache.felix - maven-bundle-plugin - 2.4.0 - true - - - true - - true - ${project.build.directory}/osgi - - ${project.name} - ${project.groupId}.${project.artifactId} - ${project.description} - com.dd.plist - ${project.url} - - - - - bundle-manifest - process-classes - - manifest - - - - - - org.moditect - moditect-maven-plugin - 1.1.0 - - - add-module-infos - package - - add-module-info - - - ${project.build.directory} - true - - src/main/moditect/module-info.java - - - - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - ossrh - https://oss.sonatype.org/ - true - - - - - - - org.junit.jupiter - junit-jupiter - 5.9.2 - test - - - org.hamcrest - hamcrest - 2.2 - test - - + + 4.0.0 + + org.sonatype.oss + oss-parent + 7 + + com.googlecode.plist + dd-plist + jar + 1.29 + dd-plist + http://www.github.com/3breadt/dd-plist + + This library enables Java applications to work with property lists in various formats. + Supported formats for reading and writing are OS X/iOS binary and XML property lists. + ASCII property lists are also supported. + The library also provides access to basic functions of NeXTSTEP/Cocoa classes like + NSDictionary, NSArray, etc. + + + + MIT License + http://opensource.org/licenses/mit + + + + + daniel.dreibrodt + Daniel Dreibrodt + daniel.dreibrodt@gmail.com + + owner + + + + + + Keith H. Randall + keithr@alum.mit.edu + + + Cornel Creanga + cornelcreanga@yahoo.com + + + + GitHub + https://github.com/3breadt/dd-plist/issues + + + scm:git:https://github.com/3breadt/dd-plist.git + scm:git:git@github.com:3breadt/dd-plist.git + https://github.com/3breadt/dd-plist/tree/master + + + UTF-8 + 8 + + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + + ${project.artifactId} + + + org.apache.maven.plugins + maven-compiler-plugin + 3.15.0 + + -Xlint:unchecked + -Xlint:deprecation + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.12.0 + + 8 + + + + make-javadoc + package + + javadoc + + + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.8.0 + + + src/main/assembly/bin.xml + src/main/assembly/javadoc.xml + src/main/assembly/sources.xml + + true + + + + make-assembly + package + + single + + + + + + org.apache.maven.plugins + maven-gpg-plugin + 3.2.8 + + + sign-artifacts + verify + + sign + + + + + + org.apache.maven.plugins + maven-jar-plugin + 3.5.0 + + + ${project.build.directory}/osgi/MANIFEST.MF + + + + + org.apache.felix + maven-bundle-plugin + 6.0.0 + true + + + true + + true + ${project.build.directory}/osgi + + ${project.name} + ${project.groupId}.${project.artifactId} + ${project.description} + com.dd.plist + ${project.url} + + + + + bundle-manifest + process-classes + + manifest + + + + + + org.moditect + moditect-maven-plugin + 1.3.0.Final + + + add-module-infos + package + + add-module-info + + + true + true + + + com.dd.plist + *; + java.xml + + + + + + + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.7.0 + true + + ossrh + https://oss.sonatype.org/ + true + + + + + + + org.junit.jupiter + junit-jupiter + 6.0.0 + test + + + org.hamcrest + hamcrest + 3.0 + test + + diff --git a/src/main/assembly/bin.xml b/src/main/assembly/bin.xml index f23d06b..c734c05 100644 --- a/src/main/assembly/bin.xml +++ b/src/main/assembly/bin.xml @@ -1,20 +1,20 @@ - bin - - zip - - false - - - target/dd-plist.jar - - dd-plist.jar - - + bin + + zip + + false + + + target/dd-plist.jar + . + dd-plist.jar + + - target/javadoc - javadoc - + target/javadoc + javadoc + \ No newline at end of file diff --git a/src/main/assembly/javadoc.xml b/src/main/assembly/javadoc.xml index 0030495..0d64a4e 100644 --- a/src/main/assembly/javadoc.xml +++ b/src/main/assembly/javadoc.xml @@ -6,7 +6,7 @@ false - target/javadoc + ${project.build.directory}/reports/apidocs javadoc diff --git a/src/main/assembly/sources.xml b/src/main/assembly/sources.xml index e3d695e..cf7d3fd 100644 --- a/src/main/assembly/sources.xml +++ b/src/main/assembly/sources.xml @@ -1,22 +1,26 @@ - sources - - jar - - false - - - pom.xml - - - - - src - src - - - test-files - test-files - - + sources + + jar + + false + + + pom.xml + + + + + src/main/java + src/main/java + + + src/test/java + src/test/java + + + test-files + test-files + + \ No newline at end of file diff --git a/src/main/moditect/module-info.java b/src/main/moditect/module-info.java deleted file mode 100644 index b6439f1..0000000 --- a/src/main/moditect/module-info.java +++ /dev/null @@ -1,5 +0,0 @@ -module dd.plist { - exports com.dd.plist; - - requires java.xml; -} \ No newline at end of file