From 7a8625d92ba194b19fbdf7cc6a7af09ca0e8b233 Mon Sep 17 00:00:00 2001 From: calebboyd Date: Sun, 2 Apr 2023 12:01:44 -0500 Subject: [PATCH] refactor: move lodash to dev deps --- package-lock.json | 35 ++++++++++++----------------------- package.json | 13 ++++++------- src/fs/SnapshotZipFS.ts | 17 +++++------------ 3 files changed, 23 insertions(+), 42 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6496dde..3d70c07 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,25 +1,23 @@ { "name": "nexe", - "version": "4.0.0-rc.2", + "version": "5.0.0-beta.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "nexe", - "version": "4.0.0-rc.2", + "version": "5.0.0-beta.1", "license": "MIT", "dependencies": { - "@calebboyd/semaphore": "^1.3.1", "@yarnpkg/fslib": "^2.6.0-rc.8", "@yarnpkg/libzip": "^2.2.2", "app-builder": "^7.0.4", - "archiver": "^5.3.0", + "archiver": "^5.3.1", "caw": "^2.0.1", "chalk": "^2.4.2", "download": "^8.0.0", "globby": "^11.0.2", "got": "^11.8.2", - "lodash": "^4.17.21", "meriyah": "^4.3.3", "minimist": "^1.2.6", "mkdirp": "^1.0.4", @@ -34,7 +32,7 @@ "nexe": "index.js" }, "devDependencies": { - "@types/archiver": "^5.1.1", + "@types/archiver": "^5.3.2", "@types/chai": "^4", "@types/download": "^6", "@types/globby": "^9", @@ -44,13 +42,14 @@ "@types/minimist": "^1.2.2", "@types/mkdirp": "^1.0.2", "@types/mocha": "^9.0.0", - "@types/multistream": "^2.1.1", + "@types/multistream": "^4.1.0", "@types/node": "^16.10.2", "@types/ora": "^3.2.0", "@types/rimraf": "3.0.2", "@types/semver": "^7.3.8", "chai": "^4.3.6", "execa": "^5.1.1", + "lodash": "^4.17.21", "mocha": "^10.0.0", "prettier": "^2.6.2", "ts-node": "^10.7.0", @@ -90,11 +89,6 @@ "js-tokens": "^4.0.0" } }, - "node_modules/@calebboyd/semaphore": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@calebboyd/semaphore/-/semaphore-1.3.1.tgz", - "integrity": "sha512-17z9me12RgAEcMhIgR7f+BiXKbzwF9p1VraI69OxrUUSWGuSMOyOTEHQNVtMKuVrkEDVD0/Av5uiGZPBMYZljw==" - }, "node_modules/@cspotcode/source-map-support": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", @@ -423,9 +417,9 @@ "dev": true }, "node_modules/@types/multistream": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/multistream/-/multistream-2.1.1.tgz", - "integrity": "sha512-PqavtNFnMyXRZS5vuW16wMOKeJUCD5PIGHdNBHzF5Urjncsij90hRQ82Wcy9+uSdnmrR2Gfao6xoJVq1wAWzbA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@types/multistream/-/multistream-4.1.0.tgz", + "integrity": "sha512-KiMkWve/Uu0qwCtNO6ZflMLjglkXsAdLdIwb31o5YQBbevdH2DF7inqebCli+F9am8McvEqCE4GXNOUZe8jOAg==", "dev": true, "dependencies": { "@types/node": "*" @@ -5205,11 +5199,6 @@ "js-tokens": "^4.0.0" } }, - "@calebboyd/semaphore": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@calebboyd/semaphore/-/semaphore-1.3.1.tgz", - "integrity": "sha512-17z9me12RgAEcMhIgR7f+BiXKbzwF9p1VraI69OxrUUSWGuSMOyOTEHQNVtMKuVrkEDVD0/Av5uiGZPBMYZljw==" - }, "@cspotcode/source-map-support": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", @@ -5510,9 +5499,9 @@ "dev": true }, "@types/multistream": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/multistream/-/multistream-2.1.1.tgz", - "integrity": "sha512-PqavtNFnMyXRZS5vuW16wMOKeJUCD5PIGHdNBHzF5Urjncsij90hRQ82Wcy9+uSdnmrR2Gfao6xoJVq1wAWzbA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@types/multistream/-/multistream-4.1.0.tgz", + "integrity": "sha512-KiMkWve/Uu0qwCtNO6ZflMLjglkXsAdLdIwb31o5YQBbevdH2DF7inqebCli+F9am8McvEqCE4GXNOUZe8jOAg==", "dev": true, "requires": { "@types/node": "*" diff --git a/package.json b/package.json index 1f0217b..1532eb8 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "nexe", "description": "Create a single executable out of your Node.js application", "license": "MIT", - "version": "4.0.0-rc.2", + "version": "5.0.0-beta.1", "contributors": [ "Craig Condon (http://crcn.io)", "Jared Allard ", @@ -44,17 +44,15 @@ ] }, "dependencies": { - "@calebboyd/semaphore": "^1.3.1", - "app-builder": "^7.0.4", "@yarnpkg/fslib": "^2.6.0-rc.8", "@yarnpkg/libzip": "^2.2.2", - "archiver": "^5.3.0", + "app-builder": "^7.0.4", + "archiver": "^5.3.1", "caw": "^2.0.1", "chalk": "^2.4.2", "download": "^8.0.0", "globby": "^11.0.2", "got": "^11.8.2", - "lodash": "^4.17.21", "meriyah": "^4.3.3", "minimist": "^1.2.6", "mkdirp": "^1.0.4", @@ -66,7 +64,7 @@ "webpack-config-prefabs": "0.0.5" }, "devDependencies": { - "@types/archiver": "^5.1.1", + "@types/archiver": "^5.3.2", "@types/chai": "^4", "@types/download": "^6", "@types/globby": "^9", @@ -76,13 +74,14 @@ "@types/minimist": "^1.2.2", "@types/mkdirp": "^1.0.2", "@types/mocha": "^9.0.0", - "@types/multistream": "^2.1.1", + "@types/multistream": "^4.1.0", "@types/node": "^16.10.2", "@types/ora": "^3.2.0", "@types/rimraf": "3.0.2", "@types/semver": "^7.3.8", "chai": "^4.3.6", "execa": "^5.1.1", + "lodash": "^4.17.21", "mocha": "^10.0.0", "prettier": "^2.6.2", "ts-node": "^10.7.0", diff --git a/src/fs/SnapshotZipFS.ts b/src/fs/SnapshotZipFS.ts index 13163ca..50a7565 100644 --- a/src/fs/SnapshotZipFS.ts +++ b/src/fs/SnapshotZipFS.ts @@ -7,20 +7,11 @@ import { RmdirOptions, OpendirOptions, } from '@yarnpkg/fslib' -import { ZipOpenFSOptions } from '@yarnpkg/fslib/lib/ZipOpenFS' -import { - WriteFileOptions, - CreateWriteStreamOptions, - BasePortableFakeFS, - Dirent, - MkdirOptions, - Dir, -} from '@yarnpkg/fslib/lib/FakeFS' +import { BasePortableFakeFS, Dirent, MkdirOptions, Dir } from '@yarnpkg/fslib/lib/FakeFS' import { CustomDir } from '@yarnpkg/fslib/lib/algorithms/opendir' import { FSPath, ppath, npath, Filename } from '@yarnpkg/fslib/lib/path' -// @ts-ignore import { resolve, toNamespacedPath } from 'path' -import { WriteStream, constants } from 'fs' +import { constants } from 'fs' export type SnapshotZipFSOptions = { baseFs: FakeFS @@ -28,7 +19,9 @@ export type SnapshotZipFSOptions = { zipFs: ZipFS } -import { uniqBy } from 'lodash' +const uniqBy = (arr: Array, pick: (...arg: any[]) => any) => { + return arr.filter((x, i, self) => i === self.findIndex((y) => pick(x) === pick(y))) +} function uniqReaddir(arr: Array) { return uniqBy(arr, (s: string | Dirent) => (typeof s === 'string' ? s : s.name)) }