Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: electron-userland/electron-builder
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: electron-updater@6.3.9
Choose a base ref
...
head repository: electron-userland/electron-builder
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: electron-updater@6.4.0
Choose a head ref

Commits on Oct 2, 2024

  1. chore: update test snapshot for latest 1.0.4 electron-builder-test re…

    …lease (#8555)
    mmaietta authored Oct 2, 2024
    Copy the full SHA
    cd1e3b0 View commit details

Commits on Oct 6, 2024

  1. fix: Path does not end with the package name (#8560)

    fix #8558
    
    The @isaacs/cliui package depends on string-width-cjs@4.2.3, but the
    package that's actually downloaded is string-width@4.2.3. The name in
    the path doesn't match the original name, which is causing an error.
    Fix solution: Truncate based on scope depth, not by name.
    
    ```
    "string-width-cjs": {
              "from": "string-width",
              "version": "4.2.3",
              "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
              "description": "Get the visual width of a string - the number of columns required to display it",
              "license": "MIT",
              "author": {
                "name": "Sindre Sorhus",
                "email": "sindresorhus@gmail.com",
                "url": "sindresorhus.com"
              },
              "homepage": "https://github.com/sindresorhus/string-width#readme",
              "repository": "git+https://github.com/sindresorhus/string-width.git",
              "path": "/Users/beyondkmp/Code/deepFocus/node_modules/.pnpm/string-width@4.2.3/node_modules/string-width",
    }                 
                                 
    ```
    
    ---------
    
    Co-authored-by: beyondkmp <beyondkmkp@gmail.com>
    beyondkmp and beyondkmp authored Oct 6, 2024
    Copy the full SHA
    4ff778e View commit details
  2. chore(deploy): Release v25.1.8 (#8561)

    github-actions[bot] authored Oct 6, 2024
    Copy the full SHA
    1d61d6f View commit details
  3. chore: entering alpha release mode (#8564)

    mmaietta authored Oct 6, 2024
    Copy the full SHA
    2f0b621 View commit details
  4. feat: implement autoupdates for pacman (#8394)

    xyloflake authored Oct 6, 2024
    Copy the full SHA
    ae9221d View commit details
  5. chore: update logging to be a debug message (#8566)

    mmaietta authored Oct 6, 2024
    Copy the full SHA
    e45fecf View commit details
  6. feat: migrate electronDist to be an electron-builder Hook (#8525)

    mmaietta authored Oct 6, 2024
    Copy the full SHA
    13f55a3 View commit details

Commits on Oct 7, 2024

  1. fix: support including node_modules in other subdirectories (#8562)

    fix #6080 and
    support including node_modules in other subdirectories
    
    **How to fix**
    
    1. No file patterns
    
    - The final File patterns are `["**/*", "!**/node_modules/**",
    "!dist{,/**/*}", ...] `
    
    2. File patterns with other sub node_modules `["/*",
    "**/sub/node_modules/**"]`
    
    - File patterns are `["**/*", "!**/node_modules/**",
    "**/sub/node_modules/**", "!dist{,/**/*}", ...]`
    
    3. File patterns without sub node_modules
    
    - The final File patterns are `["**/*", "!**/node_modules/**",
    "!dist{,/**/*}", ...]`
    
    The final patterns above all filter out the node_modules in the app root
    directory. In filter.ts, we handle this by returning false by default if
    relative === 'node_modules', so it won't be filtered out.
    
    
    https://github.com/electron-userland/electron-builder/blob/e2c79819751454dbd1a939610d66e940b5dfb73d/packages/app-builder-lib/src/util/filter.ts#L60-L62
    
    However, if you really want to filter out the node_modules in the app
    directory, you can use `["!node_modules/**/*"]` to filter it.
    
    **Two points to note**
    
    1. Now `["**/*", "**/sub/node_modules"]` cannot match. Only `["**/*",
    "**/sub/node_modules/**"]` will match.
    
    For a relative path of` sub/node_modules`, if don't add a `/ ` at the
    end, we can only use `**/sub/node_module` to match. If add a `/` at the
    end, we can only use `**/sub/node_module/**` to match.
       
    **I currently prefer that `**/sub/node_modules/**` matches, as this
    aligns more with conventional usage.**
    
    2. `*/sub/node_modules/**` cannot match because the relative path is
    `sub/node_modules`, and there's no extra directory at the beginning.
    
    ---------
    
    Co-authored-by: beyondkmp <beyondkmkp@gmail.com>
    beyondkmp and beyondkmp authored Oct 7, 2024
    Copy the full SHA
    b8185d4 View commit details

Commits on Oct 9, 2024

  1. Copy the full SHA
    1fee87a View commit details
  2. fix(deploy): downgrade changesets/cli to 2.25.0 (#8574)

    mmaietta authored Oct 9, 2024
    Copy the full SHA
    a25d04d View commit details
  3. feat: allowing additional entries in .desktop file, such as `[Desktop…

    … Actions <actionName>]` (#8572)
    mmaietta authored Oct 9, 2024
    Copy the full SHA
    0dbe357 View commit details
  4. chore(deploy): Release v26.0.0-alpha.0 (electron-updater@6.4.0-alpha.…

    …0) (alpha) (#8565)
    github-actions[bot] authored Oct 9, 2024
    Copy the full SHA
    515a1d5 View commit details
  5. fix: add additional default exclusions (node_gyp_bins, `pnpm-lock.y…

    …aml`, `.obj`) to copy logic (#8577)
    mmaietta authored Oct 9, 2024
    Copy the full SHA
    e9eef0c View commit details

Commits on Oct 10, 2024

  1. chore(deps): update @electron/rebuild to 3.7.0 (#8575)

    doctolivier authored Oct 10, 2024
    Copy the full SHA
    dfa35c3 View commit details
  2. fix: packages in the workspace not being under node_modules (#8576)

    fix develar/app-builder#141
    
    reproduced error info
    ```
      ● yarn several workspaces
    
        /tmp/et-db411cd21f3bbd882f3a5a30c58db6ff/t-kIKFAh/test-project-2/packages/foo/package.json must be under /tmp/et-db411cd21f3bbd882f3a5a30c58db6ff/t-kIKFAh/test-project-2/packages/test-app/
    
          30 |     const index = file.indexOf(NODE_MODULES_PATTERN)
          31 |     if (index < 0) {
        > 32 |       throw new Error(`${file} must be under ${srcWithEndSlash}`)
             |             ^
          33 |     } else {
          34 |       return file.substring(index + 1 /* leading slash */)
          35 |     }
    
          at getRelativePath (../packages/app-builder-lib/src/util/filter.ts:32:13)
          at AsarPackager.unpackPattern (../packages/app-builder-lib/src/util/filter.ts:57:20)
          at AsarPackager.createPackageFromFiles (../packages/app-builder-lib/src/asar/asarUtil.ts:129:82)
          at AsarPackager.pack (../packages/app-builder-lib/src/asar/asarUtil.ts:49:41)
          at ../packages/app-builder-lib/src/platformPackager.ts:439:11
              at async Promise.all (index 0)
          at AsyncTaskManager.awaitTasks (../packages/builder-util/src/asyncTaskManager.ts:65:25)
          at LinuxPackager.doPack (../packages/app-builder-lib/src/platformPackager.ts:293:5)
          at LinuxPackager.pack (../packages/app-builder-lib/src/platformPackager.ts:138:5)
          at Packager.doBuild (../packages/app-builder-lib/src/packager.ts:459:9)
          at executeFinally (../packages/builder-util/src/promise.ts:12:14)
          at Packager.build (../packages/app-builder-lib/src/packager.ts:393:31)
          at packAndCheck (src/helpers/packTester.ts:188:41)
          at src/helpers/packTester.ts:132:36
          at executeFinally (../packages/builder-util/src/promise.ts:12:14)
    ```
    
    Currently, the returned node_modules paths are no longer symlinks, but
    resolved paths. For example, packages in pnpm workspace/yarn workspace
    are not under node_modules.
    
    All previous getRealSource/getRelativePath methods were based on
    node_modules in the path, which was relatively tricky.
    
    
    https://github.com/electron-userland/electron-builder/blob/a25d04d5a8e58b447f0462673a4362414da9ed27/packages/app-builder-lib/src/util/appFileCopier.ts#L191-L203
    
    
    https://github.com/electron-userland/electron-builder/blob/a25d04d5a8e58b447f0462673a4362414da9ed27/packages/app-builder-lib/src/util/filter.ts#L28-L36
    
    
    
    
    Solution: Directly include relativeNodeModulesPath in the file stats.
    This is simple and easy to understand.
    
    ---------
    
    Co-authored-by: Mike Maietta <mmaietta@users.noreply.github.com>
    beyondkmp and mmaietta authored Oct 10, 2024
    Copy the full SHA
    3eab714 View commit details
  3. chore(deploy): Release v26.0.0-alpha.1 (alpha) (#8578)

    github-actions[bot] authored Oct 10, 2024
    Copy the full SHA
    104a580 View commit details

Commits on Oct 11, 2024

  1. chore: add ut for local module (#8586)

    beyondkmp authored Oct 11, 2024
    Copy the full SHA
    2642dee View commit details
  2. update README

    mmaietta committed Oct 11, 2024
    Copy the full SHA
    8cc2b42 View commit details

Commits on Oct 12, 2024

  1. feat: migrate to electron/asar package (#8570)

    mmaietta authored Oct 12, 2024
    Copy the full SHA
    c848430 View commit details

Commits on Oct 13, 2024

  1. feat: add integration for @electron/fuses (#8588)

    mmaietta authored Oct 13, 2024
    Copy the full SHA
    8434e10 View commit details
  2. chore(deploy): Release v26.0.0-alpha.2 (alpha) (#8591)

    github-actions[bot] authored Oct 13, 2024
    Copy the full SHA
    2d4ea9d View commit details

Commits on Oct 14, 2024

  1. chore(deps): update fast-xml-parser to 4.4.1 (#8593)

    chore(deps): update fast-xml-parser to 4.4.1 to fix
    https://github.com/electron-userland/electron-builder/security/dependabot/31
    beyondkmp authored Oct 14, 2024
    Copy the full SHA
    bc9c99b View commit details
  2. chore(deps): update jest to 29.7.0 (#8594)

    beyondkmp authored Oct 14, 2024
    Copy the full SHA
    eb2c7a3 View commit details
  3. Copy the full SHA
    f941f18 View commit details

Commits on Oct 15, 2024

  1. fix(win): Revert "fix(win): use appInfo description as primary entry …

    …for FileDescription" (#8601)
    
    Reverts #8125
    The PR caused a regression where task manager shows the app description
    instead of the app name for the running process
    
    Fixes: #8599
    mmaietta authored Oct 15, 2024
    Copy the full SHA
    215fc36 View commit details

Commits on Oct 16, 2024

  1. fix: check relative path in asarUtil without path separator (#8603)

    mmaietta authored Oct 16, 2024
    Copy the full SHA
    712a8bc View commit details
  2. chore(deps): update dependency app-builder-bin to 5.0.0-alpha.11 (#8604)

    beyondkmp authored Oct 16, 2024
    Copy the full SHA
    d4ea0d9 View commit details
  3. chore: refactor Publishers out of app-builder-lib into electron-publi…

    …sh and add to docs site (#8596)
    mmaietta authored Oct 16, 2024
    Copy the full SHA
    e0b0e35 View commit details
  4. fix: add quotes to surround file path during azure signing to handle …

    …files with spaces (#8606)
    mmaietta authored Oct 16, 2024
    Copy the full SHA
    a0e635c View commit details
  5. chore(deploy): Release v26.0.0-alpha.3 (alpha) (#8602)

    github-actions[bot] authored Oct 16, 2024
    Copy the full SHA
    74d98d8 View commit details

Commits on Oct 23, 2024

  1. fix: macUpdater - change copyFileSync to async operation to unblock…

    … the main thread (#8623)
    
    Fix #8622
    
    Co-authored-by: Damon Yu <damon.yu@ringcentral.com>
    DamonYu6 and damonyu666 authored Oct 23, 2024
    Copy the full SHA
    cfa67c0 View commit details

Commits on Oct 25, 2024

  1. fix: use path instead of path/posix for publishing binaries (#8631)

    olivereisenhut authored Oct 25, 2024
    Copy the full SHA
    dcd91a1 View commit details
  2. fix(win): add rfc3161 timestamp entry with default values for azure s…

    …igning (#8627)
    mmaietta authored Oct 25, 2024
    Copy the full SHA
    2a3195d View commit details

Commits on Oct 26, 2024

  1. feat(updater): allow usage of autoRunAppAfterInstall with mac updat…

    …er (#8633)
    mmaietta authored Oct 26, 2024
    Copy the full SHA
    96f5c3e View commit details

Commits on Oct 28, 2024

  1. fix: remove concurrency of windows codesign to resolve azure trusted …

    …signing file locks(#8632)
    mmaietta authored Oct 28, 2024
    Copy the full SHA
    645e2ab View commit details
  2. chore(deploy): Release v26.0.0-alpha.4 (electron-updater@6.4.0-alpha.…

    …1) (alpha) (#8625)
    github-actions[bot] authored Oct 28, 2024
    Copy the full SHA
    3d31094 View commit details

Commits on Oct 30, 2024

  1. chore: refactor electronDist logic to avoid unnecessary/misleading …

    …console logs (#8639)
    mmaietta authored Oct 30, 2024
    Copy the full SHA
    2800662 View commit details

Commits on Oct 31, 2024

  1. fix(win): add required publisherName field to Azure Trusted Signing…

    … options (#8650)
    mmaietta authored Oct 31, 2024
    Copy the full SHA
    f84a083 View commit details

Commits on Nov 1, 2024

  1. fix: cscIKeyPassword must support empty string arguments (#8653)

    IsaacAderogba authored Nov 1, 2024
    Copy the full SHA
    796e1a0 View commit details
  2. fix(asar): check ResolvedFileSet src when verifying symlinks to be wi…

    …thin project directory (#8654)
    mmaietta authored Nov 1, 2024
    Copy the full SHA
    9e11358 View commit details
  3. chore(deploy): Release v26.0.0-alpha.5 (alpha) (#8643)

    github-actions[bot] authored Nov 1, 2024
    Copy the full SHA
    e796d24 View commit details

Commits on Nov 2, 2024

  1. chore: migrate documentation site from Netlify app to GHA w/ docker i…

    …mage (#8629)
    mmaietta authored Nov 2, 2024
    Copy the full SHA
    2593a1f View commit details

Commits on Nov 3, 2024

  1. chore(docs): fixing indentation of typedoc and TOC depth/padding (#8657)

    mmaietta authored Nov 3, 2024
    Copy the full SHA
    b06c5ef View commit details

Commits on Nov 4, 2024

  1. docs: update vite-electron-builder boilerplate description (#8658)

    cawa-93 authored Nov 4, 2024
    Copy the full SHA
    df07101 View commit details

Commits on Nov 5, 2024

  1. fix: docker build script unable to build node 18 image (#8665)

    mmaietta authored Nov 5, 2024
    Copy the full SHA
    fb26f6a View commit details
  2. feat: add AppArmor profile to FPM targets to pair with afterInstall

    … and `afterRemove` template scripts (#8636)
    mmaietta authored Nov 5, 2024
    Copy the full SHA
    88cc0b0 View commit details
  3. fix: use FileCopier for copying files and queue creation of symlinks (#…

    mmaietta authored Nov 5, 2024
    Copy the full SHA
    866b0ca View commit details
  4. chore: add changeset for commit 866b0caa

    mmaietta committed Nov 5, 2024
    Copy the full SHA
    a1ee041 View commit details

Commits on Nov 6, 2024

  1. chore: make pnpm prettier windows compatible (#8668)

    beyondkmp authored Nov 6, 2024
    Copy the full SHA
    3cca3c3 View commit details

Commits on Nov 7, 2024

  1. chore(deps): update electron/asar to 3.2.17 (#8671)

    beyondkmp authored Nov 7, 2024
    Copy the full SHA
    a4505a3 View commit details
Showing with 17,346 additions and 13,187 deletions.
  1. +1 −0 .github/FUNDING.yml
  2. +1 −1 .github/actions/pnpm/action.yml
  3. +2 −2 .github/actions/pretest/action.yml
  4. +67 −0 .github/workflows/deploy-docker.yml
  5. +49 −0 .github/workflows/deploy-netlify.yml
  6. +42 −0 .github/workflows/docker-build.yml
  7. +0 −32 .github/workflows/docker-deploy.yml
  8. +50 −0 .github/workflows/pr-netlify.yml
  9. 0 .github/workflows/{semantic-pr.yml → pr-semantic.yml}
  10. +127 −35 .github/workflows/test.yaml
  11. +17 −0 .vscode/launch.json
  12. +186 −0 CHANGELOG.md
  13. +2 −4 README.md
  14. +20 −10 docker/base/Dockerfile
  15. +3 −2 docker/base/test.sh
  16. +30 −27 docker/build.sh
  17. +2 −2 docker/node/Dockerfile
  18. +0 −5 docker/push.sh
  19. +3 −2 docker/wine-chrome/Dockerfile
  20. +3 −3 docker/wine-mono/Dockerfile
  21. +23 −15 docker/wine/Dockerfile
  22. +2 −5 mkdocs-dockerfile
  23. +9 −1 mkdocs.yml
  24. +10 −9 package.json
  25. +325 −0 packages/app-builder-lib/CHANGELOG.md
  26. +4 −4 packages/app-builder-lib/package.json
  27. +247 −167 packages/app-builder-lib/scheme.json
  28. +1 −1 packages/app-builder-lib/src/appInfo.ts
  29. +10 −25 packages/app-builder-lib/src/asar/asarFileChecker.ts
  30. +136 −225 packages/app-builder-lib/src/asar/asarUtil.ts
  31. +51 −9 packages/app-builder-lib/src/asar/integrity.ts
  32. +10 −85 packages/app-builder-lib/src/asar/unpackDetector.ts
  33. +1 −1 packages/app-builder-lib/src/codeSign/macCodeSign.ts
  34. +14 −0 packages/app-builder-lib/src/codeSign/signManager.ts
  35. +22 −36 packages/app-builder-lib/src/codeSign/windowsCodeSign.ts
  36. +53 −13 packages/app-builder-lib/src/codeSign/windowsSignAzureManager.ts
  37. +41 −23 packages/app-builder-lib/src/codeSign/windowsSignToolManager.ts
  38. +71 −15 packages/app-builder-lib/src/configuration.ts
  39. +20 −6 packages/app-builder-lib/src/electron/ElectronFramework.ts
  40. +0 −5 packages/app-builder-lib/src/electron/electronMac.ts
  41. +1 −1 packages/app-builder-lib/src/electron/electronVersion.ts
  42. +2 −1 packages/app-builder-lib/src/electron/electronWin.ts
  43. +15 −3 packages/app-builder-lib/src/fileMatcher.ts
  44. +4 −4 packages/app-builder-lib/src/index.ts
  45. +1 −1 packages/app-builder-lib/src/linuxPackager.ts
  46. +33 −27 packages/app-builder-lib/src/macPackager.ts
  47. +27 −0 packages/app-builder-lib/src/options/AppXOptions.ts
  48. +1 −1 packages/app-builder-lib/src/options/CommonWindowsInstallerConfiguration.ts
  49. +1 −1 packages/app-builder-lib/src/options/FileAssociation.ts
  50. +3 −0 packages/app-builder-lib/src/options/PlatformSpecificBuildOptions.ts
  51. +46 −4 packages/app-builder-lib/src/options/linuxOptions.ts
  52. +3 −11 packages/app-builder-lib/src/options/macOptions.ts
  53. +23 −66 packages/app-builder-lib/src/options/winOptions.ts
  54. +116 −17 packages/app-builder-lib/src/platformPackager.ts
  55. +15 −9 packages/app-builder-lib/src/publish/PublishManager.ts
  56. +9 −13 packages/app-builder-lib/src/targets/AppxTarget.ts
  57. +63 −13 packages/app-builder-lib/src/targets/FpmTarget.ts
  58. +13 −2 packages/app-builder-lib/src/targets/LinuxTargetHelper.ts
  59. +38 −17 packages/app-builder-lib/src/targets/nsis/NsisTarget.ts
  60. +9 −2 packages/app-builder-lib/src/targets/nsis/WebInstallerTarget.ts
  61. +7 −0 packages/app-builder-lib/src/targets/nsis/nsisOptions.ts
  62. +5 −32 packages/app-builder-lib/src/util/AppFileWalker.ts
  63. +19 −6 packages/app-builder-lib/src/util/NodeModuleCopyHelper.ts
  64. +6 −25 packages/app-builder-lib/src/util/appFileCopier.ts
  65. +13 −16 packages/app-builder-lib/src/util/filter.ts
  66. +0 −1 packages/app-builder-lib/src/util/yarn.ts
  67. +1 −1 packages/app-builder-lib/src/version.ts
  68. +25 −0 packages/app-builder-lib/src/vm/PwshVm.ts
  69. +42 −4 packages/app-builder-lib/src/vm/vm.ts
  70. +29 −53 packages/app-builder-lib/src/winPackager.ts
  71. +27 −0 packages/app-builder-lib/templates/linux/after-install.tpl
  72. +7 −0 packages/app-builder-lib/templates/linux/after-remove.tpl
  73. +9 −0 packages/app-builder-lib/templates/linux/apparmor-profile.tpl
  74. +4 −4 packages/app-builder-lib/templates/nsis/assistedMessages.yml
  75. +16 −0 packages/builder-util-runtime/CHANGELOG.md
  76. +1 −1 packages/builder-util-runtime/package.json
  77. +12 −0 packages/builder-util-runtime/src/publishOptions.ts
  78. +72 −0 packages/builder-util/CHANGELOG.md
  79. +5 −4 packages/builder-util/package.json
  80. 0 packages/{app-builder-lib/src/util → builder-util/src}/filename.ts
  81. +19 −3 packages/builder-util/src/fs.ts
  82. +119 −0 packages/dmg-builder/CHANGELOG.md
  83. +1 −1 packages/dmg-builder/package.json
  84. +2 −9 packages/dmg-builder/src/dmg.ts
  85. +109 −0 packages/electron-builder-squirrel-windows/CHANGELOG.md
  86. +1 −1 packages/electron-builder-squirrel-windows/package.json
  87. +1 −1 packages/electron-builder-squirrel-windows/src/SquirrelWindowsTarget.ts
  88. +137 −0 packages/electron-builder/CHANGELOG.md
  89. +3 −2 packages/electron-builder/package.json
  90. +1 −1 packages/electron-builder/src/cli/create-self-signed-cert.ts
  91. +2 −2 packages/electron-builder/src/publish.ts
  92. +98 −0 packages/electron-forge-maker-appimage/CHANGELOG.md
  93. +1 −1 packages/electron-forge-maker-appimage/package.json
  94. +98 −0 packages/electron-forge-maker-nsis-web/CHANGELOG.md
  95. +1 −1 packages/electron-forge-maker-nsis-web/package.json
  96. +98 −0 packages/electron-forge-maker-nsis/CHANGELOG.md
  97. +1 −1 packages/electron-forge-maker-nsis/package.json
  98. +98 −0 packages/electron-forge-maker-snap/CHANGELOG.md
  99. +1 −1 packages/electron-forge-maker-snap/package.json
  100. +75 −0 packages/electron-publish/CHANGELOG.md
  101. +4 −3 packages/electron-publish/package.json
  102. +2 −1 .../{app-builder-lib/src/publish/BitbucketPublisher.ts → electron-publish/src/bitbucketPublisher.ts}
  103. +3 −1 packages/electron-publish/src/gitHubPublisher.ts
  104. +69 −0 packages/electron-publish/src/httpPublisher.ts
  105. +35 −0 packages/electron-publish/src/index.ts
  106. +8 −3 packages/{app-builder-lib/src/publish/KeygenPublisher.ts → electron-publish/src/keygenPublisher.ts}
  107. +4 −91 packages/electron-publish/src/publisher.ts
  108. +2 −1 .../{app-builder-lib/src/publish/s3/BaseS3Publisher.ts → electron-publish/src/s3/baseS3Publisher.ts}
  109. +7 −3 packages/{app-builder-lib/src/publish → electron-publish/src}/s3/s3Publisher.ts
  110. +3 −3 packages/{app-builder-lib/src/publish → electron-publish/src}/s3/spacesPublisher.ts
  111. +2 −1 .../{app-builder-lib/src/publish/SnapStorePublisher.ts → electron-publish/src/snapStorePublisher.ts}
  112. +1 −1 packages/electron-publish/tsconfig.json
  113. +1 −1 packages/electron-publish/typedoc.json
  114. +60 −0 packages/electron-updater/CHANGELOG.md
  115. +1 −1 packages/electron-updater/package.json
  116. +37 −30 packages/electron-updater/src/AppImageUpdater.ts
  117. +3 −1 packages/electron-updater/src/AppUpdater.ts
  118. +5 −13 packages/electron-updater/src/BaseUpdater.ts
  119. +11 −2 packages/electron-updater/src/DebUpdater.ts
  120. +15 −10 packages/electron-updater/src/MacUpdater.ts
  121. +9 −3 packages/electron-updater/src/NsisUpdater.ts
  122. +50 −0 packages/electron-updater/src/PacmanUpdater.ts
  123. +12 −4 packages/electron-updater/src/RpmUpdater.ts
  124. +4 −0 packages/electron-updater/src/main.ts
  125. +3 −1 packages/electron-updater/src/providers/KeygenProvider.ts
  126. +1 −1 pages/appimage.md
  127. +1 −1 pages/appx.md
  128. +6 −6 pages/auto-update.md
  129. +31 −0 pages/code-signing-mac.md
  130. +36 −0 pages/code-signing-win.md
  131. +0 −62 pages/code-signing.md
  132. +6 −4 pages/configuration.md
  133. +2 −2 pages/contents.md
  134. +1 −1 pages/dmg.md
  135. +3 −3 pages/linux.md
  136. +1 −5 pages/mac.md
  137. +1 −1 pages/mas.md
  138. +1 −1 pages/msi-wrapped.md
  139. +1 −1 pages/msi.md
  140. +20 −15 pages/multi-platform-build.md
  141. +1 −1 pages/nsis.md
  142. +1 −1 pages/pkg.md
  143. +1 −1 pages/programmatic-usage.md
  144. +7 −13 pages/publish.md
  145. +1 −1 pages/snap.md
  146. +1 −1 pages/squirrel-windows.md
  147. +1 −1 pages/stylesheets/autowidth.css
  148. +59 −0 pages/tutorials/adding-electron-fuses.md
  149. +3 −1 pages/tutorials/code-signing-windows-apps-on-unix.md
  150. +4 −2 pages/win.md
  151. +30 −0 patches/@changesets__cli@2.25.0.patch
  152. +0 −30 patches/@changesets__cli@2.27.8.patch
  153. +3,143 −3,918 pnpm-lock.yaml
  154. +5 −1 scripts/renderer/src/typedoc2html.ts
  155. +47 −0 test/fixtures/test-app-one/build/custom-manifest.xml
  156. +50 −0 test/fixtures/test-app-one/build/custom-template-manifest.xml
  157. BIN test/fixtures/test-app-one/build/extraAsar.asar
  158. +222 −0 test/fixtures/test-app-symlink-framework/hello-world/hello-world-framework.sh
  159. +1 −0 test/fixtures/test-app-symlink-framework/hello-world/lib/Release/Hello.framework/Headers
  160. +1 −0 test/fixtures/test-app-symlink-framework/hello-world/lib/Release/Hello.framework/Hello
  161. +1 −0 test/fixtures/test-app-symlink-framework/hello-world/lib/Release/Hello.framework/Info.plist
  162. +1 −0 test/fixtures/test-app-symlink-framework/hello-world/lib/Release/Hello.framework/Modules
  163. +2 −0 ...app-symlink-framework/hello-world/lib/Release/Hello.framework/Versions/A/Headers/HelloFramework.h
  164. BIN test/fixtures/test-app-symlink-framework/hello-world/lib/Release/Hello.framework/Versions/A/Hello
  165. +24 −0 ...fixtures/test-app-symlink-framework/hello-world/lib/Release/Hello.framework/Versions/A/Info.plist
  166. +82 −0 ...t-app-symlink-framework/hello-world/lib/Release/Hello.framework/Versions/A/Modules/Hello.abi.json
  167. BIN ...t-app-symlink-framework/hello-world/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftdoc
  168. +12 −0 ...rld/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftmodule/arm64.private.swiftinterface
  169. +12 −0 ...hello-world/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftmodule/arm64.swiftinterface
  170. BIN ...rk/hello-world/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftmodule/arm64.swiftmodule
  171. +12 −0 ...ld/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftmodule/x86_64.private.swiftinterface
  172. +12 −0 ...ello-world/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftmodule/x86_64.swiftinterface
  173. BIN ...k/hello-world/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftmodule/x86_64.swiftmodule
  174. BIN ...ymlink-framework/hello-world/lib/Release/Hello.framework/Versions/A/Modules/Hello.swiftsourceinfo
  175. +4 −0 ...app-symlink-framework/hello-world/lib/Release/Hello.framework/Versions/A/Modules/module.modulemap
  176. +1 −0 test/fixtures/test-app-symlink-framework/hello-world/lib/Release/Hello.framework/Versions/Current
  177. +8 −0 test/fixtures/test-app-symlink-framework/hello-world/package.json
  178. +1 −0 test/fixtures/test-app-symlink-framework/index.js
  179. +18 −0 test/fixtures/test-app-symlink-framework/package.json
  180. +1 −2 test/fixtures/test-app-yarn-several-workspace/packages/foo/package.json
  181. +2 −1 test/fixtures/test-app-yarn-several-workspace/packages/test-app/package.json
  182. +5 −4 test/package.json
  183. +1,962 −1,711 test/snapshots/BuildTest.js.snap
  184. +42 −36 test/snapshots/ExtraBuildResourcesTest.js.snap
  185. +534 −412 test/snapshots/HoistedNodeModuleTest.js.snap
  186. +112 −99 test/snapshots/PublishManagerTest.js.snap
  187. +2 −2 test/snapshots/RepoSlugTest.js.snap
  188. +5 −5 test/snapshots/configurationValidationTest.js.snap
  189. +17 −17 test/snapshots/extraMetadataTest.js.snap
  190. +19 −19 test/snapshots/filesTest.js.snap
  191. +3,729 −3,406 test/snapshots/globTest.js.snap
  192. +29 −17 test/snapshots/ignoreTest.js.snap
  193. +79 −44 test/snapshots/linux/debTest.js.snap
  194. +12 −12 test/snapshots/linux/flatpakTest.js.snap
  195. +11 −11 test/snapshots/linux/fpmTest.js.snap
  196. +5 −5 test/snapshots/linux/linuxArchiveTest.js.snap
  197. +57 −48 test/snapshots/linux/linuxPackagerTest.js.snap
  198. +302 −302 test/snapshots/linux/snapTest.js.snap
  199. +283 −199 test/snapshots/mac/dmgTest.js.snap
  200. +95 −95 test/snapshots/mac/macArchiveTest.js.snap
  201. +1 −1 test/snapshots/mac/macCodeSignTest.js.snap
  202. +40 −40 test/snapshots/mac/macIconTest.js.snap
  203. +635 −471 test/snapshots/mac/macPackagerTest.js.snap
  204. +12 −12 test/snapshots/mac/masTest.js.snap
  205. +9 −9 test/snapshots/mainEntryTest.js.snap
  206. +23 −23 test/snapshots/protonTest.js.snap
  207. +240 −204 test/snapshots/updater/differentialUpdateTest.js.snap
  208. +99 −46 test/snapshots/updater/linuxUpdaterTest.js.snap
  209. +1 −1 test/snapshots/updater/macUpdaterTest.js.snap
  210. +106 −106 test/snapshots/updater/nsisUpdaterTest.js.snap
  211. +154 −13 test/snapshots/windows/appxTest.js.snap
  212. +37 −37 test/snapshots/windows/assistedInstallerTest.js.snap
  213. +15 −15 test/snapshots/windows/msiTest.js.snap
  214. +35 −35 test/snapshots/windows/msiWrappedTest.js.snap
  215. +99 −99 test/snapshots/windows/oneClickInstallerTest.js.snap
  216. +16 −16 test/snapshots/windows/portableTest.js.snap
  217. +13 −13 test/snapshots/windows/squirrelWindowsTest.js.snap
  218. +63 −46 test/snapshots/windows/webInstallerTest.js.snap
  219. +6 −2 test/snapshots/windows/winCodeSignTest.js.snap
  220. +144 −6 test/snapshots/windows/winPackagerTest.js.snap
  221. +1 −4 test/src/ArtifactPublisherTest.ts
  222. +33 −3 test/src/BuildTest.ts
  223. +16 −1 test/src/ExtraBuildResourcesTest.ts
  224. +16 −0 test/src/HoistedNodeModuleTest.ts
  225. +1 −1 test/src/filenameUtilTest.ts
  226. +1 −1 test/src/filesTest.ts
  227. +164 −10 test/src/globTest.ts
  228. +2 −1 test/src/helpers/CheckingPackager.ts
  229. +1 −1 test/src/helpers/checkDeps.ts
  230. +61 −36 test/src/helpers/packTester.ts
  231. +90 −31 test/src/ignoreTest.ts
  232. +10 −0 test/src/linux/debTest.ts
  233. +12 −0 test/src/linux/flatpakTest.ts
  234. +36 −2 test/src/linux/fpmTest.ts
  235. +18 −1 test/src/linux/linuxArchiveTest.ts
  236. +41 −3 test/src/linux/linuxPackagerTest.ts
  237. +10 −0 test/src/linux/snapHeavyTest.ts
  238. +10 −0 test/src/linux/snapTest.ts
  239. +37 −1 test/src/mac/macPackagerTest.ts
  240. +2 −2 test/src/mac/masTest.ts
  241. +6 −2 test/src/updater/linuxUpdaterTest.ts
  242. +1 −1 test/src/updater/nsisUpdaterTest.ts
  243. +48 −1 test/src/windows/appxTest.ts
  244. +10 −0 test/src/windows/assistedInstallerTest.ts
  245. +10 −0 test/src/windows/msiTest.ts
  246. +10 −0 test/src/windows/msiWrappedTest.ts
  247. +30 −8 test/src/windows/oneClickInstallerTest.ts
  248. +10 −0 test/src/windows/portableTest.ts
  249. +11 −0 test/src/windows/squirrelWindowsTest.ts
  250. +14 −1 test/src/windows/webInstallerTest.ts
  251. +47 −25 test/src/windows/winCodeSignTest.ts
  252. +61 −24 test/src/windows/winPackagerTest.ts
  253. +1 −3 typedoc.config.js
1 change: 1 addition & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
github: [mmaietta]
custom: https://www.electron.build/donate
2 changes: 1 addition & 1 deletion .github/actions/pnpm/action.yml
Original file line number Diff line number Diff line change
@@ -17,7 +17,7 @@ runs:
- name: Setup node
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4
with:
node-version: '18'
node-version: '22'
cache: 'pnpm'

- name: Install dependencies
4 changes: 2 additions & 2 deletions .github/actions/pretest/action.yml
Original file line number Diff line number Diff line change
@@ -28,7 +28,7 @@ runs:
- name: Setup node
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4
with:
node-version: '18'
node-version: '22'
cache: 'pnpm'

- name: Install dependencies
@@ -40,7 +40,7 @@ runs:
shell: bash

- name: Cache Electron
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
67 changes: 67 additions & 0 deletions .github/workflows/deploy-docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Docker Deployment

on:
# release:
# types: [published]
push:
tags:
- docker*
workflow_dispatch:

permissions:
contents: read

env:
LATEST_IMAGE_NODE_MAJOR_VERSION: 22

jobs:
run-docker-build-and-test:
uses: ./.github/workflows/test.yaml
with:
rebuild-docker-images-call: true

deploy:
name: Build and Push Docker
needs: run-docker-build-and-test
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
nodeMajorVersion: [
14, 16, 18, 20, 22
]
steps:
- name: Download images artifact - node${{ matrix.nodeMajorVersion }}
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4
with:
name: electron-builder-all-${{ matrix.nodeMajorVersion }}
path: ${{ runner.temp }}

- name: Load all images
run: docker image load --input ${{ runner.temp }}/electron-builder-all-${{ matrix.nodeMajorVersion }}.tar

- name: Tag LTS (${{ env.LATEST_IMAGE_NODE_MAJOR_VERSION }}) images for electron-builder latest/wine/wine-chrome/wine-mono
if: ${{ matrix.nodeMajorVersion == env.LATEST_IMAGE_NODE_MAJOR_VERSION }}
run: |
docker image tag electronuserland/builder:${{ env.LATEST_IMAGE_NODE_MAJOR_VERSION }} electronuserland/builder:latest
docker image tag electronuserland/builder:${{ env.LATEST_IMAGE_NODE_MAJOR_VERSION }}-wine electronuserland/builder:wine
docker image tag electronuserland/builder:${{ env.LATEST_IMAGE_NODE_MAJOR_VERSION }}-wine-mono electronuserland/builder:wine-mono
docker image tag electronuserland/builder:${{ env.LATEST_IMAGE_NODE_MAJOR_VERSION }}-wine-chrome electronuserland/builder:wine-chrome
- name: List all images and tags
run: docker image ls -a

- name: Login to DockerHub
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Push all Docker images (workflow_dispatch test)
if: github.event_name == 'workflow_dispatch'
run: echo "TESTING step logic. (this would normally trigger docker push)"

- name: Push all Docker images
if: github.event_name != 'workflow_dispatch'
run: docker image push --all-tags electronuserland/builder

49 changes: 49 additions & 0 deletions .github/workflows/deploy-netlify.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: 'Netlify Deploy - Release'

on:
release:
types: ['published']
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

permissions:
contents: read
statuses: write

jobs:
deploy:
name: 'Deploy Release'
runs-on: ubuntu-latest

steps:
- name: Checkout code repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4

- name: Install deps and audit
uses: ./.github/actions/pnpm

- name: Build typdoc site
run: pnpm docs:all

- uses: jsmrcaga/action-netlify-deploy@06b6a09e152823cce0d76c0dbb22b914934de198 # v2.3.0
with:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
NETLIFY_DEPLOY_MESSAGE: "Prod deploy v${{ github.ref }}"
NETLIFY_DEPLOY_TO_PROD: true
install_command: "echo Skipping installing the dependencies"
build_command: "echo Skipping building the web files"
debug: true
build_directory: "site"
monorepo_package: "electron-builder"

# Creates a status check with link to preview
- name: Set Status check on commit
uses: guibranco/github-status-action-v2@0849440ec82c5fa69b2377725b9b7852a3977e76 # v1.1.13
with:
authToken: ${{ secrets.GITHUB_TOKEN }}
state: success
context: Netlify Documentation Site preview
description: Production - Click "details"
target_url: ${{ env.NETLIFY_PREVIEW_URL }}
sha: ${{github.event.pull_request.head.sha || github.sha}}
42 changes: 42 additions & 0 deletions .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Build Docker Images

on:
workflow_call:

permissions:
contents: read

jobs:
build-docker-images:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
nodeVersion: [
22.13.0,
20.18.1,
18.20.5,
16.20.2,
14.21.3
]
steps:
- name: Checkout code repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4

- name: Extract node major version to tag docker images
run: echo "NODE_TAG=$(cut -d '.' -f 1 <<< ${{ matrix.nodeVersion }})" >> $GITHUB_ENV

- name: Builds all images
shell: bash
run: |
bash docker/build.sh ${{ matrix.nodeVersion }}
docker images --filter=reference="electronuserland/builder:*"
docker save -o ${{ runner.temp }}/electron-builder-all-${{ env.NODE_TAG }}.tar electronuserland/builder
- name: Bundle all images
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: electron-builder-all-${{ env.NODE_TAG }}
path: ${{ runner.temp }}/electron-builder-all-${{ env.NODE_TAG }}.tar
retention-days: 1
if-no-files-found: error
32 changes: 0 additions & 32 deletions .github/workflows/docker-deploy.yml

This file was deleted.

50 changes: 50 additions & 0 deletions .github/workflows/pr-netlify.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: 'Netlify Deploy - PR'

on:
pull_request:
types: ['opened', 'edited', 'synchronize']
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

permissions:
contents: read
statuses: write

jobs:
deploy:
name: 'Deploy PR'
runs-on: ubuntu-latest

steps:
- name: Checkout code repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4

- name: Install deps and audit
uses: ./.github/actions/pnpm

- name: Build typdoc site
run: pnpm docs:all

# Sets the branch name as environment variable
- uses: nelonoel/branch-name@1ea5c86cb559a8c4e623da7f188496208232e49f # v1.0.1
- uses: jsmrcaga/action-netlify-deploy@06b6a09e152823cce0d76c0dbb22b914934de198 # v2.3.0
with:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
deploy_alias: ${{ env.BRANCH_NAME }}
install_command: "echo Skipping installing the dependencies"
build_command: "echo Skipping building the web files"
debug: true
build_directory: "site"
monorepo_package: "electron-builder"

# Creates a status check with link to preview
- name: Set Status check on commit
uses: guibranco/github-status-action-v2@0849440ec82c5fa69b2377725b9b7852a3977e76 # v1.1.13
with:
authToken: ${{ secrets.GITHUB_TOKEN }}
state: success
context: Netlify Documentation Site preview
description: Development - Click "details"
target_url: ${{ env.NETLIFY_PREVIEW_URL }}
sha: ${{github.event.pull_request.head.sha || github.sha}}
File renamed without changes.
Loading