Skip to content

Throws ENOENT when dest is in tmpdir #60

Open
@nandenjin

Description

@nandenjin

Internally dest path is converted to relative one by normalizePath() but it make fs.open() failed when dest is in tmpdir.

Sample

Environment

  • cpx: 1.5.0
  • NodeJS: v10.15.3
  • OS: macOS Catalina 10.15.2

Code

const os = require('os')
const cpx = require('cpx')

cpx.copySync('*.js', os.tmpdir())

Result

$ node tester.js
fs.js:114
    throw err;
    ^

Error: ENOENT: no such file or directory, copyfile 'tester.js' -> '../../../../../var/folders/1h/chh659g57sg3v_wks3v7z43h0000gn/T/tester.js'
    at Object.copyFileSync (fs.js:1723:3)
    at copyFile (/Users/nandenjin/sample_package/node_modules/cpx/node_modules/fs-extra/lib/copy-sync/copy-sync.js:68:8)
    at onFile (/Users/nandenjin/sample_package/node_modules/cpx/node_modules/fs-extra/lib/copy-sync/copy-sync.js:52:41)
    at getStats (/Users/nandenjin/sample_package/node_modules/cpx/node_modules/fs-extra/lib/copy-sync/copy-sync.js:47:39)
    at startCopy (/Users/nandenjin/sample_package/node_modules/cpx/node_modules/fs-extra/lib/copy-sync/copy-sync.js:37:10)
    at Object.copySync (/Users/nandenjin/sample_package/node_modules/cpx/node_modules/fs-extra/lib/copy-sync/copy-sync.js:32:10)
    at copyFileSync (/Users/nandenjin/sample_package/node_modules/cpx/lib/utils/copy-file-sync.js:50:12)
    at sourcePath (/Users/nandenjin/sample_package/node_modules/cpx/lib/copy-sync.js:63:13)
    at applyActionSync (/Users/nandenjin/sample_package/node_modules/cpx/lib/utils/apply-action-sync.js:36:9)
    at Object.copySync (/Users/nandenjin/sample_package/node_modules/cpx/lib/copy-sync.js:60:5)

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