fix(rust-binary-locator): use import.meta.resolve and url.fileURLToPath to locate bundled Rust binary in ESM environments
This commit is contained in:
@@ -1,5 +1,12 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2026-02-10 - 1.1.2 - fix(rust-binary-locator)
|
||||||
|
use import.meta.resolve and url.fileURLToPath to locate bundled Rust binary in ESM environments
|
||||||
|
|
||||||
|
- Replace require.resolve with import.meta.resolve to support ESM module resolution
|
||||||
|
- Convert resolved file URL to a filesystem path using url.fileURLToPath
|
||||||
|
- Export the url module from ts/plugins to provide fileURLToPath
|
||||||
|
|
||||||
## 2026-02-10 - 1.1.1 - fix(readme)
|
## 2026-02-10 - 1.1.1 - fix(readme)
|
||||||
update README with comprehensive documentation, usage examples, API reference, installation instructions, and legal/company information
|
update README with comprehensive documentation, usage examples, API reference, installation instructions, and legal/company information
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@push.rocks/smartrust',
|
name: '@push.rocks/smartrust',
|
||||||
version: '1.1.1',
|
version: '1.1.2',
|
||||||
description: 'a bridge between JS engines and rust'
|
description: 'a bridge between JS engines and rust'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -108,7 +108,8 @@ export class RustBinaryLocator {
|
|||||||
const packageName = `${platformPackagePrefix}-${platform}-${arch}`;
|
const packageName = `${platformPackagePrefix}-${platform}-${arch}`;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const packagePath = require.resolve(`${packageName}/${binaryName}`);
|
const resolved = import.meta.resolve(`${packageName}/${binaryName}`);
|
||||||
|
const packagePath = plugins.url.fileURLToPath(resolved);
|
||||||
if (await this.isExecutable(packagePath)) {
|
if (await this.isExecutable(packagePath)) {
|
||||||
return packagePath;
|
return packagePath;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,8 +4,9 @@ import * as fs from 'fs';
|
|||||||
import * as childProcess from 'child_process';
|
import * as childProcess from 'child_process';
|
||||||
import * as readline from 'readline';
|
import * as readline from 'readline';
|
||||||
import * as events from 'events';
|
import * as events from 'events';
|
||||||
|
import * as url from 'url';
|
||||||
|
|
||||||
export { path, fs, childProcess, readline, events };
|
export { path, fs, childProcess, readline, events, url };
|
||||||
|
|
||||||
// @push.rocks scope
|
// @push.rocks scope
|
||||||
import * as smartpath from '@push.rocks/smartpath';
|
import * as smartpath from '@push.rocks/smartpath';
|
||||||
|
|||||||
Reference in New Issue
Block a user