Skip to content

Commit d0723be

Browse files
authored
Prepare for next major release by merging develop (5.3.0-SNAPSHOT) into the main branch (#5636)
2 parents bb9eb67 + 3bbede6 commit d0723be

511 files changed

Lines changed: 46779 additions & 1640 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/develop-status.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
- name: Build
3030
run: mvn -B -U clean install -Pquick,\!formatting
3131
- name: Verify
32-
run: mvn -B install -P-skipSlowTests -Dmaven.javadoc.skip=true
32+
run: ./scripts/ci/run-with-thread-dump.sh mvn -B install -P-skipSlowTests -Dmaven.javadoc.skip=true
3333
- name: Publish Test Report
3434
if: failure()
3535
uses: scacap/action-surefire-report@v1

.github/workflows/main-status.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
- name: Build
3030
run: mvn -B -U -T 2C clean install -DskipTests
3131
- name: Run all tests
32-
run: mvn -B install -P-skipSlowTests -Dmaven.javadoc.skip=true
32+
run: ./scripts/ci/run-with-thread-dump.sh mvn -B install -P-skipSlowTests -Dmaven.javadoc.skip=true
3333
- name: Publish Test Report
3434
if: failure()
3535
uses: scacap/action-surefire-report@v1

.github/workflows/pr-verify.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ jobs:
6262
- name: Build
6363
run: mvn --quiet clean && mvn -B --quiet -T 2C install -Pquick
6464
- name: Test
65-
run: mvn -B test -DskipITs -P-formatting -Dmaven.javadoc.skip -Djapicmp.skip -Denforcer.skip -Danimal.sniffer.skip
65+
run: ./scripts/ci/run-with-thread-dump.sh mvn -B test -DskipITs -P-formatting -Dmaven.javadoc.skip -Djapicmp.skip -Denforcer.skip -Danimal.sniffer.skip
6666
- name: Publish Test Report
6767
if: failure()
6868
uses: scacap/action-surefire-report@v1.9.0
@@ -84,7 +84,7 @@ jobs:
8484
- name: Build
8585
run: mvn --quiet clean && mvn -B --quiet -T 2C install -Pquick
8686
- name: Verify
87-
run: mvn -B verify -PskipUnitTests,-formatting -Dmaven.javadoc.skip -Denforcer.skip -Danimal.sniffer.skip
87+
run: ./scripts/ci/run-with-thread-dump.sh mvn -B verify -PskipUnitTests,-formatting -Dmaven.javadoc.skip -Denforcer.skip -Danimal.sniffer.skip
8888
- name: Publish Test Report
8989
if: failure()
9090
uses: scacap/action-surefire-report@v1.9.0
@@ -105,7 +105,7 @@ jobs:
105105
- name: Build
106106
run: mvn --quiet clean && mvn -B --quiet -T 2C install -Pquick
107107
- name: Verify
108-
run: mvn -B verify -PslowTestsOnly,-skipSlowTests,-formatting -Dmaven.javadoc.skip -Djapicmp.skip -Denforcer.skip -Danimal.sniffer.skip
108+
run: ./scripts/ci/run-with-thread-dump.sh mvn -B verify -PslowTestsOnly,-skipSlowTests,-formatting -Dmaven.javadoc.skip -Djapicmp.skip -Denforcer.skip -Danimal.sniffer.skip
109109
- name: Publish Test Report
110110
if: failure()
111111
uses: scacap/action-surefire-report@v1.9.0
@@ -148,12 +148,11 @@ jobs:
148148
node-version: 18
149149
- name: Run end-to-end tests of RDF4J Server and Workbench
150150
working-directory: ./e2e
151-
run: ./run.sh
151+
run: ../scripts/ci/run-with-thread-dump.sh ./run.sh
152152

153153
copyright-check:
154154
runs-on: ubuntu-latest
155155
steps:
156156
- uses: actions/checkout@v4
157157
- name: check copyright header present
158158
run: scripts/checkCopyrightPresent.sh
159-

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
**/.classpath
66
.settings
77
**/.settings
8-
bin
9-
**/bin
108
**/.factorypath
119

1210
# Eclipse Plug-In Settings
@@ -56,3 +54,4 @@ e2e/test-results
5654
/tools/server/.lwjgl/
5755
.m2_repo/
5856
.serena/
57+
.vscode

AGENTS.md

Lines changed: 6 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -126,48 +126,6 @@ When writing complex features or significant refactors, use an ExecPlan (as desc
126126

127127
When writing complex features or significant refactors, use an ExecPlan (as described in PLANS.md) from design to implementation.
128128

129-
## PIOSEE Decision Model (Adopted)
130-
131-
Use this as a compact, repeatable loop for anything from a one‑line bug fix to a multi‑quarter program.
132-
133-
### P — **Problem**
134-
135-
**Goal:** State the core problem and what “good” looks like.
136-
**Ask:** Who’s affected? What outcome is required? What happens if we do nothing?
137-
**Tip:** Include measurable target(s): error rate ↓, latency p95 ↓, revenue ↑, risk ↓.
138-
139-
### I — **Information**
140-
141-
**Goal:** Gather only the facts needed to move.
142-
**Ask:** What do logs/metrics/user feedback say? What constraints (security, compliance, budget, SLA/SLO)? What assumptions must we test?
143-
144-
### O — **Options**
145-
146-
**Goal:** Generate viable ways forward, including “do nothing.”
147-
**Ask:** What are 2–4 distinct approaches (patch, redesign, buy vs. build, defer)? What risks, costs, and second‑order effects?
148-
**Tip:** Check guardrails: reliability, security/privacy, accessibility, performance, operability, unit economics.
149-
150-
### S — **Select**
151-
152-
**Goal:** Decide deliberately and document why.
153-
**Ask:** Which option best meets the success criteria under constraints? Who is the decision owner? What’s the fallback/abort condition?
154-
**Tip:** Use lightweight scoring (e.g., Impact×Confidence÷Effort) to avoid bike‑shedding.
155-
156-
### E — **Execute**
157-
158-
**Goal:** Ship safely and visibly.
159-
**Ask:** What is the smallest safe slice? How do we de‑risk (feature flag, canary, dark launch, rollback)? Who owns what?
160-
**Checklist:** Traces/logs/alerts; security & privacy checks; docs & changelog; incident plan if relevant.
161-
162-
### E — **Evaluate**
163-
164-
**Goal:** Verify outcomes and learn.
165-
**Ask:** Did metrics hit targets? Any regressions or side effects? What will we keep/change next loop?
166-
**Output:** Post‑release review (or retro), decision log entry, follow‑ups (tickets), debt captured.
167-
**Tip:** If outcomes miss, either **iterate** (new Options) or **reframe** (back to Problem).
168-
169-
---
170-
171129
### Benchmarking workflow (repository-wide)
172130

173131
The `scripts/run-single-benchmark.sh` helper is the supported path for spot-checking performance optimisations. It builds the chosen module with the `benchmarks` profile, constrains the benchmark selection to a single `@Benchmark` method, and when `--enable-jfr` is supplied it enforces repeatable profiling defaults (no warmup, ten 10-second measurements, one fork) while clearly reporting the destination of the generated JFR recording. Lean on this script whenever you need a reproducible measurement harness.
@@ -361,6 +319,8 @@ Why this is mandatory
361319
* `mvn -T 1C -o -Dmaven.repo.local=.m2_repo -Pquick clean install | tail -200`
362320
3. **Format (Java, imports, XML)**
363321
* `mvn -o -Dmaven.repo.local=.m2_repo -q -T 2C formatter:format impsort:sort xml-format:xml-format`
322+
* Ensure every touched Java file has the correct agent signature comment (`// Some portions generated by Codex` for Codex, `// Some portions generated by Co-Pilot` for GitHub Co-Pilot) inserted immediately below the header before formatting.
323+
* Before invoking the formatter, `cd scripts && ./checkCopyrightPresent.sh` (or use `pushd/popd`) to ensure every new or edited source file still carries the required header; fix any findings before formatting.
364324
4. **Targeted tests (tight loops)**
365325
* Module: `mvn -o -Dmaven.repo.local=.m2_repo -pl <module> verify | tail -500`
366326
* Class: `mvn -o -Dmaven.repo.local=.m2_repo -pl <module> -Dtest=ClassName verify | tail -500`
@@ -464,7 +424,6 @@ When writing complex features or significant refactors, use an ExecPlan (as desc
464424
465425
## Working Loop
466426
467-
* **PIOSEE first:** restate Problem, gather Information, list Options; then Select, Execute, Evaluate.
468427
* **Plan:** small, verifiable steps; keep one `in_progress`, or follow PLANS.md (ExecPlans)
469428
* **Change:** minimal, surgical edits; keep style/structure consistent.
470429
* **Format:** `mvn -o -Dmaven.repo.local=.m2_repo -q -T 2C formatter:format impsort:sort xml-format:xml-format`
@@ -570,6 +529,10 @@ Hint: get the current year with `date +%Y`.
570529
571530
Do **not** modify existing headers’ years.
572531
532+
Right below the header block, insert an agent signature comment: Codex agents must add `// Some portions generated by Codex`, and GitHub Co-Pilot agents must add `// Some portions generated by Co-Pilot`. Align the wording with whatever agent name you are currently operating under.
533+
534+
Immediately after creating any new Java source file, add the signature comment (per rule above) and run `cd scripts && ./checkCopyrightPresent.sh` (or an equivalent pushd/popd invocation) so you catch missing copyright/SPDX lines before moving on.
535+
573536
---
574537
575538
## Pre‑Commit Checklist
@@ -651,7 +614,6 @@ Do **not** modify existing headers’ years.
651614
* **Files touched:** list file paths.
652615
* **Commands run:** key build/test commands.
653616
* **Verification:** which tests passed, where you checked reports.
654-
* **PIOSEE trace (concise):** P/I/O summary, selected option/routine, key evaluate outcomes.
655617
* **Evidence:**
656618
*Routine A:* failing output (pre‑fix) and passing output (post‑fix).
657619
*Routine B:* pre‑ and post‑green snippets from the **same selection** + **Hit Proof**.

assembly-descriptors/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>org.eclipse.rdf4j</groupId>
66
<artifactId>rdf4j</artifactId>
7-
<version>5.2.3-SNAPSHOT</version>
7+
<version>5.3.0-SNAPSHOT</version>
88
</parent>
99
<artifactId>rdf4j-assembly-descriptors</artifactId>
1010
<name>RDF4J: Assembly Descriptors</name>

assembly/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>org.eclipse.rdf4j</groupId>
66
<artifactId>rdf4j</artifactId>
7-
<version>5.2.3-SNAPSHOT</version>
7+
<version>5.3.0-SNAPSHOT</version>
88
</parent>
99
<artifactId>rdf4j-assembly</artifactId>
1010
<packaging>pom</packaging>

bom/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>org.eclipse.rdf4j</groupId>
66
<artifactId>rdf4j</artifactId>
7-
<version>5.2.3-SNAPSHOT</version>
7+
<version>5.3.0-SNAPSHOT</version>
88
</parent>
99
<artifactId>rdf4j-bom</artifactId>
1010
<packaging>pom</packaging>

compliance/elasticsearch/pom.xml

Lines changed: 31 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,31 @@
44
<parent>
55
<groupId>org.eclipse.rdf4j</groupId>
66
<artifactId>rdf4j-compliance</artifactId>
7-
<version>5.2.3-SNAPSHOT</version>
7+
<version>5.3.0-SNAPSHOT</version>
88
</parent>
99
<artifactId>rdf4j-elasticsearch-compliance</artifactId>
1010
<name>RDF4J: Elasticsearch Sail Tests</name>
1111
<description>Tests for Elasticsearch.</description>
1212
<!-- disable the Java security manager for elasticsearch tests -->
1313
<build>
1414
<plugins>
15+
<plugin>
16+
<groupId>org.apache.maven.plugins</groupId>
17+
<artifactId>maven-surefire-plugin</artifactId>
18+
<configuration>
19+
<systemPropertyVariables>
20+
<elasticsearch.docker.version>${elasticsearch.version}</elasticsearch.docker.version>
21+
</systemPropertyVariables>
22+
</configuration>
23+
</plugin>
1524
<plugin>
1625
<groupId>org.apache.maven.plugins</groupId>
1726
<artifactId>maven-failsafe-plugin</artifactId>
1827
<configuration>
1928
<forkCount>0</forkCount>
2029
<systemPropertyVariables>
2130
<tests.security.manager>false</tests.security.manager>
31+
<elasticsearch.docker.version>${elasticsearch.version}</elasticsearch.docker.version>
2232
</systemPropertyVariables>
2333
</configuration>
2434
</plugin>
@@ -37,34 +47,6 @@
3747
<version>${project.version}</version>
3848
<scope>test</scope>
3949
</dependency>
40-
<dependency>
41-
<groupId>org.apache.lucene</groupId>
42-
<artifactId>lucene-test-framework</artifactId>
43-
<version>${lucene.version}</version>
44-
<scope>test</scope>
45-
<exclusions>
46-
<exclusion>
47-
<groupId>org.hamcrest</groupId>
48-
<artifactId>hamcrest-core</artifactId>
49-
</exclusion>
50-
</exclusions>
51-
</dependency>
52-
<dependency>
53-
<groupId>org.elasticsearch.test</groupId>
54-
<artifactId>framework</artifactId>
55-
<version>${elasticsearch.version}</version>
56-
<scope>test</scope>
57-
<exclusions>
58-
<exclusion>
59-
<groupId>commons-logging</groupId>
60-
<artifactId>commons-logging</artifactId>
61-
</exclusion>
62-
<exclusion>
63-
<groupId>org.apache.httpcomponents</groupId>
64-
<artifactId>httpcore</artifactId>
65-
</exclusion>
66-
</exclusions>
67-
</dependency>
6850
<dependency>
6951
<groupId>org.apache.httpcomponents</groupId>
7052
<artifactId>httpcore</artifactId>
@@ -105,12 +87,32 @@
10587
<version>${elasticsearch.version}</version>
10688
<scope>test</scope>
10789
<exclusions>
90+
<exclusion>
91+
<groupId>commons-logging</groupId>
92+
<artifactId>commons-logging</artifactId>
93+
</exclusion>
10894
<exclusion>
10995
<groupId>com.vividsolutions</groupId>
11096
<artifactId>jts</artifactId>
11197
</exclusion>
98+
<exclusion>
99+
<groupId>org.elasticsearch</groupId>
100+
<artifactId>jna</artifactId>
101+
</exclusion>
112102
</exclusions>
113103
</dependency>
104+
<dependency>
105+
<groupId>org.testcontainers</groupId>
106+
<artifactId>testcontainers</artifactId>
107+
<version>${testcontainers.version}</version>
108+
<scope>test</scope>
109+
</dependency>
110+
<dependency>
111+
<groupId>org.testcontainers</groupId>
112+
<artifactId>junit-jupiter</artifactId>
113+
<version>${testcontainers.version}</version>
114+
<scope>test</scope>
115+
</dependency>
114116
<dependency>
115117
<groupId>org.apache.logging.log4j</groupId>
116118
<artifactId>log4j-core</artifactId>

0 commit comments

Comments
 (0)