tauri/core/tauri-build/CHANGELOG.md
github-actions[bot] 594e3e2939
Apply Version Updates From Current Changes (#9869)
* apply version updates

* fix bundler version

* update lockfile

---------

Co-authored-by: lucasfernog <lucasfernog@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
2024-05-29 00:10:20 -03:00

39 KiB

Changelog

[2.0.0-beta.17]

Enhancements

  • adac2185a(#9898) Check for Android version code before building the package in release mode.

Bug Fixes

  • 19b696b61(#9710) Avoid copying resources if the target path is the same as source.

What's Changed

  • 9ac930380(#9850) Emit cargo:rustc-check-cfg instruction so Cargo validates custom cfg attributes on Rust 1.80 (or nightly-2024-05-05).

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.17
  • Upgraded to tauri-codegen@2.0.0-beta.17

Breaking Changes

  • 1df5cdeb0(#9858) Use tauri.conf.json > identifier to set the PackageName in Android and BundleId in iOS.
  • aaecb6a72(#9890) Renamed dev function to is_dev

[2.0.0-beta.16]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.16
  • Upgraded to tauri-codegen@2.0.0-beta.16

[2.0.0-beta.15]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.15
  • Upgraded to tauri-codegen@2.0.0-beta.15

[2.0.0-beta.14]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.14
  • Upgraded to tauri-codegen@2.0.0-beta.14

[2.0.0-beta.13]

Bug Fixes

  • 88c0ad9cf(#9471) Fix tauri always rebuilding even if source code didn't change.

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.13
  • Upgraded to tauri-codegen@2.0.0-beta.13

[2.0.0-beta.12]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.12
  • Upgraded to tauri-codegen@2.0.0-beta.12

[2.0.0-beta.11]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.11
  • Upgraded to tauri-codegen@2.0.0-beta.11

[2.0.0-beta.10]

New Features

  • e227fe02f(#9156) Allow plugins to define (at compile time) JavaScript that are initialized when withGlobalTauri is true.

Enhancements

  • 7213b9e47(#9124) Fallback to an empty permission set if the plugin did not define its default permissions.

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.10
  • Upgraded to tauri-codegen@2.0.0-beta.10

[2.0.0-beta.9]

Dependencies

  • Upgraded to tauri-codegen@2.0.0-beta.9
  • Upgraded to tauri-utils@2.0.0-beta.9

[2.0.0-beta.8]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.8
  • Upgraded to tauri-codegen@2.0.0-beta.8

[2.0.0-beta.7]

Bug Fixes

  • bb23511ea(#9079) Fixed generation of capability schema for permissions field which previously disallowed mixed (strings and objects) permission definition.

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.7
  • Upgraded to tauri-codegen@2.0.0-beta.7

[2.0.0-beta.6]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.6
  • Upgraded to tauri-codegen@2.0.0-beta.6

Breaking Changes

  • 3657ad82(#9008) Allow defining permissions for the application commands via tauri_build::Attributes::app_manifest.

[2.0.0-beta.5]

Breaking Changes

  • b9e6a018(#8937) The custom-protocol Cargo feature is no longer required on your application and is now ignored. To check if running on production, use #[cfg(not(dev))] instead of #[cfg(feature = "custom-protocol")].
  • b9e6a018(#8937) Removed tauri_build::CodegenContext::dev() and added tauri_build::dev().

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.5
  • Upgraded to tauri-codegen@2.0.0-beta.5

[2.0.0-beta.4]

Enhancements

  • b5eb6472(#8940) Enable Hight DPI awareness for NSIS installer so it is not blurry on some systems.

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.4
  • Upgraded to tauri-codegen@2.0.0-beta.4

[2.0.0-beta.3]

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.3
  • Upgraded to tauri-codegen@2.0.0-beta.3

[2.0.0-beta.2]

Enhancements

  • 83a68deb(#8797) Added a new configuration option tauri.conf.json > app > security > capabilities to reference existing capabilities and inline new ones. If it is empty, all capabilities are still included preserving the current behavior.
  • edb11c13(#8781) Added Attributes::plugin() to register a plugin that is inlined in the application crate.
  • 8d16a80d(#8802) Added CodegenContext::capability to include a capability file dynamically.

Bug Fixes

  • 0e8e9cd0(#8906) Fixes the capability schema not resolving inner definitions.
  • 19fb5f0b(#8782) Fix generating invalid schema files.

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.2
  • Upgraded to tauri-codegen@2.0.0-beta.2

[2.0.0-beta.1]

Enhancements

  • 4e101f80(#8756) Moved the capability JSON schema to the src-tauri/gen folder so it's easier to track changes on the capabilities folder.

Bug Fixes

  • 4e101f80(#8756) Do not trigger build script to rerun if the frontendDist directory does not exist.
  • 0f2789cd(#8757) Do not rewrite capability JSON schema if it did not change.

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.1
  • Upgraded to tauri-codegen@2.0.0-beta.1

[2.0.0-beta.0]

New Features

Enhancements

  • e8d3793c(#8732) Add config-json cargo feature flag (enabled by default) to. Disabling this feature flag will stop cargo from rebuilding when tauri.conf.json changes, see #8721 for more info.

Dependencies

  • Upgraded to tauri-utils@2.0.0-beta.0
  • Upgraded to tauri-codegen@2.0.0-beta.0

Breaking Changes

  • 8de308d1(#8723) Restructured Tauri config per RFC#5:

    • Moved package.productName, package.version and tauri.bundle.identifier fields to the top-level.
    • Removed package object.
    • Renamed tauri object to app.
    • Moved tauri.bundle object to the top-level.
    • Renamed build.distDir field to frontendDist.
    • Renamed build.devPath field to devUrl and will no longer accepts paths, it will only accept URLs.
    • Moved tauri.pattern to app.security.pattern.
    • Removed tauri.bundle.updater object, and its fields have been moved to the updater plugin under plugins.updater object.
    • Moved build.withGlobalTauri to app.withGlobalTauri.
    • Moved tauri.bundle.dmg object to bundle.macOS.dmg.
    • Moved tauri.bundle.deb object to bundle.linux.deb.
    • Moved tauri.bundle.appimage object to bundle.linux.appimage.
    • Removed all license fields from each bundle configuration object and instead added bundle.license and bundle.licenseFile.
    • Renamed AppUrl to FrontendDist and refactored its variants to be more explicit.
  • 0cdfda28(#8737) Moved mobile::PluginBuilder, mobile::update_entitlements, config::plugin_config and mobile::update_android_manifest to the new tauri-plugin crate.

  • 74a2a603(#8661) CodegenContext::build and CodegenContext::try_build have been removed, use tauri_build::try_build(tauri_build::Attributes::new().codegen(codegen)) instead.

[2.0.0-alpha.14]

Dependencies

  • Upgraded to tauri-utils@2.0.0-alpha.13
  • Upgraded to tauri-codegen@2.0.0-alpha.13

[2.0.0-alpha.13]

Dependencies

  • Upgraded to tauri-utils@2.0.0-alpha.12
  • Upgraded to tauri-codegen@2.0.0-alpha.12

[2.0.0-alpha.12]

Bug Fixes

  • a5479712(#8168) Fixed an issue that caused the resource compiler to not run on Windows when package.version was not set in tauri.conf.json preventing the app from starting.

Dependencies

  • Upgraded to tauri-utils@2.0.0-alpha.11
  • Upgraded to tauri-codegen@2.0.0-alpha.11

[2.0.0-alpha.11]

Enhancements

  • c6c59cf2 Pull changes from Tauri 1.5 release.

Dependencies

  • Upgraded to tauri-codegen@2.0.0-alpha.10
  • Upgraded to tauri-utils@2.0.0-alpha.10

[2.0.0-alpha.10]

New Features

Dependencies

  • Upgraded to tauri-utils@2.0.0-alpha.9
  • Upgraded to tauri-codegen@2.0.0-alpha.9

Breaking Changes

  • ebcc21e4(#8057) Renamed the beforeDevCommand, beforeBuildCommand and beforeBundleCommand hooks environment variables from TAURI_PLATFORM, TAURI_ARCH, TAURI_FAMILY, TAURI_PLATFORM_VERSION, TAURI_PLATFORM_TYPE and TAURI_DEBUG to TAURI_ENV_PLATFORM, TAURI_ENV_ARCH, TAURI_ENV_FAMILY, TAURI_ENV_PLATFORM_VERSION, TAURI_ENV_PLATFORM_TYPE and TAURI_ENV_DEBUG to differentiate the prefix with other CLI environment variables.

[2.0.0-alpha.9]

Dependencies

  • Upgraded to tauri-codegen@2.0.0-alpha.8
  • Upgraded to tauri-utils@2.0.0-alpha.8

[2.0.0-alpha.8]

Bug Fixes

[2.0.0-alpha.7]

New Features

  • 522de0e7(#7447) Added the config::plugin_config function to read the plugin configuration set from the CLI.
  • 1e1d839e(#7450) Added the mobile::update_android_manifest function.
  • aba04fa8(#7448) Added the mobile::update_entitlements function for iOS.

Dependencies

  • Upgraded to tauri-utils@2.0.0-alpha.7
  • Upgraded to tauri-codegen@2.0.0-alpha.7

[2.0.0-alpha.6]

Bug Fixes

  • 3256a372(#7016) Fixes injection of the proguard rules on the Android project.

[2.0.0-alpha.5]

  • 3188f376(#6883) Bump the MSRV to 1.65.
  • 2969d1cb(#6773) Use absolute path to each Android plugin project instead of copying the files to enhance developer experience.
  • cdad6e08(#6774) Changed how the tauri-android dependency is injected. This requires the gen/android project to be recreated.
  • 5a768d5c(#6886) Remove WindowsAttributes::sdk_dir.

[2.0.0-alpha.4]

  • Added android configuration object under tauri > bundle.
    • Bumped due to a bump in tauri-utils.
    • db4c9dc6 feat(core): add option to configure Android's minimum SDK version (#6651) on 2023-04-07

[2.0.0-alpha.3]

  • Read the IPHONEOS_DEPLOYMENT_TARGET environment variable to set the Swift iOS target version, defaults to 13.
    • 4c3b9ecf fix(build): iOS deployment target env var is IPHONEOS_DEPLOYMENT_TARGET (#6602) on 2023-03-31

[2.0.0-alpha.2]

  • Add mobile::PluginBuilder for running build tasks related to Tauri plugins.
    • 05dad087 feat: initial work for iOS plugins (#6205) on 2023-02-11

[2.0.0-alpha.1]

  • Refactor mobile environment variables.
    • dee9460f feat: keep CLI alive when iOS app exits, show logs, closes #5855 (#5902) on 2022-12-27
  • Bump the MSRV to 1.64.
  • Removed mobile logging initialization, which will be handled by tauri-plugin-log.
    • on undefined

[2.0.0-alpha.0]

  • Set environment variables used by tauri::mobile_entry_point.
    • 98904863 feat(core): add mobile_entry_point macro (#4983) on 2022-08-21
  • First mobile alpha release!

[1.5.1]

Dependencies

  • Upgraded to tauri-utils@1.5.2
  • Upgraded to tauri-codegen@1.4.2

[1.5.0]

What's Changed

  • d1e09da0(#7918) Bump to 1.5 due to tauri-utils dependency bump.

[1.4.1]

Bug Fixes

  • 5ecb46b3(#7773) Automatically set rpath on macOS if frameworks are bundled and copy frameworks to src-tauri/target/Frameworks for usage in development.
  • 290e366a(#7419) Correctly copy the WebView2 runtime in development when webviewInstallMode is used instead of webviewFixedRuntimePath.

Dependencies

  • Upgraded to tauri-utils@1.5.0
  • Upgraded to tauri-codegen@1.4.1

[1.4.0]

Enhancements

[1.3.0]

  • Bump minimum supported Rust version to 1.60.
    • 5fdc616d feat: Use the zbus-backed of notify-rust (#6332) on 2023-03-31
  • Add initial support for building nsis bundles on non-Windows platforms.
    • 60e6f6c3 feat(bundler): Add support for creating NSIS bundles on unix hosts (#5788) on 2023-01-19
  • Add WindowsAttributes::app_manifest to specify the application manifest on Windows.
    • bca09f7f feat(tauri-build): add option to specify Windows manifest, closes #5584 (#5730) on 2022-12-14
  • Added support for Cargo's workspace inheritance for package information. The cli now also detects inherited tauri and tauri-build dependencies and disables manifest rewrites accordingly.
    • cd8c074a feat(cli): add support for Cargo's workspace inheritance for the package version, closes #5070 (#5775) on 2022-12-14
    • d20a7288 feat: Further improve workspace inheritance, closes #6122, #5070 (#6144) on 2023-01-26
  • Pin winnow crate to 0.4.1 to keep the 1.60 MSRV.

[1.2.1]

  • Fix allowlist > app > show/hide always disabled when allowlist > app > all: false.
    • Bumped due to a bump in tauri-utils.
    • bb251087 fix(core): extend allowlist with app's allowlist, closes #5650 (#5652) on 2022-11-18

[1.2.0]

[1.1.1]

  • Add missing allowlist config for set_cursor_grab, set_cursor_visible, set_cursor_icon and set_cursor_position APIs.
    • Bumped due to a bump in tauri-utils.
    • c764408d fix: Add missing allowlist config for cursor apis, closes #5207 (#5211) on 2022-09-16

[1.1.0]

  • Rerun codegen if assets or icons change.
    • ff8fd761 fix(tauri-build): rerun if assets or icons change (#4910) on 2022-08-10
  • Create the desktop and mobile cfg aliases.
    • c04d0340 feat(core): prepare build for mobile targets (#4830) on 2022-08-02
  • Added support to configuration files in TOML format (Tauri.toml file).
    • ae83d008 feat: add support to TOML config file Tauri.toml, closes #4806 (#4813) on 2022-08-02
  • Enhance the dialog style on Windows via the manifest dependency Microsoft.Windows.Common-Controls v6.0.0.0.
    • 5c5c42ed feat(build): use modern dialog styles on Windows, closes #4709 (#4840) on 2022-08-02
  • Fix root of codegen output when using the CodegenContext API.
    • ed581950 fix(tauri-build): use ::tauri as root for the CodegenContext (#4894) on 2022-08-08
  • Return an error if a sidecar is configured with the same file name as the application.
  • Only rewrite temporary icon files when the content change, avoid needless rebuilds.
    • f957cbb5 fix(codegen): write output file when contents change (#4889) on 2022-08-09

[1.0.4]

  • Reduce the amount of allocations when converting cases.
    • bc370e32 feat: reduce the amount of heck-related allocations (#4634) on 2022-07-11

[1.0.3]

  • Improve configuration deserialization error messages.
    • 9170c920 feat(core): improve config deserialization error messages (#4607) on 2022-07-06
  • The TAURI_CONFIG environment variable now represents the configuration to be merged instead of the entire JSON.
    • fa028ebf refactor: do not pass entire config from CLI to core, send patch instead (#4598) on 2022-07-06

[1.0.2]

  • Expose platform::windows_version function.
    • Bumped due to a bump in tauri-utils.
    • bf764e83 feat(utils): expose windows_version function (#4534) on 2022-06-30

[1.0.1]

  • Changed the BundleConfig::targets to a BundleTarget enum to enhance generated documentation.
    • Bumped due to a bump in tauri-utils.
    • 31c15cd2 docs(config): enhance documentation for bundle targets, closes #3251 (#4418) on 2022-06-21
  • Added platform::is_windows_7.
    • Bumped due to a bump in tauri-utils.
    • 57039fb2 fix(core): add windows 7 notification support (#4491) on 2022-06-28
  • Suppress unused variable warning in release builds.
    • Bumped due to a bump in tauri-utils.
    • 45981851 chore(lint): unused variable warnings for release builds (#4411) on 2022-06-22
  • Added webview install mode options.
    • Bumped due to a bump in tauri-utils.
    • 2ca762d2 feat(bundler): extend webview2 installation options, closes #2882 #2452 (#4466) on 2022-06-26

[1.0.0]

  • Upgrade to stable!

[1.0.0-rc.15]

  • Read the tray icon path relatively to the config directory.
    • Bumped due to a bump in tauri-codegen.
    • 562e8ca2 fix(codegen): tray icon path is relative to the config directory on 2022-06-15

[1.0.0-rc.14]

  • Do not copy the tray icon to the output directory on Linux since it is embedded in the binary.
    • 4ce8e228 refactor(core): use Icon for tray icons (#4342) on 2022-06-14

[1.0.0-rc.13]

  • Copy tauri.conf.json > tauri.bundle.windows.webview_fixed_runtime_path as a resource to the target directory to fix development usage of a fixed Webview2 runtime path.
    • 8a634895 fix(build): fixed Webview2 runtime path in development, closes #4308 on 2022-06-10
  • Improve usage of the GNU toolchain on Windows by copying the Webview2Loader.dll file to the target directory.
    • 58a6879b feat(tauri-build): improve Windows GNU toolchain usage, closes #4319 (#4323) on 2022-06-12
  • Only statically link the VC runtime when the STATIC_VCRUNTIME environment variable is set to true (automatically done by the Tauri CLI).
    • d703d27a fix(build): statically link VC runtime only on tauri build (#4292) on 2022-06-07

[1.0.0-rc.12]

  • Statically link the Visual C++ runtime instead of using a merge module on the installer.

[1.0.0-rc.11]

  • Create dev cfg alias.

[1.0.0-rc.10]

  • Delete existing sidecar before copying new one.
    • a737f25c fix(tauri-build): delete existing sidecar file, closes #4134 (#4167) on 2022-05-18

[1.0.0-rc.9]

  • Search tauri.conf.json > tauri > bundle > icons for a .ico file for the window icon instead of simple default icons/icon.ico when WindowsAttributes::window_icon_path is not set.
    • bad85a1f feat(build): find .ico in config instead of default icons/icon.ico (#4115) on 2022-05-13

[1.0.0-rc.8]

  • Properly set file version information for the Windows executable.
    • 1ca2dd67 fix(tauri-build): properly set executable version info on Windows (#4045) on 2022-05-03

[1.0.0-rc.7]

  • Rerun build script if TAURI_CONFIG environment variable change.
    • 7ae9e252 fix(tauri-build): rerun if TAURI_CONFIG env var changes on 2022-04-26

[1.0.0-rc.6]

  • Copy system tray icon resource to the target directory on Linux.
    • f2a30d8b refactor(core): use ayatana appindicator by default, keep option to use gtk (#3916) on 2022-04-19

[1.0.0-rc.5]

  • Print error context on the build panic.
    • 49546c52 feat(build): print error context (#3644) on 2022-03-09

[1.0.0-rc.4]

  • Parse window icons at compile time.
    • Bumped due to a bump in tauri-codegen.
    • 8c935872 refactor(core): move png and ico behind Cargo features (#3588) on 2022-03-05

[1.0.0-rc.3]

  • Automatically emit cargo:rustc-env=MACOSX_DEPLOYMENT_TARGET with the value set on tauri.conf.json > tauri > bundle > macos > minimumSystemVersion.
    • 4bacea5b feat(core): set MACOSX_DEPLOYMENT_TARGET environment variable, closes #2732 (#3496) on 2022-02-17

[1.0.0-rc.2]

  • Rerun if sidecar or resource change.
    • afcc3ec5 fix(build): rerun if resource or sidecar change (#3460) on 2022-02-14

[1.0.0-rc.1]

  • Remove cargo:rerun-if-changed check for non-existent file that caused projects to always rebuild.
    • 65287cd6 remove non-existent cargo rerun check (#3412) on 2022-02-11

[1.0.0-rc.0]

  • Allow user to specify windows sdk path in build.rs.
    • 59b6ee87 fix(tauri-build): allow user to specify win sdk path (fix: #2871) (#2893) on 2021-11-16
  • Adds support for using JSON5 format for the tauri.conf.json file, along with also supporting the .json5 extension.

Here is the logic flow that determines if JSON or JSON5 will be used to parse the config:

  1. Check if tauri.conf.json exists a. Parse it with serde_json b. Parse it with json5 if serde_json fails c. Return original serde_json error if all above steps failed
  2. Check if tauri.conf.json5 exists a. Parse it with json5 b. Return error if all above steps failed
  3. Return error if all above steps failed
  • 995de57a Add seamless support for using JSON5 in the config file (#47) on 2022-02-03
  • Move the copying of resources and sidecars from cli.rs to tauri-build so using the Cargo CLI directly processes the files for the application execution in development.
    • 5eb72c24 refactor: copy resources and sidecars on the Cargo build script (#3357) on 2022-02-08
  • The minimum Rust version is now 1.56.
    • a9dfc015 feat: update to edition 2021 and set minimum rust to 1.56 (#2789) on 2021-10-22
  • Validate tauri dependency features under Cargo.toml matching tauri.conf.json's allowlist.
    • 4de285c3 feat(core): validate Cargo features matching allowlist [TRI-023] on 2022-01-09

[1.0.0-beta.4]

  • Implement Debug on public API structs and enums.
    • fa9341ba feat(core): implement Debug on public API structs/enums, closes #2292 (#2387) on 2021-08-11

[1.0.0-beta.3]

  • Improve ESM detection with regexes.
    • Bumped due to a bump in tauri-codegen.
    • 4b0ec018 fix(core): improve JS ESM detection (#2139) on 2021-07-02
  • Inject invoke key on script tags with type="module".
    • Bumped due to a bump in tauri-codegen.
    • f03eea9c feat(core): inject invoke key on <script type="module"> (#2120) on 2021-06-29

[1.0.0-beta.2]

  • Detect ESM scripts and inject the invoke key directly instead of using an IIFE.
    • Bumped due to a bump in tauri-codegen.
    • 7765c7fa fix(core): invoke key injection on ES module, improve performance (#2094) on 2021-06-27
  • Improve invoke key code injection performance time rewriting code at compile time.
    • Bumped due to a bump in tauri-codegen.
    • 7765c7fa fix(core): invoke key injection on ES module, improve performance (#2094) on 2021-06-27

[1.0.0-beta.1]

  • Pull Windows resource information (FileVersion, ProductVersion, ProductName and FileDescription) from tauri.conf.json > package configuration.
    • dc6b0d85 feat(core): set .rc values from tauri.conf.json, closes #1849 (#1951) on 2021-06-05

[1.0.0-beta.0]

  • The try_build method now has a Attributes argument to allow specifying the window icon path used on Windows.
    • c91105f refactor(build): allow setting window icon path on try_build (#1686) on 2021-05-03

[1.0.0-beta-rc.1]

  • The package info APIs now checks the package object on tauri.conf.json.
    • Bumped due to a bump in tauri-codegen.
    • 8fd1baf fix(core): pull package info from tauri.conf.json if set (#1581) on 2021-04-22
    • f575aaa fix: change files not referencing core packages (#1619) on 2021-04-25

[1.0.0-beta-rc.0]

  • Update all code files to have our license header.
    • bf82136 feat(license): SPDX Headers (#1449) on 2021-04-11
    • a6def70 Refactor(tauri): move tauri-api and tauri-updater to tauri (#1455) on 2021-04-11
    • aea6145 refactor(repo): add /tooling folder (#1457) on 2021-04-12