Browse Source

dbeaver/dbeaver#23361 LibSQL driver definition (#36106)

* dbeaver/dbeaver#23361 LibSQL driver definition

* dbeaver/dbeaver#23361 LibSQL driver definition + connection name gen fix

* dbeaver/dbeaver#23361 LibSQL driver definition + connection name gen fix

* dbeaver/dbeaver#23361 Driver definition

* dbeaver/dbeaver#23361 Query cancel handle fix

* dbeaver/dbeaver#23361 Icons

* dbeaver/dbeaver#23361 Columns for all tables read

* dbeaver/dbeaver#23361 Columns for all tables read

* dbeaver/dbeaver#23361 Resultsets metadata discovery fix

* dbeaver/dbeaver#23361 Generic icons move

* dbeaver/dbeaver#23361 Icons

* dbeaver/dbeaver#23361 Include in dbeaver and cloudbeaver community

* dbeaver/dbeaver#23361 Add LibSQL to CB CE

---------

Co-authored-by: MashaKorax <[email protected]>
Serge Rider 1 year ago
parent
commit
c7af31cb20
34 changed files with 108 additions and 36 deletions
  1. 2 0
      features/org.jkiss.dbeaver.db.feature/feature.xml
  2. 5 1
      plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/dialogs/connection/ConnectionNameResolver.java
  3. 4 3
      plugins/org.jkiss.dbeaver.ext.clickhouse/build.properties
  4. 0 0
      plugins/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon.png
  5. 0 0
      plugins/org.jkiss.dbeaver.ext.clickhouse/icons/[email protected]
  6. 0 0
      plugins/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon_big.png
  7. 0 0
      plugins/org.jkiss.dbeaver.ext.clickhouse/icons/[email protected]
  8. 6 6
      plugins/org.jkiss.dbeaver.ext.clickhouse/plugin.xml
  9. BIN
      plugins/org.jkiss.dbeaver.ext.generic/icons/db2_icon.png
  10. BIN
      plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected]
  11. BIN
      plugins/org.jkiss.dbeaver.ext.generic/icons/db2_icon_big.png
  12. BIN
      plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected]
  13. 3 7
      plugins/org.jkiss.dbeaver.ext.generic/plugin.xml
  14. 1 1
      plugins/org.jkiss.dbeaver.ext.sample.database/plugin.xml
  15. 2 2
      plugins/org.jkiss.dbeaver.ext.sqlite/META-INF/MANIFEST.MF
  16. 4 3
      plugins/org.jkiss.dbeaver.ext.sqlite/build.properties
  17. BIN
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/libsql_icon.png
  18. BIN
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]
  19. BIN
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/libsql_icon_big.png
  20. BIN
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]
  21. 0 0
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/sqlite_icon.png
  22. 0 0
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]
  23. 0 0
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/sqlite_icon_big.png
  24. 0 0
      plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]
  25. 29 5
      plugins/org.jkiss.dbeaver.ext.sqlite/plugin.xml
  26. 1 4
      plugins/org.jkiss.dbeaver.ext.sqlite/src/org/jkiss/dbeaver/ext/sqlite/model/SQLiteDataSource.java
  27. 37 0
      plugins/org.jkiss.dbeaver.ext.sqlite/src/org/jkiss/dbeaver/ext/sqlite/model/SQLiteDataSourceInfo.java
  28. 2 2
      plugins/org.jkiss.dbeaver.ext.vertica.ui/plugin.xml
  29. 4 0
      plugins/org.jkiss.dbeaver.model.jdbc/src/org/jkiss/dbeaver/model/impl/jdbc/JDBCDataSource.java
  30. 1 1
      plugins/org.jkiss.dbeaver.ui.app.standalone/plugin.xml
  31. 3 0
      pom.xml
  32. 2 1
      project.deps
  33. 1 0
      tools/build.cmd
  34. 1 0
      tools/build.sh

+ 2 - 0
features/org.jkiss.dbeaver.db.feature/feature.xml

@@ -56,4 +56,6 @@
    <plugin id="org.jkiss.dbeaver.ext.altibase" version="0.0.0" />
    <plugin id="org.jkiss.dbeaver.ext.gaussdb" version="0.0.0" />
 
+   <plugin id="com.dbeaver.jdbc.driver.libsql" version="0.0.0"/>
+
 </feature>

+ 5 - 1
plugins/org.jkiss.dbeaver.core/src/org/jkiss/dbeaver/ui/dialogs/connection/ConnectionNameResolver.java

@@ -108,7 +108,11 @@ public class ConnectionNameResolver implements IVariableResolver {
             }
             StringTokenizer st = new StringTokenizer(newName, "/\\:,?=%$#@!^&*()"); //$NON-NLS-1$
             while (st.hasMoreTokens()) {
-                newName = st.nextToken();
+                String nextPart = st.nextToken();
+                if (nextPart.matches("[0-9]+")) {
+                    continue;
+                }
+                newName = nextPart;
             }
             //newName = settings.getDriver().getName() + " - " + newName; //$NON-NLS-1$
             newName = CommonUtils.truncateString(newName, 50);

+ 4 - 3
plugins/org.jkiss.dbeaver.ext.clickhouse/build.properties

@@ -1,6 +1,7 @@
 source.. = src/,target/generated-sources/antlr4/
 output.. = target/classes/
 bin.includes = .,\
-               META-INF/,\
-               OSGI-INF/,\
-               plugin.xml
+   META-INF/,\
+   OSGI-INF/,\
+   icons/,\
+   plugin.xml

+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon.png → plugins/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon.png


+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected] → plugins/org.jkiss.dbeaver.ext.clickhouse/icons/[email protected]


+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon_big.png → plugins/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon_big.png


+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected] → plugins/org.jkiss.dbeaver.ext.clickhouse/icons/[email protected]


+ 6 - 6
plugins/org.jkiss.dbeaver.ext.clickhouse/plugin.xml

@@ -17,7 +17,7 @@
                 id="clickhouse"
                 parent="generic"
                 label="ClickHouse"
-                icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon.png"
+                icon="platform:/plugin/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon.png"
                 dialect="clickhouse">
             <drivers managable="true">
 
@@ -27,8 +27,8 @@
                         class="com.clickhouse.jdbc.ClickHouseDriver"
                         sampleURL="jdbc:clickhouse://{host}:{port}[/{database}]"
                         defaultPort="8123"
-                        icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon.png"
-                        iconBig="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon_big.png"
+                        icon="platform:/plugin/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon.png"
+                        iconBig="platform:/plugin/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon_big.png"
                         description="ClickHouse legacy driver (server version &lt; 21.3)"
                         supportedConfigurationTypes="MANUAL,URL"
                         webURL="https://github.com/yandex/clickhouse-jdbc"
@@ -52,8 +52,8 @@
                     class="com.clickhouse.jdbc.ClickHouseDriver"
                     sampleURL="jdbc:clickhouse://{host}:{port}[/{database}]"
                     defaultPort="8123"
-                    icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon.png"
-                    iconBig="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon_big.png"
+                    icon="platform:/plugin/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon.png"
+                    iconBig="platform:/plugin/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon_big.png"
                     description="Official ClickHouse driver (server version 21.3+)"
                     supportedConfigurationTypes="MANUAL,URL"
                     webURL="https://github.com/ClickHouse/clickhouse-java"
@@ -81,7 +81,7 @@
     </extension>
 
     <extension point="org.jkiss.dbeaver.sqlDialect">
-        <dialect id="clickhouse" parent="generic" class="org.jkiss.dbeaver.ext.clickhouse.model.ClickhouseSQLDialect" label="Clickhouse" description="Clickhouse SQL dialect." icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/clickhouse_icon.png">
+        <dialect id="clickhouse" parent="generic" class="org.jkiss.dbeaver.ext.clickhouse.model.ClickhouseSQLDialect" label="Clickhouse" description="Clickhouse SQL dialect." icon="platform:/plugin/org.jkiss.dbeaver.ext.clickhouse/icons/clickhouse_icon.png">
         </dialect>
     </extension>
 

BIN
plugins/org.jkiss.dbeaver.ext.generic/icons/db2_icon.png


BIN
plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected]


BIN
plugins/org.jkiss.dbeaver.ext.generic/icons/db2_icon_big.png


BIN
plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected]


+ 3 - 7
plugins/org.jkiss.dbeaver.ext.generic/plugin.xml

@@ -1246,8 +1246,8 @@
                 <driver
                         id="db2_luw_old"
                         label="Db2 for LUW (Old 8.x)"
-                        icon="icons/db2_icon.png"
-                        iconBig="icons/db2_icon_big.png"
+                        icon="platform:/plugin/org.jkiss.dbeaver.ext.db2/icons/db2_icon.png"
+                        iconBig="platform:/plugin/org.jkiss.dbeaver.ext.db2/icons/db2_icon_big.png"
                         category="Db2"
                         class="com.ibm.db2.jcc.DB2Driver"
                         sampleURL="jdbc:db2://{host}[:{port}]/{database}"
@@ -1268,11 +1268,7 @@
                     <parameter name="query-get-active-db" value="SELECT CURRENT_SCHEMA FROM SYSIBM.SYSDUMMY1"/>
                     <parameter name="query-set-active-db" value="SET SCHEMA ?"/>
 
-                    <fileSource url="https://www-304.ibm.com/support/docview.wss?rs=4020&amp;uid=swg21385217"
-                                name="DB2 drivers"
-                                instruction="Download JDBC (JCC) client driver. Extract downloaded archive and copy db2jcc4.jar in some directory. Then add db2jcc4.jar as a library in DBeaver driver editor dialog.">
-                        <file name="db2jcc4.jar" description="JDBC driver"/>
-                    </fileSource>
+                    <file type="jar" path="maven:/com.ibm.db2:jcc:RELEASE[11.5.9.0]" bundle="!drivers.db2"/>
                     <file type="license" path="drivers/db2/LICENSE.txt" bundle="drivers.db2"/>
                     <file type="jar" path="drivers/db2" bundle="drivers.db2"/>
                 </driver>

+ 1 - 1
plugins/org.jkiss.dbeaver.ext.sample.database/plugin.xml

@@ -28,7 +28,7 @@
     </extension>
 
     <extension point="org.eclipse.ui.commandImages">
-        <image commandId="org.jkiss.dbeaver.ext.sample.database.commands.create" icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/sqlite_icon.png"/>
+        <image commandId="org.jkiss.dbeaver.ext.sample.database.commands.create" icon="platform:/plugin/org.jkiss.dbeaver.ext.sqlite/icons/sqlite_icon.png"/>
     </extension>
 
     <extension point="org.eclipse.ui.menus">

+ 2 - 2
plugins/org.jkiss.dbeaver.ext.sqlite/META-INF/MANIFEST.MF

@@ -7,10 +7,10 @@ Bundle-Release-Date: 20241118
 Require-Bundle: org.jkiss.dbeaver.model,
  org.jkiss.dbeaver.ext.generic,
  org.jkiss.dbeaver.data.gis,
- org.jkiss.dbeaver.model,
  org.jkiss.bundle.gis,
  org.jkiss.dbeaver.model.lsm,
- org.jkiss.bundle.antlr4
+ org.jkiss.bundle.antlr4,
+ com.dbeaver.jdbc.driver.libsql;visibility:=reexport
 Export-Package: org.jkiss.dbeaver.ext.sqlite,
  org.jkiss.dbeaver.ext.sqlite.model
 Import-Package: org.jkiss.code

+ 4 - 3
plugins/org.jkiss.dbeaver.ext.sqlite/build.properties

@@ -1,6 +1,7 @@
 source.. = src/
 output.. = target/classes/
 bin.includes = .,\
-               META-INF/,\
-               OSGI-INF/,\
-               plugin.xml
+    META-INF/,\
+    OSGI-INF/,\
+    icons/,\
+    plugin.xml

BIN
plugins/org.jkiss.dbeaver.ext.sqlite/icons/libsql_icon.png


BIN
plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]


BIN
plugins/org.jkiss.dbeaver.ext.sqlite/icons/libsql_icon_big.png


BIN
plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]


+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/sqlite_icon.png → plugins/org.jkiss.dbeaver.ext.sqlite/icons/sqlite_icon.png


+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected] → plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]


+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/sqlite_icon_big.png → plugins/org.jkiss.dbeaver.ext.sqlite/icons/sqlite_icon_big.png


+ 0 - 0
plugins/org.jkiss.dbeaver.ext.generic/icons/[email protected] → plugins/org.jkiss.dbeaver.ext.sqlite/icons/[email protected]


+ 29 - 5
plugins/org.jkiss.dbeaver.ext.sqlite/plugin.xml

@@ -4,7 +4,8 @@
 <plugin>
 
     <extension point="org.jkiss.dbeaver.generic.meta">
-        <meta id="sqlite" class="org.jkiss.dbeaver.ext.sqlite.model.SQLiteMetaModel" driverClass="org.sqlite.JDBC" dialect="sqlite"/>
+        <meta id="sqlite" class="org.jkiss.dbeaver.ext.sqlite.model.SQLiteMetaModel"
+              driverClass="org.sqlite.JDBC,com.dbeaver.jdbc.driver.libsql.LibSqlDriver" dialect="sqlite"/>
     </extension>
 
     <extension point="org.jkiss.dbeaver.dataSourceProvider">
@@ -14,14 +15,14 @@
                 id="sqlite"
                 parent="generic"
                 label="SQLite"
-                icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/sqlite_icon.png"
+                icon="icons/sqlite_icon.png"
                 dialect="sqlite">
             <drivers managable="true">
                 <driver
                         id="sqlite_jdbc"
                         label="SQLite"
-                        icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/sqlite_icon.png"
-                        iconBig="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/sqlite_icon_big.png"
+                        icon="icons/sqlite_icon.png"
+                        iconBig="icons/sqlite_icon_big.png"
                         class="org.sqlite.JDBC"
                         sampleURL="jdbc:sqlite:{file}"
                         supportedConfigurationTypes="MANUAL,URL"
@@ -50,6 +51,29 @@
                     <parameter name="supports-stored-code" value="false"/>
                     <parameter name="supports-truncate" value="false"/>
                 </driver>
+
+                <!-- LibSQL / Turso-->
+                <driver
+                        id="libsql_jdbc"
+                        label="LibSQL"
+                        class="com.dbeaver.jdbc.driver.libsql.LibSqlDriver"
+                        icon="icons/libsql_icon.png"
+                        iconBig="icons/libsql_icon_big.png"
+                        sampleURL="jdbc:dbeaver:libsql:{server}"
+                        defaultDatabase="http://localhost"
+                        description="LibSQL DBeaver JDBC driver. Works with standalone LibSQL server and with Turso."
+                        webURL="https://github.com/tursodatabase/libsql"
+                        databaseDocumentationSuffixURL="Database-driver-LibSQL"
+                        singleConnection="true"
+                        supportedConfigurationTypes="MANUAL,URL"
+                        categories="sql">
+                    <parameter name="supports-references" value="true"/>
+                    <parameter name="supports-struct-cache" value="true"/>
+                    <parameter name="supports-indexes" value="true"/>
+                    <parameter name="supports-stored-code" value="false"/>
+                    <parameter name="supports-truncate" value="false"/>
+                </driver>
+
             </drivers>
         </datasource>
     </extension>
@@ -79,7 +103,7 @@
     </extension>
 
     <extension point="org.jkiss.dbeaver.sqlDialect">
-        <dialect id="sqlite" parent="generic" class="org.jkiss.dbeaver.ext.sqlite.model.SQLiteSQLDialect" label="SQLite" description="SQLite dialect." icon="platform:/plugin/org.jkiss.dbeaver.ext.generic/icons/sqlite_icon.png">
+        <dialect id="sqlite" parent="generic" class="org.jkiss.dbeaver.ext.sqlite.model.SQLiteSQLDialect" label="SQLite" description="SQLite dialect." icon="icons/sqlite_icon.png">
             <property name="insertMethods" value="sqLiteInsertIgnore,sqLiteReplaceIgnore"/>
         </dialect>
     </extension>

+ 1 - 4
plugins/org.jkiss.dbeaver.ext.sqlite/src/org/jkiss/dbeaver/ext/sqlite/model/SQLiteDataSource.java

@@ -20,7 +20,6 @@ import org.jkiss.code.NotNull;
 import org.jkiss.code.Nullable;
 import org.jkiss.dbeaver.DBException;
 import org.jkiss.dbeaver.ext.generic.model.GenericDataSource;
-import org.jkiss.dbeaver.ext.generic.model.GenericDataSourceInfo;
 import org.jkiss.dbeaver.ext.generic.model.meta.GenericMetaModel;
 import org.jkiss.dbeaver.model.DBPDataSourceContainer;
 import org.jkiss.dbeaver.model.DBPDataSourceInfo;
@@ -63,9 +62,7 @@ public class SQLiteDataSource extends GenericDataSource {
 
     @Override
     protected DBPDataSourceInfo createDataSourceInfo(DBRProgressMonitor monitor, @NotNull JDBCDatabaseMetaData metaData) {
-        GenericDataSourceInfo info = (GenericDataSourceInfo) super.createDataSourceInfo(monitor, metaData);
-        info.setSupportsNullableUniqueConstraints(true);
-        return info;
+        return new SQLiteDataSourceInfo(container.getDriver(), metaData);
     }
 
     @Override

+ 37 - 0
plugins/org.jkiss.dbeaver.ext.sqlite/src/org/jkiss/dbeaver/ext/sqlite/model/SQLiteDataSourceInfo.java

@@ -0,0 +1,37 @@
+/*
+ * DBeaver - Universal Database Manager
+ * Copyright (C) 2010-2024 DBeaver Corp and others
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jkiss.dbeaver.ext.sqlite.model;
+
+import org.jkiss.dbeaver.ext.generic.model.GenericDataSourceInfo;
+import org.jkiss.dbeaver.model.connection.DBPDriver;
+import org.jkiss.dbeaver.model.exec.jdbc.JDBCDatabaseMetaData;
+
+public class SQLiteDataSourceInfo extends GenericDataSourceInfo {
+
+    private final boolean isRemote;
+
+    public SQLiteDataSourceInfo(DBPDriver driver, JDBCDatabaseMetaData metaData) {
+        super(driver, metaData);
+        this.isRemote = !driver.isEmbedded();
+    }
+
+    // In LibSQL we don't have proper resulset metadata
+    @Override
+    public boolean needsTableMetaForColumnResolution() {
+        return !isRemote;
+    }
+}

+ 2 - 2
plugins/org.jkiss.dbeaver.ext.vertica.ui/plugin.xml

@@ -10,11 +10,11 @@
                 targetID="org.jkiss.dbeaver.ext.ui.newConnectionWizard"
                 label="%dialog.connection.header"
                 class="org.jkiss.dbeaver.ext.vertica.ui.views.VerticaConnectionPage"
-                icon="platform:/plugin/org.jkiss.dbeaver.ext.vertica/icons/icons/vertica_icon.png">
+                icon="platform:/plugin/org.jkiss.dbeaver.ext.vertica/icons/vertica_icon.png">
         </view>
         <view
                 class="org.jkiss.dbeaver.ext.vertica.ui.views.VerticaConnectionPage"
-                icon="platform:/plugin/org.jkiss.dbeaver.ext.vertica/icons/icons/vertica_icon.png"
+                icon="platform:/plugin/org.jkiss.dbeaver.ext.vertica/icons/vertica_icon.png"
                 id="org.jkiss.dbeaver.ext.vertica.dataSourceEditorView"
                 dataSource="vertica"
                 label="%dialog.connection.header"

+ 4 - 0
plugins/org.jkiss.dbeaver.model.jdbc/src/org/jkiss/dbeaver/model/impl/jdbc/JDBCDataSource.java

@@ -847,6 +847,10 @@ public abstract class JDBCDataSource extends AbstractDataSource
             statement.cancel();
         }
         catch (SQLException e) {
+            if (e instanceof SQLFeatureNotSupportedException) {
+                // ignore
+                return;
+            }
             throw new DBDatabaseException(e, this);
         }
     }

+ 1 - 1
plugins/org.jkiss.dbeaver.ui.app.standalone/plugin.xml

@@ -134,7 +134,7 @@
 
         <image commandId="org.eclipse.ui.newWizard" icon="icons/eclipse/new_object.png" disabledIcon="icons/eclipse/new_object_d.png"/>
         <image commandId="org.eclipse.ui.edit.text.zoomIn" icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/zoom_in.png" disabledIcon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/zoom_in_d.png"/>
-        <image commandId="org.eclipse.ui.edit.text.zoomOut" icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/zoom_out.png" disabledIcon="platform:/plugin/org.jkiss.dbeaver.ui/icons/icons/misc/zoom_out_d.png"/>
+        <image commandId="org.eclipse.ui.edit.text.zoomOut" icon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/zoom_out.png" disabledIcon="platform:/plugin/org.jkiss.dbeaver.ui/icons/misc/zoom_out_d.png"/>
         <image commandId="org.eclipse.ui.edit.text.gotoLastEditPosition" icon="icons/eclipse/last_edit_location.png" disabledIcon="icons/eclipse/last_edit_location_d.png"/>
         <image commandId="org.eclipse.search.ui.openSearchDialog" icon="icons/eclipse/search.png" disabledIcon="icons/eclipse/search_d.png"/>
 

+ 3 - 0
pom.xml

@@ -28,6 +28,9 @@
     </properties>
 
     <modules>
+        <!-- dbeaver-jdbc-libsql-->
+        <module>../dbeaver-jdbc-libsql</module>
+
         <module>plugins</module>
         <module>features</module>
     </modules>

+ 2 - 1
project.deps

@@ -1 +1,2 @@
-dbeaver-common
+dbeaver-common
+dbeaver-jdbc-libsql

+ 1 - 0
tools/build.cmd

@@ -1,5 +1,6 @@
 cd ..
 IF NOT EXIST ..\dbeaver-common git clone https://github.com/dbeaver/dbeaver-common.git ..\dbeaver-common
+IF NOT EXIST ..\dbeaver-jdbc-libsql git clone https://github.com/dbeaver/dbeaver-jdbc-libsql.git ..\dbeaver-jdbc-libsql
 cd product/aggregate
 call mvn clean package -Pall-platforms -T 1C
 cd ../..

+ 1 - 0
tools/build.sh

@@ -1,6 +1,7 @@
 #!/bin/bash
 cd ..
 [ ! -d ../dbeaver-common ] && git clone https://github.com/dbeaver/dbeaver-common.git ../dbeaver-common
+[ ! -d ../dbeaver-jdbc-libsql ] && git clone https://github.com/dbeaver/dbeaver-jdbc-libsql.git ../dbeaver-jdbc-libsql
 
 cd product/aggregate
 mvn clean install -Pall-platforms -T 1C