Skip to content

Commit e87e47c

Browse files
authored
Merge branch 'main' into dependabot/maven/org.assertj-assertj-core-3.27.7
2 parents 2b83132 + d44b4ee commit e87e47c

29 files changed

Lines changed: 1090 additions & 226 deletions

File tree

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Bug Report
2+
description: File a bug report to help us improve libsql-java
3+
title: "[Bug]: "
4+
labels: ["bug"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for taking the time to fill out this bug report!
10+
- type: textarea
11+
id: description
12+
attributes:
13+
label: Bug Description
14+
description: A clear and concise description of what the bug is.
15+
validations:
16+
required: true
17+
- type: textarea
18+
id: reproduction
19+
attributes:
20+
label: Steps to Reproduce
21+
description: Steps or minimal code snippet to reproduce the behavior.
22+
placeholder: |
23+
1. Connect with url 'jdbc:libsql:...'
24+
2. Execute query '...'
25+
3. See error
26+
validations:
27+
required: true
28+
- type: textarea
29+
id: expected
30+
attributes:
31+
label: Expected Behavior
32+
description: A clear and concise description of what you expected to happen.
33+
validations:
34+
required: true
35+
- type: input
36+
id: environment
37+
attributes:
38+
label: Environment
39+
description: JDK version, OS, sqld version, etc.
40+
placeholder: "e.g. Amazon Corretto 26, Linux x86_64, sqld 0.24"
41+
validations:
42+
required: false
43+
- type: textarea
44+
id: additional-context
45+
attributes:
46+
label: Additional Context
47+
description: Add any other context, stack traces, or logs here.
48+
validations:
49+
required: false
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Feature Request
2+
description: Suggest an idea or enhancement for libsql-java
3+
title: "[Feature]: "
4+
labels: ["enhancement"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for suggesting a new feature or improvement!
10+
- type: textarea
11+
id: problem
12+
attributes:
13+
label: Problem Description
14+
description: Is your feature request related to a problem or missing capability?
15+
placeholder: "I'm always frustrated when..."
16+
validations:
17+
required: true
18+
- type: textarea
19+
id: solution
20+
attributes:
21+
label: Proposed Solution
22+
description: Describe the solution or feature you'd like to see.
23+
validations:
24+
required: true
25+
- type: textarea
26+
id: alternatives
27+
attributes:
28+
label: Alternatives Considered
29+
description: Describe any alternative solutions or features you've considered.
30+
validations:
31+
required: false
32+
- type: textarea
33+
id: additional-context
34+
attributes:
35+
label: Additional Context
36+
description: Add any other context, API design sketches, or references here.
37+
validations:
38+
required: false

‎.github/PULL_REQUEST_TEMPLATE.md‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
## Description
2+
3+
Please provide a summary of the change and which issue it fixes or relates to. Include relevant motivation and context.
4+
5+
Fixes #(issue)
6+
7+
## Type of Change
8+
9+
- [ ] Bug fix (non-breaking change fixing an issue)
10+
- [ ] New feature (non-breaking change adding functionality)
11+
- [ ] Breaking change (fix or feature causing existing functionality to not work as expected)
12+
- [ ] Documentation update
13+
- [ ] Refactoring / tooling / CI improvement
14+
15+
## Checklist
16+
17+
- [ ] My code follows the code style of this project (`./mvnw spotless:check`).
18+
- [ ] I have added tests that prove my fix is effective or that my feature works.
19+
- [ ] All new and existing tests passed (`./mvnw clean verify`).
20+
- [ ] I have updated documentation where appropriate.

‎.github/dependabot.yml‎

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "maven"
4+
directory: "/"
5+
schedule:
6+
interval: "weekly"
7+
open-pull-requests-limit: 10
8+
labels:
9+
- "dependencies"
10+
groups:
11+
minor-and-patch:
12+
patterns:
13+
- "*"
14+
update-types:
15+
- "minor"
16+
- "patch"
17+
18+
- package-ecosystem: "github-actions"
19+
directory: "/"
20+
schedule:
21+
interval: "weekly"
22+
open-pull-requests-limit: 10
23+
labels:
24+
- "dependencies"
25+
- "github-actions"
26+
groups:
27+
minor-and-patch:
28+
patterns:
29+
- "*"
30+
update-types:
31+
- "minor"
32+
- "patch"

‎.github/workflows/ci.yml‎

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ "main" ]
6+
7+
permissions:
8+
contents: read
9+
10+
jobs:
11+
build-and-test:
12+
name: Build & Test (Java ${{ matrix.java-version }})
13+
runs-on: ubuntu-latest
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
java-version: ['25', '26']
18+
steps:
19+
- name: Checkout code
20+
uses: actions/checkout@v7
21+
22+
- name: Set up Amazon Corretto ${{ matrix.java-version }}
23+
uses: actions/setup-java@v5
24+
with:
25+
distribution: 'corretto'
26+
java-version: ${{ matrix.java-version }}
27+
cache: 'maven'
28+
29+
- name: Check Code Formatting (Spotless)
30+
run: mvn --batch-mode spotless:check
31+
32+
- name: Run Tests and Verifications
33+
run: mvn --batch-mode clean verify

‎.github/workflows/codeql.yml‎

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: "CodeQL Advanced Security Analysis"
2+
3+
on:
4+
push:
5+
branches: [ "main" ]
6+
pull_request:
7+
branches: [ "main" ]
8+
schedule:
9+
- cron: '0 6 * * 1' # Every Monday at 06:00 UTC
10+
11+
permissions:
12+
contents: read
13+
security-events: write
14+
15+
jobs:
16+
analyze:
17+
name: Analyze Code with CodeQL
18+
runs-on: ubuntu-latest
19+
timeout-minutes: 360
20+
21+
steps:
22+
- name: Checkout repository
23+
uses: actions/checkout@v7
24+
25+
- name: Set up Java LTS (Corretto 25)
26+
uses: actions/setup-java@v5
27+
with:
28+
distribution: 'corretto'
29+
java-version: '25'
30+
cache: 'maven'
31+
32+
- name: Initialize CodeQL
33+
uses: github/codeql-action/init@v3
34+
with:
35+
languages: 'java-kotlin'
36+
build-mode: 'autobuild'
37+
38+
- name: Perform CodeQL Analysis
39+
uses: github/codeql-action/analyze@v3
40+
with:
41+
category: "/language:java-kotlin"

‎.github/workflows/pr.yml‎

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: PR Verification
2+
3+
on:
4+
pull_request:
5+
branches: [ "main" ]
6+
types: [opened, synchronize, reopened]
7+
8+
permissions:
9+
contents: read
10+
11+
jobs:
12+
verify:
13+
name: Build & Test (Java ${{ matrix.java-version }})
14+
runs-on: ubuntu-latest
15+
strategy:
16+
fail-fast: false
17+
matrix:
18+
java-version: ['25', '26']
19+
steps:
20+
- name: Checkout code
21+
uses: actions/checkout@v7
22+
23+
- name: Set up Amazon Corretto ${{ matrix.java-version }}
24+
uses: actions/setup-java@v5
25+
with:
26+
distribution: 'corretto'
27+
java-version: ${{ matrix.java-version }}
28+
cache: 'maven'
29+
30+
- name: Check Code Formatting (Spotless)
31+
run: mvn --batch-mode spotless:check
32+
33+
- name: Run Tests and Verifications
34+
run: mvn --batch-mode clean verify

‎.github/workflows/publish.yml‎

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: Publish to GitHub Packages
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
8+
permissions:
9+
contents: read
10+
packages: write
11+
id-token: write # Required for generating build provenance and cryptographic attestation
12+
attestations: write
13+
14+
jobs:
15+
publish:
16+
name: Build, Attest & Publish
17+
runs-on: ubuntu-latest
18+
steps:
19+
- name: Checkout code
20+
uses: actions/checkout@v7
21+
22+
- name: Set up Amazon Corretto 25
23+
uses: actions/setup-java@v5
24+
with:
25+
distribution: 'corretto'
26+
java-version: '25'
27+
cache: 'maven'
28+
29+
- name: Build & Publish to GitHub Packages
30+
env:
31+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
32+
run: |
33+
RELEASE_VERSION="${GITHUB_REF_NAME#v}"
34+
echo "Publishing release version ${RELEASE_VERSION}"
35+
mvn --batch-mode clean deploy \
36+
-Prelease \
37+
-Drevision="${RELEASE_VERSION}" \
38+
-DskipTests \
39+
-DaltDeploymentRepository=github::https://maven.pkg.github.com/${{ github.repository }}
40+
41+
- name: Generate Artifact Attestation (Provenance)
42+
uses: actions/attest-build-provenance@v4
43+
with:
44+
subject-path: '**/target/*.jar'

‎.gitignore‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@ target/
55
.vscode/
66
.DS_Store
77
*.log
8+
.flattened-pom.xml
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
wrapperVersion=3.3.4
22
distributionType=only-script
3-
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip
3+
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.16/apache-maven-3.9.16-bin.zip

0 commit comments

Comments
 (0)