Skip to content

Commit

Permalink
Fixed v4 ueberdb (#747)
Browse files Browse the repository at this point in the history
* Fixed v4 ueberdb

* Fixed module not found

---------

Co-authored-by: SamTV12345 <noreply+samtv1235@github.com>
  • Loading branch information
SamTV12345 and SamTV12345 authored Sep 9, 2024
1 parent c9a08d5 commit a7e753b
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 12 deletions.
14 changes: 11 additions & 3 deletions databases/rusty_db.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import AbstractDatabase from "../lib/AbstractDatabase";
import {KeyValueDB} from 'rusty-store-kv'

export default class Rusty_db extends AbstractDatabase {
db: KeyValueDB |null| undefined
db: any |null| undefined

constructor(settings: {filename: string}) {
super(settings);
Expand Down Expand Up @@ -34,7 +33,16 @@ export default class Rusty_db extends AbstractDatabase {
}

async init() {
this.db = new KeyValueDB(this.settings.filename!);
let RUSTY_DB
try {
RUSTY_DB = await import('rusty-store-kv');
} catch (err) {
throw new Error(
'rusty-store-kv not found. It was removed from ueberdb\'s dependencies because it requires ' +
'compilation which fails on several systems. If you still want to use rusty store kv, run ' +
'"pnpm install rusty-store-kv" in your etherpad-lite ./src directory.');
}
this.db = new RUSTY_DB.KeyValueDB(this.settings.filename!);
}

close() {
Expand Down
20 changes: 11 additions & 9 deletions databases/sqlite_db.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
'use strict';
import {BulkObject} from "./cassandra_db";
import AbstractDatabase, {Settings} from "../lib/AbstractDatabase";
import {SQLite} from 'rusty-store-kv'

/**
* 2011 Peter 'Pita' Martischka
Expand All @@ -19,14 +18,8 @@ import {SQLite} from 'rusty-store-kv'
* limitations under the License.
*/

const escape = (val:string) => `'${val.replace(/'/g, "''")}'`;

type RequestVal = {
value: string;
}

export default class SQLiteDB extends AbstractDatabase {
public db: SQLite|null;
public db: any|null;
constructor(settings:Settings) {
super(settings);
this.db = null;
Expand All @@ -50,7 +43,16 @@ export default class SQLiteDB extends AbstractDatabase {
}

init(callback: Function) {
this.db = new SQLite(this.settings.filename as string)
let SQLITEDB
try {
SQLITEDB = require('rusty-store-kv');
} catch (err) {
throw new Error(
'rusty-store-kv not found. It was removed from ueberdb\'s dependencies because it requires ' +
'compilation which fails on several systems. If you still want to use sqlite, run ' +
'"pnpm install rusty-store-kv" in your etherpad-lite ./src directory.');
}
this.db = new SQLITEDB.SQLite(this.settings.filename as string)
callback();
}

Expand Down

0 comments on commit a7e753b

Please sign in to comment.