diff --git a/.changeset/purple-pans-attend.md b/.changeset/purple-pans-attend.md new file mode 100644 index 0000000000..3580badbb7 --- /dev/null +++ b/.changeset/purple-pans-attend.md @@ -0,0 +1,5 @@ +--- +"app-builder-lib": patch +--- + +fix: App file walker including all node modules when a `node_modules/___` glob pattern is specified in `files` config (#6045) \ No newline at end of file diff --git a/.changeset/wet-suns-study.md b/.changeset/wet-suns-study.md deleted file mode 100644 index b9465872ab..0000000000 --- a/.changeset/wet-suns-study.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -"app-builder-lib": patch -"builder-util": patch -"builder-util-runtime": patch -"dmg-builder": patch -"electron-builder": patch -"electron-builder-squirrel-windows": patch -"electron-forge-maker-appimage": patch -"electron-forge-maker-nsis": patch -"electron-forge-maker-nsis-web": patch -"electron-forge-maker-snap": patch -"electron-publish": patch -"electron-updater": patch ---- - -Initial introduction of changset config diff --git a/.circleci/config.yml b/.circleci/config.yml index 9f6a655950..cac0dbcb9e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ version: 2 jobs: build: docker: - - image: circleci/node:14.16 + - image: circleci/node:14.17@sha256:e1e0d976a089e059389ccc740cc51dacea9cfeea1e7d617243ba06b89ae1ead2 steps: - checkout - restore_cache: diff --git a/.github/issue-labeler.yml b/.github/issue-labeler.yml index f0c154f69a..975922bd4b 100644 --- a/.github/issue-labeler.yml +++ b/.github/issue-labeler.yml @@ -8,8 +8,6 @@ bug: - ' bug ' docker: - docker -electron-updater: - - updater linux: - linux - ubuntu diff --git a/.github/renovate.json5 b/.github/renovate.json5 new file mode 100644 index 0000000000..2e73d7143e --- /dev/null +++ b/.github/renovate.json5 @@ -0,0 +1,45 @@ +{ + "extends": [ + "config:base", + ":semanticCommitType(chore)", + ":label(renovate)", + ":prHourlyLimit2", + ":prConcurrentLimit10", + ":prNotPending", + "group:recommended", + "group:monorepos", + ":enableVulnerabilityAlerts" + ], + "npm": { + "extends": [ + // ":automergePatch", + ":noUnscheduledUpdates", + ":maintainLockFilesWeekly", + "npm:unpublishSafe", + "helpers:disableTypesNodeMajor" + ], + "schedule": ["every weekend"], + "packageRules": [ + { + "groupName": "ESLint and Prettier", + "matchPackageNames": ["eslint", "prettier"], + "matchPackagePatterns": ["^eslint-config-", "^eslint-plugin-"] + }, + ] + }, + "circleci": { + "enabled": true, + // "automerge": true, + // "automergeType": "branch", + "schedule": ["before 9am on Friday"], + "pinDigests": true, + "semanticCommitScope": "docker", + "semanticCommitType": "ci", + "packageRules": [ + { + "groupName": "Node Docker digests in CircleCI", + "matchPackageNames": ["circleci/node", "node"] + } + ] + } +} diff --git a/.github/workflows/issue-labeler.yml b/.github/workflows/issue-labeler.yml index 6b853beca1..3105172dd6 100644 --- a/.github/workflows/issue-labeler.yml +++ b/.github/workflows/issue-labeler.yml @@ -7,7 +7,7 @@ jobs: triage: runs-on: ubuntu-latest steps: - - uses: github/issue-labeler@v2.0 + - uses: github/issue-labeler@v2.4 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" configuration-path: .github/issue-labeler.yml diff --git a/.github/workflows/label-manager.yml b/.github/workflows/label-manager.yml index 6e2369a9c4..f5633adbe7 100644 --- a/.github/workflows/label-manager.yml +++ b/.github/workflows/label-manager.yml @@ -5,7 +5,7 @@ jobs: name: DefaultLabelsActions runs-on: ubuntu-latest steps: - - uses: actions/checkout@1.0.0 + - uses: actions/checkout@v2.3.4 - uses: lannonbr/issue-label-manager-action@3.0.0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/pr-release.yml b/.github/workflows/pr-release.yml index 6b010f1b70..2b459718f2 100644 --- a/.github/workflows/pr-release.yml +++ b/.github/workflows/pr-release.yml @@ -32,11 +32,13 @@ jobs: - name: install dependencies run: pnpm install - - name: create versions + - name: create versions PR & prepare publish uses: changesets/action@master with: - # version: pnpm ci:version - commit: 'chore: update versions' - title: 'chore: update versions' + version: pnpm ci:version + commit: 'chore(deploy): Bump versions' + title: 'chore(deploy): Bump versions' + publish: pnpm ci:publish env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml deleted file mode 100644 index 001572b821..0000000000 --- a/.github/workflows/publish-release.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: Publish Releases - -on: - push: - tags: - - 'v*' - -env: - HUSKY: 0 # Bypass husky commit hook for CI - PNPM_CACHE_FOLDER: .pnpm-store -jobs: - publish: - timeout-minutes: 15 - runs-on: ubuntu-latest - steps: - - name: checkout code repository - uses: actions/checkout@v2 - with: - # This makes Actions fetch all Git history so that Changesets can generate changelogs with the correct commits - fetch-depth: 0 - - - name: setup node.js - uses: actions/setup-node@v2 - with: - node-version: 14 - - - name: install pnpm - run: npm i pnpm@latest -g - - - name: setup pnpm config - run: pnpm config set store-dir $PNPM_CACHE_FOLDER - - - name: install dependencies - run: pnpm install - - - name: compile - run: pnpm compile - - # TODO: Create Release on Github as Prerelease and Publish to NPM as @next tag - - # - name: publish to NPM - # run: pnpm publish --dry-run -r --filter ./packages --tag next - - # We only want to bundle source code for Github Release artifact - - name: clean artifacts - run: git clean -xfd - - # - uses: ncipollo/release-action@v1 - # with: - # artifacts: "CHANGELOG.md,CONTRIBUTING.md,LICENSE,README.md,docker,mkdocs.yml,netlify.toml,package.json,packages,pnpm-lock.yaml,pnpm-workspace.yaml,scripts,test,tsconfig-base.json,tsconfig.json,typings" - # # bodyFile: "body.md" - # token: ${{ secrets.GITHUB_TOKEN }} - diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 35b9946689..2299fcc235 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -20,7 +20,7 @@ jobs: with: node-version: 14 - name: Cache .pnpm-store - uses: actions/cache@v1 + uses: actions/cache@v2 with: path: ~/.pnpm-store key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} @@ -33,7 +33,7 @@ jobs: - run: pnpm lint - run: pnpm lint-deps - name: Cache ~/.cache/electron - uses: actions/cache@v1 + uses: actions/cache@v2 with: path: ~/.cache/electron key: v-11.0.0-electron @@ -52,7 +52,7 @@ jobs: with: node-version: 14 - name: Cache .pnpm-store - uses: actions/cache@v1 + uses: actions/cache@v2 with: path: $HOMEPATH/.pnpm-store key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} @@ -63,7 +63,7 @@ jobs: - run: pnpm install --frozen-lockfile - run: pnpm compile - name: Cache ~/.cache/electron - uses: actions/cache@v1 + uses: actions/cache@v2 with: path: $HOMEPATH/.cache/electron key: v-11.0.0-windows-electron diff --git a/CHANGELOG.md b/CHANGELOG.md index 7e3a31fc8b..4f8b62c524 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +# [](https://github.com/electron-userland/electron-builder/compare/v22.11.8...v) (2021-07-14) + + +### Bug Fixes + +* **deploy:** consolidating versioning commands into package.json ([6066681](https://github.com/electron-userland/electron-builder/commit/6066681077c8ba730155751b83b4550add9b0dcf)) +* **deploy:** deactivate husky hooks for automatic versioning PR ([#6041](https://github.com/electron-userland/electron-builder/issues/6041)) ([0d4d305](https://github.com/electron-userland/electron-builder/commit/0d4d3056b440cc45a1f1a15ea4a27c688cb0e96e)) +* do not show MessageBox when app was killed (on not running) ([#6043](https://github.com/electron-userland/electron-builder/issues/6043)) ([0561674](https://github.com/electron-userland/electron-builder/commit/0561674b6c491ee1cfa0ba838f5c5d59ce205124)) +* **nsis:** generate uninstaller without elevating ([#5575](https://github.com/electron-userland/electron-builder/issues/5575)) ([#6013](https://github.com/electron-userland/electron-builder/issues/6013)) ([b00aea3](https://github.com/electron-userland/electron-builder/commit/b00aea32107cd379b8489f7abea493d16fe38197)) +* updating electron-osx-sign ([#6021](https://github.com/electron-userland/electron-builder/issues/6021)) ([6f63092](https://github.com/electron-userland/electron-builder/commit/6f630927ca949d8bdcde06e4eafaa63ce3636d5a)), closes [#6010](https://github.com/electron-userland/electron-builder/issues/6010) [#5190](https://github.com/electron-userland/electron-builder/issues/5190) +* write blockmap file for mac zip archives ([#6023](https://github.com/electron-userland/electron-builder/issues/6023)) ([0447b24](https://github.com/electron-userland/electron-builder/commit/0447b2457beb03648f1e7e841cd0a8d12d7e4aea)), closes [#4299](https://github.com/electron-userland/electron-builder/issues/4299) + + + **Here changelog only for previous major releases and without detailed explanations.** To see changes for current major release, please use [GiHub releases](https://github.com/electron-userland/electron-builder/releases). diff --git a/README.md b/README.md index 35dd751609..1a78318fcb 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ See documentation on [electron.build](https://www.electron.build). "dist": "electron-builder" } ``` - Then you can run `yarn dist` (to package in a distributable format (e.g. dmg, windows installer, deb package)) or `yarn pack` (only generates the package directory without really packaging it. This is useful for testing purposes). + Then you can run `yarn dist` (to package in a distributable format (e.g. dmg, windows installer, deb package)) or `yarn run pack` (only generates the package directory without really packaging it. This is useful for testing purposes). To ensure your native dependencies are always matched electron version, simply add script `"postinstall": "electron-builder install-app-deps"` to your `package.json`. diff --git a/package.json b/package.json index a0331c05f2..643bbe0a52 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,9 @@ "test-linux": "docker run --rm -ti -e UPDATE_SNAPSHOT=${UPDATE_SNAPSHOT:-false} -e TEST_FILES=\"${TEST_FILES:-HoistedNodeModuleTest}\" -v $(pwd):/project -v $(pwd)-node-modules:/project/node_modules -v $HOME/Library/Caches/electron:/root/.cache/electron -v $HOME/Library/Caches/electron-builder:/root/.cache/electron-builder electronuserland/builder:wine /bin/bash -c \"pnpm install && pnpm node ./test/out/helpers/runTests.js\"", "test-update": "UPDATE_SNAPSHOT=true pnpm test-all", "docker-images": "docker/build.sh", - "release": "pnpm compile && ./scripts/publish-packages.sh && pnpx --package conventional-changelog-cli conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md", + "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md", + "ci:version": "pnpm changelog && changeset version", + "ci:publish": "pnpm compile && pnpm publish -r --filter ./packages --tag next --dry-run", "schema": "typescript-json-schema packages/app-builder-lib/tsconfig.json Configuration --out packages/app-builder-lib/scheme.json --noExtraProps --useTypeOfKeyword --strictNullChecks --required && node ./scripts/fix-schema.js", "jsdoc": "ts2jsdoc packages/builder-util-runtime packages/builder-util packages/app-builder-lib packages/electron-builder packages/electron-publish", "jsdoc2md": "node scripts/jsdoc2md.js", @@ -37,30 +39,30 @@ "///": "All dependencies for all packages (hoisted)", "////": "All typings are added into root `package.json` to avoid duplication errors in the IDE compiler (several `node.d.ts` files).", "dependencies": { - "dmg-license": "~1.0.9" + "dmg-license": "1.0.9" }, "devDependencies": { - "@babel/plugin-transform-modules-commonjs": "^7.14.5", - "@changesets/changelog-git": "^0.1.7", - "@changesets/cli": "^2.16.0", - "@typescript-eslint/eslint-plugin": "^4.28.1", - "@typescript-eslint/parser": "^4.28.1", - "conventional-changelog-cli": "^2.1.1", - "eslint": "^7.30.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-prettier": "^3.4.0", - "fs-extra": "^10.0.0", - "globby": "^11.0.4", - "husky": "~6.0.0", - "jest-cli": "^27.0.6", - "jsdoc-to-markdown": "^7.0.1", - "lint-staged": "^11.0.0", - "path-sort": "^0.1.0", - "prettier": "^2.3.2", - "source-map-support": "^0.5.19", - "ts-jsdoc": "^3.2.2", - "typescript": "~4.3.5", - "typescript-json-schema": "^0.50.1", - "v8-compile-cache": "^2.3.0" + "@babel/plugin-transform-modules-commonjs": "7.14.5", + "@changesets/changelog-git": "0.1.7", + "@changesets/cli": "2.16.0", + "@typescript-eslint/eslint-plugin": "4.28.4", + "@typescript-eslint/parser": "4.28.4", + "conventional-changelog-cli": "2.1.1", + "eslint": "7.30.0", + "eslint-config-prettier": "8.3.0", + "eslint-plugin-prettier": "3.4.0", + "fs-extra": "10.0.0", + "globby": "11.0.4", + "husky": "7.0.1", + "jest-cli": "27.0.6", + "jsdoc-to-markdown": "7.0.1", + "lint-staged": "11.0.1", + "path-sort": "0.1.0", + "prettier": "2.3.2", + "source-map-support": "0.5.19", + "ts-jsdoc": "3.2.2", + "typescript": "4.3.5", + "typescript-json-schema": "0.50.1", + "v8-compile-cache": "2.3.0" } } diff --git a/packages/app-builder-lib/CHANGELOG.md b/packages/app-builder-lib/CHANGELOG.md new file mode 100644 index 0000000000..62e12b6641 --- /dev/null +++ b/packages/app-builder-lib/CHANGELOG.md @@ -0,0 +1,10 @@ +# app-builder-lib + +## 22.11.9 +### Patch Changes + +- 1272afc5: Initial introduction of changset config +- Updated dependencies [1272afc5] + - builder-util@22.11.9 + - builder-util-runtime@8.7.8 + - electron-publish@22.11.9 diff --git a/packages/app-builder-lib/package.json b/packages/app-builder-lib/package.json index 0851af7c3b..6fd6470dc5 100644 --- a/packages/app-builder-lib/package.json +++ b/packages/app-builder-lib/package.json @@ -1,7 +1,7 @@ { "name": "app-builder-lib", "description": "electron-builder lib", - "version": "22.11.8", + "version": "22.11.9", "main": "out/index.js", "files": [ "out", @@ -74,32 +74,32 @@ }, "///": "babel in devDependencies for proton tests", "devDependencies": { - "@babel/core": "^7.14.6", - "@babel/plugin-proposal-class-properties": "^7.13.0", - "@babel/plugin-proposal-decorators": "^7.14.2", - "@babel/plugin-proposal-do-expressions": "^7.14.0", - "@babel/plugin-proposal-export-default-from": "^7.12.13", - "@babel/plugin-proposal-export-namespace-from": "^7.14.2", - "@babel/plugin-proposal-function-bind": "^7.12.13", - "@babel/plugin-proposal-function-sent": "^7.12.13", - "@babel/plugin-proposal-json-strings": "^7.14.2", - "@babel/plugin-proposal-logical-assignment-operators": "^7.14.2", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.2", - "@babel/plugin-proposal-numeric-separator": "^7.14.2", - "@babel/plugin-proposal-optional-chaining": "^7.14.2", - "@babel/plugin-proposal-pipeline-operator": "^7.12.13", - "@babel/plugin-proposal-throw-expressions": "^7.12.13", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/preset-env": "^7.14.7", - "@babel/preset-react": "^7.13.13", - "@types/debug": "^4.1.6", - "@types/ejs": "^3.0.6", - "@types/fs-extra": "^9.0.11", - "@types/hosted-git-info": "^3.0.1", - "@types/is-ci": "^3.0.0", - "@types/js-yaml": "^4.0.1", - "@types/semver": "^7.3.6", + "@babel/core": "7.14.6", + "@babel/plugin-proposal-class-properties": "7.14.5", + "@babel/plugin-proposal-decorators": "7.14.5", + "@babel/plugin-proposal-do-expressions": "7.14.5", + "@babel/plugin-proposal-export-default-from": "7.14.5", + "@babel/plugin-proposal-export-namespace-from": "7.14.5", + "@babel/plugin-proposal-function-bind": "7.14.5", + "@babel/plugin-proposal-function-sent": "7.14.5", + "@babel/plugin-proposal-json-strings": "7.14.5", + "@babel/plugin-proposal-logical-assignment-operators": "7.14.5", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.14.5", + "@babel/plugin-proposal-numeric-separator": "7.14.5", + "@babel/plugin-proposal-optional-chaining": "7.14.5", + "@babel/plugin-proposal-pipeline-operator": "7.14.5", + "@babel/plugin-proposal-throw-expressions": "7.14.5", + "@babel/plugin-syntax-dynamic-import": "7.8.3", + "@babel/plugin-syntax-import-meta": "7.10.4", + "@babel/preset-env": "7.14.7", + "@babel/preset-react": "7.14.5", + "@types/debug": "4.1.6", + "@types/ejs": "3.0.7", + "@types/fs-extra": "9.0.12", + "@types/hosted-git-info": "3.0.2", + "@types/is-ci": "3.0.0", + "@types/js-yaml": "4.0.2", + "@types/semver": "7.3.7", "dmg-builder": "workspace:*", "electron-builder-squirrel-windows": "workspace:*" }, diff --git a/packages/app-builder-lib/scheme.json b/packages/app-builder-lib/scheme.json index 0959748343..978022506c 100644 --- a/packages/app-builder-lib/scheme.json +++ b/packages/app-builder-lib/scheme.json @@ -2621,6 +2621,13 @@ ], "description": "The target package type: list of `default`, `dmg`, `mas`, `mas-dev`, `pkg`, `7z`, `zip`, `tar.xz`, `tar.lz`, `tar.gz`, `tar.bz2`, `dir`. Defaults to `default` (dmg and zip for Squirrel.Mac)." }, + "timestamp": { + "type": [ + "null", + "string" + ], + "description": "Specify the URL of the timestamp authority server" + }, "type": { "anyOf": [ { @@ -3213,6 +3220,13 @@ ], "description": "The target package type: list of `default`, `dmg`, `mas`, `mas-dev`, `pkg`, `7z`, `zip`, `tar.xz`, `tar.lz`, `tar.gz`, `tar.bz2`, `dir`. Defaults to `default` (dmg and zip for Squirrel.Mac)." }, + "timestamp": { + "type": [ + "null", + "string" + ], + "description": "Specify the URL of the timestamp authority server" + }, "type": { "anyOf": [ { @@ -6567,4 +6581,4 @@ } }, "type": "object" -} \ No newline at end of file +} diff --git a/packages/app-builder-lib/src/fileMatcher.ts b/packages/app-builder-lib/src/fileMatcher.ts index f17a221258..50360c6fe7 100644 --- a/packages/app-builder-lib/src/fileMatcher.ts +++ b/packages/app-builder-lib/src/fileMatcher.ts @@ -156,6 +156,8 @@ export function getMainFileMatchers( patterns.push("package.json") } + customFirstPatterns.push("!**/node_modules") + // https://github.com/electron-userland/electron-builder/issues/1482 const relativeBuildResourceDir = path.relative(matcher.from, buildResourceDir) if (relativeBuildResourceDir.length !== 0 && !relativeBuildResourceDir.startsWith(".")) { diff --git a/packages/app-builder-lib/src/macPackager.ts b/packages/app-builder-lib/src/macPackager.ts index 5eec093391..6921f8e835 100644 --- a/packages/app-builder-lib/src/macPackager.ts +++ b/packages/app-builder-lib/src/macPackager.ts @@ -241,17 +241,15 @@ export default class MacPackager extends PlatformPackager { let binaries = options.binaries || undefined if (binaries) { // Accept absolute paths for external binaries, else resolve relative paths from the artifact's app Contents path. - const userDefinedBinaries = await Promise.all( - binaries.map(async destination => { - if (await statOrNull(destination)) { - return destination - } - return path.resolve(appPath, destination) - }) - ) + const userDefinedBinaries = await Promise.all(binaries.map(async (destination) => { + if (await statOrNull(destination)) { + return destination + } + return path.resolve(appPath, destination) + })) // Insert at front to prioritize signing. We still sort by depth next binaries = userDefinedBinaries.concat(binaries) - log.info("Signing addtional user-defined binaries: " + JSON.stringify(userDefinedBinaries, null, 1)) + log.info('Signing addtional user-defined binaries: ' + JSON.stringify(userDefinedBinaries, null, 1)) } const signOptions: any = { @@ -286,6 +284,7 @@ export default class MacPackager extends PlatformPackager { app: appPath, keychain: keychainFile || undefined, binaries, + timestamp: isMas ? masOptions?.timestamp : options.timestamp, requirements: isMas || this.platformSpecificBuildOptions.requirements == null ? undefined : await this.getResource(this.platformSpecificBuildOptions.requirements), // https://github.com/electron-userland/electron-osx-sign/issues/196 // will fail on 10.14.5+ because a signed but unnotarized app is also rejected. diff --git a/packages/app-builder-lib/src/options/macOptions.ts b/packages/app-builder-lib/src/options/macOptions.ts index d8730a6ab3..b0ff2389c0 100644 --- a/packages/app-builder-lib/src/options/macOptions.ts +++ b/packages/app-builder-lib/src/options/macOptions.ts @@ -170,6 +170,11 @@ export interface MacConfiguration extends PlatformSpecificBuildOptions { * Regex or an array of regex's that signal skipping signing a file. */ readonly signIgnore?: Array | string | null + + /** + * Specify the URL of the timestamp authority server + */ + readonly timestamp?: string | null } export interface DmgOptions extends TargetSpecificOptions { diff --git a/packages/app-builder-lib/src/util/AppFileWalker.ts b/packages/app-builder-lib/src/util/AppFileWalker.ts index 1e8a426bd8..4fc9d8155a 100644 --- a/packages/app-builder-lib/src/util/AppFileWalker.ts +++ b/packages/app-builder-lib/src/util/AppFileWalker.ts @@ -48,13 +48,6 @@ export abstract class FileCopyHelper { } function createAppFilter(matcher: FileMatcher, packager: Packager): Filter | null { - const includeSubNodeModules: boolean = packager.config.includeSubNodeModules || false - - // configure the matcher to act *exactly* like how it would according to - // how the system currently works: filter out all node_modules directories - // Need to splice since glob patterns are order-dependent. - matcher.patterns.splice(matcher.patterns.indexOf("**/*") + 1, 0, "!**/node_modules") - if (packager.areNodeModulesHandledExternally) { return matcher.isEmpty() ? null : matcher.createFilter() } @@ -69,28 +62,18 @@ function createAppFilter(matcher: FileMatcher, packager: Packager): Filter | nul const filter = matcher.createFilter() return (file, fileStat) => { - const matchesFilter = filter(file, fileStat) if (!nodeModulesFilter(file, fileStat)) { - // it's a node_modules directory - - // if includeSubNodeModules is true, then we just return true - we want - // all of them - if (includeSubNodeModules) { - return true - } + return !!packager.config.includeSubNodeModules } - return matchesFilter + return filter(file, fileStat) } } /** @internal */ export class AppFileWalker extends FileCopyHelper implements FileConsumer { - readonly includeSubNodeModules: boolean - readonly matcherFilter - + readonly matcherFilter: any constructor(matcher: FileMatcher, packager: Packager) { super(addAllPatternIfNeed(matcher), createAppFilter(matcher, packager), packager) - this.includeSubNodeModules = packager.config.includeSubNodeModules || false this.matcherFilter = matcher.createFilter() } @@ -102,18 +85,10 @@ export class AppFileWalker extends FileCopyHelper implements FileConsumer { // but do not filter if we inside node_modules dir // update: solution disabled, node module resolver should support such setup if (file.endsWith(nodeModulesSystemDependentSuffix)) { - // it's a node_modules directory - - // if includeSubNodeModules is true, then we just do nothing - we - // definitely want it. But if its false (the default), then we match - // and if the match is false, we return false (but if the match is - // true, we do nothing). - if (!this.includeSubNodeModules) { + if (!this.packager.config.includeSubNodeModules) { const matchesFilter = this.matcherFilter(file, fileStat) - // if it matched the patterns filter, then we just do nothing - we - // want it. Otherwise, it didn't match the filter so we need to - // return false here. if (!matchesFilter) { + // Skip the file return false } } diff --git a/packages/app-builder-lib/src/util/yarn.ts b/packages/app-builder-lib/src/util/yarn.ts index 75148dcebe..8eaf68a077 100644 --- a/packages/app-builder-lib/src/util/yarn.ts +++ b/packages/app-builder-lib/src/util/yarn.ts @@ -74,6 +74,15 @@ export function getGypEnv(frameworkInfo: DesktopFrameworkInfo, platform: NodeJS. } } +function checkYarnBerry () { + const npmUserAgent = process.env["npm_config_user_agent"] || '' + const regex = /yarn\/(\d+)\./gm; + + const yarnVersionMatch = regex.exec(npmUserAgent); + const yarnMajorVersion = Number(yarnVersionMatch?.[1] ?? 0) + return yarnMajorVersion >= 2; +} + function installDependencies(appDir: string, options: RebuildOptions): Promise { const platform = options.platform || process.platform const arch = options.arch || process.arch @@ -82,9 +91,8 @@ function installDependencies(appDir: string, options: RebuildOptions): Promise=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.14.6 - '@babel/helper-annotate-as-pure': 7.14.5 - '@babel/helper-function-name': 7.14.5 - '@babel/helper-member-expression-to-functions': 7.14.5 - '@babel/helper-optimise-call-expression': 7.14.5 - '@babel/helper-replace-supers': 7.14.5 - '@babel/helper-split-export-declaration': 7.14.5 - transitivePeerDependencies: - - supports-color - dev: true - /@babel/helper-create-class-features-plugin/7.14.6_@babel+core@7.14.6: resolution: {integrity: sha512-Z6gsfGofTxH/+LQXqYEK45kxmcensbzmk/oi8DmaQytlQCgqNZt9XQF8iqlI/SeXWVjaMNxvYvzaYw+kh42mDg==} engines: {node: '>=6.9.0'} @@ -604,7 +587,7 @@ packages: '@babel/helper-module-imports': 7.14.5 '@babel/helper-plugin-utils': 7.14.5 '@babel/traverse': 7.14.7 - debug: 4.3.1 + debug: 4.3.2 lodash.debounce: 4.0.8 resolve: 1.20.0 semver: 6.3.0 @@ -639,13 +622,6 @@ packages: dependencies: '@babel/types': 7.14.5 - /@babel/helper-member-expression-to-functions/7.14.5: - resolution: {integrity: sha512-UxUeEYPrqH1Q/k0yRku1JE7dyfyehNwT6SVkMHvYvPDv4+uu627VXBckVj891BO8ruKBkiDoGnZf4qPDD8abDQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.14.5 - dev: true - /@babel/helper-member-expression-to-functions/7.14.7: resolution: {integrity: sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==} engines: {node: '>=6.9.0'} @@ -738,7 +714,7 @@ packages: dependencies: '@babel/helper-function-name': 7.14.5 '@babel/template': 7.14.5 - '@babel/traverse': 7.14.5 + '@babel/traverse': 7.14.7 '@babel/types': 7.14.5 transitivePeerDependencies: - supports-color @@ -817,7 +793,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.14.6 - '@babel/helper-create-class-features-plugin': 7.14.5_@babel+core@7.14.6 + '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.6 '@babel/helper-plugin-utils': 7.14.5 transitivePeerDependencies: - supports-color @@ -844,7 +820,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.14.6 - '@babel/helper-create-class-features-plugin': 7.14.5_@babel+core@7.14.6 + '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.6 '@babel/helper-plugin-utils': 7.14.5 '@babel/plugin-syntax-decorators': 7.14.5_@babel+core@7.14.6 transitivePeerDependencies: @@ -1982,7 +1958,7 @@ packages: '@babel/helper-split-export-declaration': 7.14.5 '@babel/parser': 7.14.7 '@babel/types': 7.14.5 - debug: 4.3.1 + debug: 4.3.2 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -2208,7 +2184,7 @@ packages: engines: {node: ^10.12.0 || >=12.0.0} dependencies: ajv: 6.12.6 - debug: 4.3.1 + debug: 4.3.2 espree: 7.3.1 globals: 13.9.0 ignore: 4.0.6 @@ -2225,7 +2201,7 @@ packages: engines: {node: '>=10.10.0'} dependencies: '@humanwhocodes/object-schema': 1.2.0 - debug: 4.3.1 + debug: 4.3.2 minimatch: 3.0.4 transitivePeerDependencies: - supports-color @@ -2553,8 +2529,8 @@ packages: resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} engines: {node: '>= 6'} - /@types/archiver/5.1.0: - resolution: {integrity: sha512-baFOhanb/hxmcOd1Uey2TfFg43kTSmM6py1Eo7Rjbv/ivcl7PXLhY0QgXGf50Hx/eskGCFqPfhs/7IZLb15C5g==} + /@types/archiver/5.1.1: + resolution: {integrity: sha512-heuaCk0YH5m274NOLSi66H1zX6GtZoMsdE6TYFcpFFjBjg0FoU4i4/M/a/kNlgNg26Xk3g364mNOYe1JaiEPOQ==} dependencies: '@types/glob': 7.1.3 dev: true @@ -2597,8 +2573,8 @@ packages: /@types/debug/4.1.6: resolution: {integrity: sha512-7fDOJFA/x8B+sO1901BmHlf5dE1cxBU8mRXj8QOEDnn16hhGJv/IHxJtZhvsabZsIMn0eLIyeOKAeqSNJJYTpA==} - /@types/ejs/3.0.6: - resolution: {integrity: sha512-fj1hi+ZSW0xPLrJJD+YNwIh9GZbyaIepG26E/gXvp8nCa2pYokxUYO1sK9qjGxp2g8ryZYuon7wmjpwE2cyASQ==} + /@types/ejs/3.0.7: + resolution: {integrity: sha512-AUxAGNIPr7wQmzdFMNhHy/RkR5kk8gSzAZIuCYY//6ZYJKHvnjezmoEYP34coPleUPnqrUWt03cCq7NzNaA/qg==} dev: true /@types/estree/0.0.48: @@ -2610,19 +2586,25 @@ packages: dependencies: '@types/node': 15.12.2 + /@types/fs-extra/9.0.12: + resolution: {integrity: sha512-I+bsBr67CurCGnSenZZ7v94gd3tc3+Aj2taxMT4yu4ABLuOgOjeFxX3dokG24ztSRg5tnT00sL8BszO7gSMoIw==} + dependencies: + '@types/node': 16.0.0 + dev: true + /@types/glob/7.1.3: resolution: {integrity: sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==} dependencies: '@types/minimatch': 3.0.4 - '@types/node': 15.12.2 + '@types/node': 16.0.0 /@types/graceful-fs/4.1.5: resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==} dependencies: '@types/node': 16.0.0 - /@types/hosted-git-info/3.0.1: - resolution: {integrity: sha512-aiwBC0e2PndtyQ9pOwA9ujBJ6ayysuvbQzQ4M38LGHLZniuTFAqjlKnW5TZLqpF3rgD+kevFoLjkw8ZJSdqhzQ==} + /@types/hosted-git-info/3.0.2: + resolution: {integrity: sha512-RURNTeEFUwF+ifnp7kK3WLLlTmBSlRynLNS9jeAsI6RHtSrupV0l0nO6kmpaz75EUJVexy348bR452SvmH98vQ==} dev: true /@types/is-ci/3.0.0: @@ -2655,6 +2637,10 @@ packages: resolution: {integrity: sha512-xdOvNmXmrZqqPy3kuCQ+fz6wA0xU5pji9cd1nDrflWaAWtYLLGk5ykW0H6yg5TVyehHP1pfmuuSaZkhP+kspVA==} dev: true + /@types/js-yaml/4.0.2: + resolution: {integrity: sha512-KbeHS/Y4R+k+5sWXEYzAZKuB1yQlZtEghuhRxrVRLaqhtoG5+26JwQsa4HyS3AWX8v1Uwukma5HheduUDskasA==} + dev: true + /@types/json-schema/7.0.7: resolution: {integrity: sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==} dev: true @@ -2717,10 +2703,10 @@ packages: /@types/prettier/2.3.1: resolution: {integrity: sha512-NVkb4p4YjI8E3O6+1m8I+8JlMpFZwfSbPGdaw0wXuyPRTEz0SLKwBUWNSO7Maoi8tQMPC8JLZNWkrcKPI7/sLA==} - /@types/sax/1.2.1: - resolution: {integrity: sha512-dqYdvN7Sbw8QT/0Ci5rhjE4/iCMJEM0Y9rHpCu+gGXD9Lwbz28t6HI2yegsB6BoV1sShRMU6lAmAcgRjmFy7LA==} + /@types/sax/1.2.3: + resolution: {integrity: sha512-+QSw6Tqvs/KQpZX8DvIl3hZSjNFLW/OqE5nlyHXtTwODaJvioN2rOWpBNEWZp2HZUFhOh+VohmJku/WxEXU2XA==} dependencies: - '@types/node': 15.12.2 + '@types/node': 16.0.0 dev: true /@types/semver/6.2.3: @@ -2730,8 +2716,12 @@ packages: /@types/semver/7.3.6: resolution: {integrity: sha512-0caWDWmpCp0uifxFh+FaqK3CuZ2SkRR/ZRxAV5+zNdC3QVUi6wyOJnefhPvtNt8NQWXB5OA93BUvZsXpWat2Xw==} - /@types/source-map-support/0.5.3: - resolution: {integrity: sha512-fvjMjVH8Rmokw2dWh1dkj90iX5R8FPjeZzjNH+6eFXReh0QnHFf1YBl3B0CF0RohIAA3SDRJsGeeUWKl6d7HqA==} + /@types/semver/7.3.7: + resolution: {integrity: sha512-4g1jrL98mdOIwSOUh6LTlB0Cs9I0dQPwINUhBg7C6pN4HLr8GS8xsksJxilW6S6dQHVi2K/o+lQuQcg7LroCnw==} + dev: true + + /@types/source-map-support/0.5.4: + resolution: {integrity: sha512-9zGujX1sOPg32XLyfgEB/0G9ZnrjthL/Iv1ZfuAjj8LEilHZEpQSQs1scpRXPhHzGYgWiLz9ldF1cI8JhL+yMw==} dependencies: source-map: 0.6.1 dev: true @@ -2774,8 +2764,8 @@ packages: '@types/yargs-parser': 20.2.1 dev: false - /@typescript-eslint/eslint-plugin/4.28.1_37ea0521d4014002f404f9b7c2b7f3d2: - resolution: {integrity: sha512-9yfcNpDaNGQ6/LQOX/KhUFTR1sCKH+PBr234k6hI9XJ0VP5UqGxap0AnNwBnWFk1MNyWBylJH9ZkzBXC+5akZQ==} + /@typescript-eslint/eslint-plugin/4.28.4_7cc26dc0f453b695a0f705b876899c75: + resolution: {integrity: sha512-s1oY4RmYDlWMlcV0kKPBaADn46JirZzvvH7c2CtAqxCY96S538JRBAzt83RrfkDheV/+G/vWNK0zek+8TB3Gmw==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: '@typescript-eslint/parser': ^4.0.0 @@ -2785,10 +2775,10 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/experimental-utils': 4.28.1_eslint@7.30.0+typescript@4.3.5 - '@typescript-eslint/parser': 4.28.1_eslint@7.30.0+typescript@4.3.5 - '@typescript-eslint/scope-manager': 4.28.1 - debug: 4.3.1 + '@typescript-eslint/experimental-utils': 4.28.4_eslint@7.30.0+typescript@4.3.5 + '@typescript-eslint/parser': 4.28.4_eslint@7.30.0+typescript@4.3.5 + '@typescript-eslint/scope-manager': 4.28.4 + debug: 4.3.2 eslint: 7.30.0 functional-red-black-tree: 1.0.1 regexpp: 3.2.0 @@ -2799,16 +2789,16 @@ packages: - supports-color dev: true - /@typescript-eslint/experimental-utils/4.28.1_eslint@7.30.0+typescript@4.3.5: - resolution: {integrity: sha512-n8/ggadrZ+uyrfrSEchx3jgODdmcx7MzVM2sI3cTpI/YlfSm0+9HEUaWw3aQn2urL2KYlWYMDgn45iLfjDYB+Q==} + /@typescript-eslint/experimental-utils/4.28.4_eslint@7.30.0+typescript@4.3.5: + resolution: {integrity: sha512-OglKWOQRWTCoqMSy6pm/kpinEIgdcXYceIcH3EKWUl4S8xhFtN34GQRaAvTIZB9DD94rW7d/U7tUg3SYeDFNHA==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: eslint: '*' dependencies: '@types/json-schema': 7.0.7 - '@typescript-eslint/scope-manager': 4.28.1 - '@typescript-eslint/types': 4.28.1 - '@typescript-eslint/typescript-estree': 4.28.1_typescript@4.3.5 + '@typescript-eslint/scope-manager': 4.28.4 + '@typescript-eslint/types': 4.28.4 + '@typescript-eslint/typescript-estree': 4.28.4_typescript@4.3.5 eslint: 7.30.0 eslint-scope: 5.1.1 eslint-utils: 3.0.0_eslint@7.30.0 @@ -2817,8 +2807,8 @@ packages: - typescript dev: true - /@typescript-eslint/parser/4.28.1_eslint@7.30.0+typescript@4.3.5: - resolution: {integrity: sha512-UjrMsgnhQIIK82hXGaD+MCN8IfORS1CbMdu7VlZbYa8LCZtbZjJA26De4IPQB7XYZbL8gJ99KWNj0l6WD0guJg==} + /@typescript-eslint/parser/4.28.4_eslint@7.30.0+typescript@4.3.5: + resolution: {integrity: sha512-4i0jq3C6n+og7/uCHiE6q5ssw87zVdpUj1k6VlVYMonE3ILdFApEzTWgppSRG4kVNB/5jxnH+gTeKLMNfUelQA==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 @@ -2827,31 +2817,31 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 4.28.1 - '@typescript-eslint/types': 4.28.1 - '@typescript-eslint/typescript-estree': 4.28.1_typescript@4.3.5 - debug: 4.3.1 + '@typescript-eslint/scope-manager': 4.28.4 + '@typescript-eslint/types': 4.28.4 + '@typescript-eslint/typescript-estree': 4.28.4_typescript@4.3.5 + debug: 4.3.2 eslint: 7.30.0 typescript: 4.3.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager/4.28.1: - resolution: {integrity: sha512-o95bvGKfss6705x7jFGDyS7trAORTy57lwJ+VsYwil/lOUxKQ9tA7Suuq+ciMhJc/1qPwB3XE2DKh9wubW8YYA==} + /@typescript-eslint/scope-manager/4.28.4: + resolution: {integrity: sha512-ZJBNs4usViOmlyFMt9X9l+X0WAFcDH7EdSArGqpldXu7aeZxDAuAzHiMAeI+JpSefY2INHrXeqnha39FVqXb8w==} engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} dependencies: - '@typescript-eslint/types': 4.28.1 - '@typescript-eslint/visitor-keys': 4.28.1 + '@typescript-eslint/types': 4.28.4 + '@typescript-eslint/visitor-keys': 4.28.4 dev: true - /@typescript-eslint/types/4.28.1: - resolution: {integrity: sha512-4z+knEihcyX7blAGi7O3Fm3O6YRCP+r56NJFMNGsmtdw+NCdpG5SgNz427LS9nQkRVTswZLhz484hakQwB8RRg==} + /@typescript-eslint/types/4.28.4: + resolution: {integrity: sha512-3eap4QWxGqkYuEmVebUGULMskR6Cuoc/Wii0oSOddleP4EGx1tjLnZQ0ZP33YRoMDCs5O3j56RBV4g14T4jvww==} engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} dev: true - /@typescript-eslint/typescript-estree/4.28.1_typescript@4.3.5: - resolution: {integrity: sha512-GhKxmC4sHXxHGJv8e8egAZeTZ6HI4mLU6S7FUzvFOtsk7ZIDN1ksA9r9DyOgNqowA9yAtZXV0Uiap61bIO81FQ==} + /@typescript-eslint/typescript-estree/4.28.4_typescript@4.3.5: + resolution: {integrity: sha512-z7d8HK8XvCRyN2SNp+OXC2iZaF+O2BTquGhEYLKLx5k6p0r05ureUtgEfo5f6anLkhCxdHtCf6rPM1p4efHYDQ==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: typescript: '*' @@ -2859,9 +2849,9 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 4.28.1 - '@typescript-eslint/visitor-keys': 4.28.1 - debug: 4.3.1 + '@typescript-eslint/types': 4.28.4 + '@typescript-eslint/visitor-keys': 4.28.4 + debug: 4.3.2 globby: 11.0.4 is-glob: 4.0.1 semver: 7.3.5 @@ -2871,11 +2861,11 @@ packages: - supports-color dev: true - /@typescript-eslint/visitor-keys/4.28.1: - resolution: {integrity: sha512-K4HMrdFqr9PFquPu178SaSb92CaWe2yErXyPumc8cYWxFmhgJsNY9eSePmO05j0JhBvf2Cdhptd6E6Yv9HVHcg==} + /@typescript-eslint/visitor-keys/4.28.4: + resolution: {integrity: sha512-NIAXAdbz1XdOuzqkJHjNKXKj8QQ4cv5cxR/g0uQhCYf/6//XrmfpaYsM7PnBcNbfvTDLUkqQ5TPNm1sozDdTWg==} engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} dependencies: - '@typescript-eslint/types': 4.28.1 + '@typescript-eslint/types': 4.28.4 eslint-visitor-keys: 2.1.0 dev: true @@ -2982,7 +2972,7 @@ packages: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} dependencies: - debug: 4.3.1 + debug: 4.3.2 transitivePeerDependencies: - supports-color @@ -4781,7 +4771,7 @@ packages: ajv: 6.12.6 chalk: 4.1.1 cross-spawn: 7.0.3 - debug: 4.3.1 + debug: 4.3.2 doctrine: 3.0.0 enquirer: 2.3.6 escape-string-regexp: 4.0.0 @@ -5472,7 +5462,7 @@ packages: dependencies: '@tootallnate/once': 1.1.2 agent-base: 6.0.2 - debug: 4.3.1 + debug: 4.3.2 transitivePeerDependencies: - supports-color @@ -5481,7 +5471,7 @@ packages: engines: {node: '>= 6'} dependencies: agent-base: 6.0.2 - debug: 4.3.1 + debug: 4.3.2 transitivePeerDependencies: - supports-color @@ -5493,8 +5483,9 @@ packages: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} - /husky/6.0.0: - resolution: {integrity: sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ==} + /husky/7.0.1: + resolution: {integrity: sha512-gceRaITVZ+cJH9sNHqx5tFwbzlLCVxtVZcusME8JYQ8Edy5mpGDOqD8QBCdMhpyo9a+JXddnujQ4rpY2Ff9SJA==} + engines: {node: '>=12'} hasBin: true dev: true @@ -6709,15 +6700,15 @@ packages: uc.micro: 1.0.6 dev: true - /lint-staged/11.0.0: - resolution: {integrity: sha512-3rsRIoyaE8IphSUtO1RVTFl1e0SLBtxxUOPBtHxQgBHS5/i6nqvjcUfNioMa4BU9yGnPzbO+xkfLtXtxBpCzjw==} + /lint-staged/11.0.1: + resolution: {integrity: sha512-RkTA1ulE6jAGFskxpGAwxfVRXjHp7D9gFg/+KMARUWMPiVFP0t28Em2u0gL8sA0w3/ck3TC57F2v2RNeQ5XPnw==} hasBin: true dependencies: chalk: 4.1.1 cli-truncate: 2.1.0 commander: 7.2.0 cosmiconfig: 7.0.0 - debug: 4.3.1 + debug: 4.3.2 dedent: 0.7.0 enquirer: 2.3.6 execa: 5.1.1 diff --git a/test/src/ignoreTest.ts b/test/src/ignoreTest.ts index 00c686c23b..fc3d19b51d 100644 --- a/test/src/ignoreTest.ts +++ b/test/src/ignoreTest.ts @@ -114,7 +114,7 @@ test.ifDevOrLinuxCi( targets: Platform.LINUX.createTarget(DIR_TARGET), config: { asar: false, - includeSubNodeModules: false, // defaults to false too + includeSubNodeModules: false, }, }, { @@ -175,7 +175,7 @@ test.ifDevOrLinuxCi( ) ) -test.ifDevOrLinuxCi( +test.skip.ifDevOrLinuxCi( "copied select submodule node_modules", app( { diff --git a/test/src/mac/macPackagerTest.ts b/test/src/mac/macPackagerTest.ts index bff3a44a85..00bfd9805b 100644 --- a/test/src/mac/macPackagerTest.ts +++ b/test/src/mac/macPackagerTest.ts @@ -17,6 +17,7 @@ test.ifMac.ifAll("two-package", () => mac: { electronUpdaterCompatibility: ">=2.16", electronLanguages: ["bn", "en"], + timestamp: undefined, }, //tslint:disable-next-line:no-invalid-template-strings artifactName: "${name}-${version}-${os}-${arch}.${ext}",