Skip to content

process.umask() is not available inside worker thread #9

@SimenB

Description

@SimenB

This line makes the worker throw instantly:

mode: 0o777 & (~process.umask()),

// make-dir.js
require('make-dir');
// make-dir-worker.js
const {Worker} = require('worker_threads');

new Worker(require.resolve('./make-dir'));
$ node -v
v10.14.1
$ node --experimental-worker make-dir-worker.js

events.js:167
      throw er; // Unhandled 'error' event
      ^
TypeError: process.umask is not a function
    at Object.<anonymous> (/Users/simen/Development/jest/node_modules/make-dir/index.js:7:26)
    at Module._compile (internal/modules/cjs/loader.js:688:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
    at Module.load (internal/modules/cjs/loader.js:598:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
    at Function.Module._load (internal/modules/cjs/loader.js:529:3)
    at Module.require (internal/modules/cjs/loader.js:636:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at Object.<anonymous> (/Users/simen/Development/jest/make-dir.js:1:63)
    at Module._compile (internal/modules/cjs/loader.js:688:30)
Emitted 'error' event at:
    at Worker.[kOnErrorMessage] (internal/worker.js:334:10)
    at Worker.[kOnMessage] (internal/worker.js:344:37)
    at MessagePort.Worker.(anonymous function).on (internal/worker.js:281:57)
    at MessagePort.emit (events.js:182:13)
    at MessagePort.onmessage (internal/worker.js:86:8)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions