mirror of
https://github.com/chatmail/core.git
synced 2026-05-22 16:26:31 +03:00
refactor(@deltachat/stdio-rpc-server): use old school require instead of the experimental json import (#5628)
to get rid of warning. Should also make it possible to use nodejs versions older than 20.11.
This commit is contained in:
@@ -7,7 +7,7 @@ This simplifies cross-compilation and even reduces binary size (no CFFI layer an
|
|||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
> The **minimum** nodejs version for this package is `20.11`
|
> The **minimum** nodejs version for this package is `16`
|
||||||
|
|
||||||
```
|
```
|
||||||
npm i @deltachat/stdio-rpc-server @deltachat/jsonrpc-client
|
npm i @deltachat/stdio-rpc-server @deltachat/jsonrpc-client
|
||||||
|
|||||||
@@ -11,9 +11,6 @@ import {
|
|||||||
NPM_NOT_FOUND_UNSUPPORTED_PLATFORM_ERROR,
|
NPM_NOT_FOUND_UNSUPPORTED_PLATFORM_ERROR,
|
||||||
} from "./src/errors.js";
|
} from "./src/errors.js";
|
||||||
|
|
||||||
// Because this is not compiled by typescript, esm needs this stuff (` with { type: "json" };`,
|
|
||||||
// nodejs still complains about it being experimental, but deno also uses it, so treefit bets taht it will become standard)
|
|
||||||
import package_json from "./package.json" with { type: "json" };
|
|
||||||
import { createRequire } from "node:module";
|
import { createRequire } from "node:module";
|
||||||
|
|
||||||
function findRPCServerInNodeModules() {
|
function findRPCServerInNodeModules() {
|
||||||
@@ -25,7 +22,12 @@ function findRPCServerInNodeModules() {
|
|||||||
return resolve(package_name);
|
return resolve(package_name);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.debug("findRpcServerInNodeModules", error);
|
console.debug("findRpcServerInNodeModules", error);
|
||||||
if (Object.keys(package_json.optionalDependencies).includes(package_name)) {
|
const require = createRequire(import.meta.url);
|
||||||
|
if (
|
||||||
|
Object.keys(require("./package.json").optionalDependencies).includes(
|
||||||
|
package_name
|
||||||
|
)
|
||||||
|
) {
|
||||||
throw new Error(NPM_NOT_FOUND_SUPPORTED_PLATFORM_ERROR(package_name));
|
throw new Error(NPM_NOT_FOUND_SUPPORTED_PLATFORM_ERROR(package_name));
|
||||||
} else {
|
} else {
|
||||||
throw new Error(NPM_NOT_FOUND_UNSUPPORTED_PLATFORM_ERROR());
|
throw new Error(NPM_NOT_FOUND_UNSUPPORTED_PLATFORM_ERROR());
|
||||||
|
|||||||
Reference in New Issue
Block a user