Skip to content

Releases: electron/forge

v6.4.0

19 Aug 00:52
0cd8fb7
Compare
Choose a tag to compare

What's Changed

Full Changelog: v6.3.0...v6.4.0

v6.3.0

08 Aug 21:03
v6.3.0
24d95ff
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v6.2.1...v6.3.0

v6.2.1

15 Jun 23:19
v6.2.1
df8a722
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v6.1.1...v6.2.1

v6.1.1

04 Apr 22:43
v6.1.1
5b40a8d
Compare
Choose a tag to compare

New in this Release

A Vite template is now available in Forge! 🚀 Thanks to @caoxiemeihao for contributing this template and plugin.

A plugin for Electron Fuses is now available in Forge! 🌟 Thanks to @erikian for contributing this plugin.

Features

What's Changed

New Contributors

Full Changelog: v6.0.5...v6.1.1

v6.0.5

07 Feb 01:29
89d0cd2
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v6.0.4...v6.0.5

v6.0.4

30 Nov 22:07
7c93695
Compare
Choose a tag to compare

What's Changed

v6.0.4 is a small release with a lot of internal code cleanup changes. Most importantly for users, this release adds clearer error messages for [object Object] errors that were thrown during the Make step.

  • fix(core): allow the forge.config property in package.json to point to a non-js file by @erikian in #3070
  • docs: fix InternalOptions links in API docs by @erickzhao in #3083
  • fix(all): disallow throwing literals (@typescript-eslint/no-throw-literal) by @erickzhao in #3086
  • fix(publisher-ers): properly publish non-default flavours by @dariusclay in #3079

Internal changes

New Contributors

Full Changelog: v6.0.3...v6.0.4

v6.0.3

15 Nov 00:48
v6.0.3
5f6ec68
Compare
Choose a tag to compare

Electron Forge v6.0.3 is the direct successor to v6.0.1.

What's Changed

New Contributors

Full Changelog: v6.0.1...v6.0.3

v6.0.2

14 Nov 23:19
v6.0.2
11cf4b5
Compare
Choose a tag to compare
v6.0.2 Pre-release
Pre-release

We failed the npm publish for this version so we recommend upgrading directly to v6.0.3.

Anya shocked

v6.0.1

08 Nov 19:45
v6.0.1
Compare
Choose a tag to compare

What's Changed

Refactors

  • refactor: use listr2 for the package, make and publish commands by @MarshallOfSound in #3043
    • This PR also fixed a long-standing issue where targeting the mas platform in the Package step would actually package for darwin.
  • refactor: migrate import command to listr2 by @MarshallOfSound in #3048

Internal Changes

Full Changelog: v6.0.0...v6.0.1

v6.0.0

02 Nov 18:36
Compare
Choose a tag to compare

What's Changed

Breaking changes

Forge has spent a considerable time in beta development; this is a list of breaking changes made in recent betas (>= 6.0.0-beta.65), so that users who have been using the later beta versions in their apps can more easily transition to the stable release.

A complete list of changes and commits can be found below.

Config: Changed plugins syntax (#2963)

The plugins array now takes objects containing an object with properties name and config, rather than tuples containing the plugin name and config.

This aligns the syntax for this configuration with the publishers and makers arrays.

{
  plugins: [
-      [
-        '@electron-forge/plugin-webpack',
-        { /* ... */ }
-      ]
+
+      {
+        name: '@electron-forge/plugin-webpack',
+        config: { /* ... */ }
+      }
 ]
}

Config: Prefer forge.config.js for new Forge projects (#2991) (#2995)

We have changed the electron-forge init and electron-forge import commands to create a JavaScript config file rather than a section in package.json. This is to better
support dynamic build logic that isn't possible with the JSON format. Forge now has better support for alternate configuration syntaxes via rechoir.

This is a breaking change for any existing third-party templates and plugins:

  • The internal signature of Plugin.getHook(name) has changed to Plugin.getHooks().name.
  • Templates that mutated the Forge config within package.json will need to instantiate their own forge.config.js or forge.config.ts

Config: Renamed Electron Rebuild config (#2963)

For consistency with the packagerConfig option for electron-packager, the field to configure @electron/rebuild has now been shortened to rebuildConfig.

{
-  electronRebuildConfig: { /* ... */ }
+  rebuildConfig: { /* ... */ }
}

Config: Renamed ElectronRebuildConfig (#2963)

Removed @electron-forge/template-typescript template (#2948)

This has been removed in favor of the [Webpack + TypeScript Template].

Maker: Upgraded Maker Wix dependency to [email protected] (3008))

This upgrade includes a rename from appIconPath to icon in the config (#153). This aligns WiX MSI's icon config with the other makers.

Build: Upgraded required Node.js to 14 LTS (#2921)

Package: Upgraded package dependency to electron-packager@17 (#2978)

The upgrade to Electron Packager 17 introduces the shiny new @electron/osx-sign package for macOS code signing. It's a rewrite of the old electron-osx-sign tool with more sensible defaults.

To migrate, we recommend seeing if the default packagerConfig.osxSign options work for you and tweaking the default entitlements to your needs. Otherwise, see the @electron/osx-sign MIGRATION.md doc for a 1:1 conversion from the old config options to the new ones.

Command: Removed lint command (#2964)

Command: Removed install command (#2958)


Changelog

Breaking Changes

Features

  • feat(plugin-webpack): improve native asset relocation without forking Vercel loader by @timfish in #2320
  • feat(plugin-webpack): add nodeIntegration config for renderers by @malept in #2330
  • feat(plugin-webpack): add devContentSecurityPolicy config option by @malept in #2332
  • feat(webpack-plugin): upgrade to Webpack 5 by @YvanGuidoin in #2225
  • feat: add support for forge.config.ts et. al by @MarshallOfSound in #2993
  • feat(core): allow mutating packageJSON on load by @MarshallOfSound in #513
  • feat(core): add basic support for non-exact Electron versions by @malept in #680
  • V6 API by @MarshallOfSound in #433
  • feat: move create-electron-app into forge by @VerteDinde in #2988
  • feat(publisher-s3): add keyResolver option to allow users to make their own S3 key path by @MarshallOfSound in #482
  • Typescript :) by @MarshallOfSound in #495
  • feat(plugin-local-electron): add plugin-local-electron by @MarshallOfSound in #501
  • feat(generic): add source-map-support for better stacktraces by @malept in #488
  • feat: use forge.config.ts in the webpack typescript template by @MarshallOfSound in #3012
  • feat(publisher-s3): Add sessionToken and change default fallback by @bboure in #2984
  • feat(core): resolve forge.config.js by default if it exists by @MarshallOfSound in #569
  • feat(core): allow no config to be present, default to an empty object by @MarshallOfSound in #543
  • feat(core): use git config to determine author before username by @pd4d10 in #920
  • feat(core): add "init --force" to allow overwriting an existing dir by @malept in #1020
  • feat: add typescript-webpack template by @codebytere in #1344
  • feat: add template for typescript by @codebytere in #1319
  • feat(plugin-webpack): add an option to export webpack compilation stats by @sirgallifrey in #639
  • feat(core): add platform and arch to generateAssets hook parameters by @timfish in #2327
    #2344
  • feat(plugin-webpack): allow most webpack-dev-server options to be configurable by @malept in #2444
  • feat(plugin-webpack): allow specifing a seperate webpack config for your preload by @kyruzic in #2679
  • feat: Make autoUpdate and autoLaunch features configurable in MakerWixConfig by @pthompson-asana in #2620
  • feat(template): add a default preload script by @malept in #2722
  • feat: Various improvements for electron/template by @felixrieseberg in #950
  • feat(cli): add --inspect-brk-electron option by @MOZGIII in #1328
  • feat(publisher-ers): support flavor config by @erickzhao in #2766
  • feat: 🎸 Add packageSourceMaps option to WebpackPluginConfig by @zac-jacobson in #2581
  • feat: allow disabling maker in config by @erickzhao in #2754
  • feat: 🎸 allow specifying alternative tag prefix by @tylerbrandt in #2605
  • feat(plugin-webpack): Allow each entrypoint to specify nodeIntegration by @chetbox in #2867
  • feat: remove preload.js from TypeScript templates by @itsananderson in #2938
  • feat(plugin-webpack): support standalone preload entry points by @erickzhao in #2950
  • feat(webpack-plugin): webpack 5 configuration factory by @erickzhao in #2776
  • feat(publisher-github): add retry support by @malept in #2550
  • feat(publisher-github): add debug support for Octokit by @malept in #2499
  • feat(publisher-bitbucket): initial publish publisher-bitbucket by @lukebatchelor in #571
  • feat: adds a hook before MSICreator.create() is called by @mako-taco in #623

Fixes

  • fix(packager): "packaging application" log never stops when building for multiple architectures by @macdja38 in #3006
  • fix: do not proxify class instanc...
Read more