duckdb / duckdb/duckdb-java

Future proof duckdb-java by making it a named module.

Aperta
#296 3 commenti 2 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C++
Stelle
127
Fork
80
Merge medio
13h 49m
PR unite (30g)
48

Descrizione

**Bug definition**
I just hit an unexpected compile time error when I named my module, which requires `org.duckdb`

**To Reproduce**
```java
module com.example.dsl.dsl.main {
requires org.duckdb; // This is currently results in a compile time error as duckdb-java is yet to have a module definition
//requires duckdb.jdbc;
requires java.sql;
// ...

exports com.example.dsl.sql.core;
exports com.example.dsl.sql.dialects;
exports com.example.dsl.sql.errors;
exports com.example.dsl.sql.execution;
exports com.example.dsl.sql.transactions;

provides com.example.dsl.sql.execution.SqlExecutor
with com.example.dsl.sql.execution.DuckDBExecutor,
com.example.dsl.sql.execution.SQLiteExecutor,
com.example.dsl.sql.execution.PostgreSQLExecutor;
}

/// This produces the following compile time error:
org.duckdb - Module not found: org.duckdb

duckdb.jdbc - dsl/src/main/java/module-info.java:24: error: module not found: duckdb.jdbc
requires duckdb.jdbc;
```

**Solution proposal**
Add `module-info.java` (module definition) for the `org.duckdb` library to, add/move package-info.java (package definition) to the respective packages e.g., `org.duckdb.io`, `org.duckdb.user`

**Alternatives I've considered**
Leave it as is, but eventually we will have to handle this, particularly for this library as the java platform evolves:

- <>
- <>

**Environment**
- OS: Linux
- CPU architecture: amd64
- org.duckdb.duckdb_jdbc version v1.3.1.0

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia dai file module-info.java e package-info.java indicati nella proposta, quindi riproduci il fallimento della compilazione del modulo Java usando le dichiarazioni requires di esempio. Determina i metadati del modulo e le definizioni dei package necessari per la libreria org.duckdb; il lavoro è completato quando un modulo client denominato può risolvere org.duckdb senza gli errori module-not-found segnalati.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
databases
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
48/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.