Skip to content

Commit

Permalink
Merge branch 'prepare/3.40.0.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
Willena committed Dec 29, 2022
2 parents 079e6b0 + a2ca00d commit 5456b58
Show file tree
Hide file tree
Showing 33 changed files with 861 additions and 351 deletions.
58 changes: 29 additions & 29 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
strategy:
matrix:
os: [ ubuntu-latest ]
java: [ 8, 17, 18 ]
java: [ 11, 17, 18 ]
include:
- os: windows-latest
java: 18
Expand Down Expand Up @@ -78,34 +78,34 @@ jobs:
- name: Test
run: mvn --batch-mode --no-transfer-progress test

test_graalvm:
name: test ubuntu-latest jdk11 GraalVM native-image
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: DeLaGuardo/setup-graalvm@master
with:
# GraalVM version, no pattern syntax available atm
graalvm: '21.0.0.2'
# Java version, optional, defaults to 'java8'. Available options are 'java8' and 'java11'.
java: 'java11'
# Architecture flag, optional, defaults to 'amd64'. Available options are 'amd64' and 'aarch64'. Later is available only for linux runners.
arch: 'amd64'
- name: Install native-image component
run: |
gu install native-image
- name: Source versions from VERSION file
run: cat VERSION >> $GITHUB_ENV

- name: Display version
run: echo $sqliteMCVersion $version $artifactVersion

- name: Build natives
run: make jni-header native

- name: Test
run: mvn --batch-mode --no-transfer-progress -P native test
# test_graalvm:
# name: test ubuntu-latest jdk11 GraalVM native-image
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v3
# - uses: DeLaGuardo/setup-graalvm@master
# with:
# # GraalVM version, no pattern syntax available atm
# graalvm: '21.0.0.2'
# # Java version, optional, defaults to 'java8'. Available options are 'java8' and 'java11'.
# java: 'java11'
# # Architecture flag, optional, defaults to 'amd64'. Available options are 'amd64' and 'aarch64'. Later is available only for linux runners.
# arch: 'amd64'
# - name: Install native-image component
# run: |
# gu install native-image
#
# - name: Source versions from VERSION file
# run: cat VERSION >> $GITHUB_ENV
#
# - name: Display version
# run: echo $sqliteMCVersion $version $artifactVersion
#
# - name: Build natives
# run: make jni-header native
#
# - name: Test
# run: mvn --batch-mode --no-transfer-progress -P native test

test_multiarch:
name: test ${{ matrix.arch }} ${{ matrix.distro }} jdk${{ matrix.java }}
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,5 @@ atlassian-ide-plugin.xml
*.so
*.dll
*.jnilib

.fleet/settings.json
9 changes: 4 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# Development
## Prerequisites

- JDK 8
- JDK 11 is required to run the `spotless` plugin for code formatting
- JDK 11

## Commits

Expand All @@ -21,7 +20,7 @@ Since August 2022 the commit messages follow the [Conventional Commits](https://
# How to compile the native libraries
## Prerequisites

1. JDK 8
1. JDK 11
2. Perl
3. Maven
4. make
Expand Down Expand Up @@ -76,7 +75,7 @@ The project version can change by 2 means:
2. When triggering a release. This is done automatically through GitHub Actions.

## Trigger a release
A release can be triggered from GitHub Actions by [manually running](https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow) the **CI** workflow.
A release can be triggered from GitHub Actions by [manually running](https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow) the **CI** workflow and ticking the **Perform release** option.

## What happens when performing a release?

Expand All @@ -90,4 +89,4 @@ Multiple actions will happen in sequence, all orchestrated by the GitHub workflo

## Snapshot publishing

The CI workflow will also publish a new snapshot to [Sonatype's snapshots repository](https://oss.sonatype.org/content/repositories/snapshots/org/xerial/sqlite-jdbc/) whenever a change occurs.
The CI workflow will also publish a new snapshot to [Sonatype's snapshots repository](https://oss.sonatype.org/content/repositories/snapshots/org/xerial/sqlite-jdbc/) whenever a change occurs.
6 changes: 6 additions & 0 deletions USAGE.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,12 @@ You can use a specific version of the native library by setting the following JV
-Dorg.sqlite.lib.name=your-custom.dll
```

## Override detected architecture

If the detected architecture is incorrect for your system, thus loading the wrong native library, you can override the value setting the following JVM property:
```
-Dorg.sqlite.osinfo.architecture=arm
```

## Configure Connections
```java
Expand Down
6 changes: 3 additions & 3 deletions VERSION
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
version=3.39.4
artifactVersion=3.39.4.1-SNAPSHOT
sqliteMCVersion=1.5.3
version=3.40.0
artifactVersion=3.40.0.0-SNAPSHOT
sqliteMCVersion=1.5.4
15 changes: 13 additions & 2 deletions jreleaser.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
project:
versionPattern: CUSTOM
copyright: Taro L. Saito
release:
github:
discussionCategoryName: Announcements
tagName: '{{projectVersion}}'
changelog:
links: true
formatted: ALWAYS
format: '- {{commitShortHash}} {{commitTitle}}'
format: '- {{commitTitle}} ({{commitShortHash}})'
preset: 'conventional-commits'
skipMergeCommits: true
excludeLabels:
- 'chore'
- 'merge'
labelers:
- label: 'chore'
title: '[maven-release-plugin] prepare'
Expand All @@ -22,6 +23,16 @@ release:
labels:
- 'perf'
order: 25
hide:
uncategorized: true
issues:
enabled: true
comment: '🎉 This issue has been resolved in `{{tagName}}` ([Release Notes]({{releaseNotesUrl}}))'
applyMilestone: 'ALWAYS'
label:
name: 'released'
description: 'Issue has been released'
color: '#ededed'
files:
artifacts:
- path: 'target/{{projectName}}-{{projectVersion}}.jar'
98 changes: 80 additions & 18 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,16 @@
<modelVersion>4.0.0</modelVersion>
<groupId>io.github.willena</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.39.4.1-SNAPSHOT</version>
<version>3.40.0.0-SNAPSHOT</version>
<name>SQLite JDBC</name>
<description>SQLite JDBC library with encryption and authentication support</description>
<url>https://github.com/Willena/sqlite-jdbc-crypt</url>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<junit.version>5.7.2</junit.version>
<junit.version>5.9.1</junit.version>
<surefire.version>2.22.2</surefire.version>
<java9.sourceDirectory>${project.basedir}/src/main/java9</java9.sourceDirectory>
</properties>

<licenses>
Expand Down Expand Up @@ -90,17 +91,32 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-help-plugin</artifactId>
<version>3.2.0</version>
<version>3.3.0</version>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<version>3.10.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<release>8</release>
</configuration>
<executions>
<execution>
<id>java9-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<release>9</release>
<compileSourceRoots>
<compileSourceRoot>${java9.sourceDirectory}</compileSourceRoot>
</compileSourceRoots>
<multiReleaseOutput>true</multiReleaseOutput>
</configuration>
</execution>
</executions>
</plugin>

<plugin>
Expand All @@ -117,13 +133,13 @@

<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<version>3.3.0</version>
<configuration>
<!-- Pick the MANIFEST generated by the bundle plugin -->
<archive>
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
<manifestEntries>
<Automatic-Module-Name>io.github.willena.sqlitejdbc</Automatic-Module-Name>
<Multi-Release>true</Multi-Release>
</manifestEntries>
</archive>
</configuration>
Expand All @@ -145,7 +161,7 @@
<plugin>
<groupId>com.diffplug.spotless</groupId>
<artifactId>spotless-maven-plugin</artifactId>
<version>2.12.3</version>
<version>2.27.2</version>
<configuration>
<java>
<toggleOffOn/>
Expand All @@ -160,22 +176,52 @@
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.8</version>
<version>1.6.13</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.13.0</version>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>enforce-maven</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>3.2.5</version>
</requireMavenVersion>
<requireJavaVersion>
<version>11</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
</plugins>

<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.4.0</version>
<version>5.1.8</version>
<extensions>true</extensions>
<executions>
<execution>
Expand All @@ -193,9 +239,9 @@
</build>

<scm>
<connection>scm:git:git://github.com/Willena/sqlite-jdbc-crypt.git</connection>
<developerConnection>scm:git:ssh://[email protected]:Willena/sqlite-jdbc-crypt.git</developerConnection>
<url>https://github.com/Willena/sqlite-jdbc-crypt</url>
<connection>scm:git:git://github.com/xerial/sqlite-jdbc.git</connection>
<developerConnection>scm:git:[email protected]:xerial/sqlite-jdbc.git</developerConnection>
<url>https://github.com/xerial/sqlite-jdbc</url>
</scm>

<distributionManagement>
Expand Down Expand Up @@ -225,7 +271,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
<version>3.0.1</version>
<configuration>
<!-- Prevent gpg from using pinentry programs -->
<gpgArguments>
Expand All @@ -246,8 +292,9 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.2.0</version>
<version>3.4.1</version>
<configuration>
<sourcepath>src/main/java</sourcepath>
<additionalOptions>-Xdoclint:none</additionalOptions>
<additionalJOption>-Xdoclint:none</additionalJOption>
</configuration>
Expand Down Expand Up @@ -329,6 +376,8 @@
<include>**/RSMetaDataTest</include>
<!-- SegFault -->
<exclude>**/UDFCustomErrorTest.java</exclude>
<!-- Not needed -->
<exclude>**/architecture/*.java</exclude>
</excludes>
</configuration>
</plugin>
Expand Down Expand Up @@ -368,13 +417,26 @@
<dependency>
<groupId>org.junit-pioneer</groupId>
<artifactId>junit-pioneer</artifactId>
<version>1.4.2</version>
<version>1.7.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>3.12.4</version>
<version>4.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.tngtech.archunit</groupId>
<artifactId>archunit-junit5</artifactId>
<version>1.0.0</version>
<scope>test</scope>
</dependency>
<!-- Required by archunit -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.3.4</version>
<scope>test</scope>
</dependency>
</dependencies>
Expand Down
Loading

0 comments on commit 5456b58

Please sign in to comment.