Perform async work synchronously in Node.js using `worker_threads` with first-class TypeScript and Yarn P'n'P support.
MIT License
Bot releases are visible (Hide)
Published by JounQin 10 months ago
7b6a0eb
Thanks @JounQin! - feat: migrate @pkgr/utils
to lite @pkgr/core
- This will make the whole package much more smallerFull Changelog: https://github.com/un-ts/synckit/compare/v0.8.7...v0.8.8
Published by JounQin 10 months ago
#145 b2affa0
Thanks @JounQin! - feat: add new globalShims
option, what means you can env SYNCKIT_GLOBAL_SHIMS=1
to enable auto polyfilling for some modules, for example: fetch
from node-fetch
, performance
from node:perf_hooks
.
You can also pass a custom globalShims
option as GlobalShim
Array
to custom your own shims:
export interface GlobalShim {
moduleName: string
/**
* `undefined` means side effect only
*/
globalName?: string
/**
* 1. `undefined` or empty string means `default`, for example:
* ```js
* import globalName from 'module-name'
* ```
*
* 2. `null` means namespaced, for example:
* ```js
* import * as globalName from 'module-name'
* ```
*
*/
named?: string | null
/**
* If not `false`, the shim will only be applied when the original `globalName` unavailable,
* for example you may only want polyfill `globalThis.fetch` when it's unavailable natively:
* ```js
* import fetch from 'node-fetch'
*
* if (!globalThis.fetch) {
* globalThis.fetch = fetch
* }
* ```
*/
conditional?: boolean
}
You can aslo reuse the exported DEFAULT_GLOBAL_SHIMS_PRESET
for extanding:
import { DEFAULT_GLOBAL_SHIMS_PRESET, createSyncFn } from 'synckit'
const syncFn = createSyncFn(require.resolve('./worker'), {
globalShims: [
...DEFAULT_GLOBAL_SHIMS_PRESET,
// your own shim here
],
})
Full Changelog: https://github.com/un-ts/synckit/compare/v0.8.6...v0.8.7
Published by JounQin over 1 year ago
758aaf1
Thanks @krossekrabbe! - fix: pnp loader path on WindowsPublished by github-actions[bot] about 2 years ago
Published by JounQin over 2 years ago
#90 ffcf174
Thanks @JounQin! - build!: drop Node 12 support, remove testing on Node 14
#90 ffcf174
Thanks @JounQin! - feat: support more ts runners for TypeScript files
Feel free to PR to add more runner support like swc
if you want