github beeware/briefcase v0.3.17
0.3.17

2 months ago

Features

  • Android apps are now able to customize the libraries included in the app at build time. (#485)
  • App permissions can now be declared as part of an app's configuration. (#547)
  • The -C/--config option can now be used to override app settings from the command line. (#1115)
  • The verbosity flag, -v, was expanded to support three levels of logging verbosity. (#1501)
  • Briefcase now supports GUI bootstrap plugins to customize how new projects are created. (#1524)
  • GitPython's debug logging is now included in deep debug output. (#1529)
  • RCEdit v2.0.0 is now used to build Windows apps. Run briefcase upgrade to use this latest version. (#1543)
  • The Flatpak runtimes for new projects were updated. org.freedesktop.Platform will now default to 23.08; org.gnome.Platform will now default to 45; and org.kde.Platform will now default to 6.6. (#1545)
  • When creating new projects with the briefcase new command, project configuration overrides can be specified via the -Q command line argument. For instance, a specific license can be specified with -Q "license=MIT license". (#1552)
  • New virtual devices for the Android emulator are created using the Pixel 7 Pro skin. (#1554)
  • The web server for running static web projects now falls back to a system allocated port if the requested port is already in use. (#1561)
  • Flatpaks are now created with permissions to access the GPU and sound devices. (#1563)
  • AppImages can now be built for the ARM architecture. (#1564)
  • Apps can now specify a primary color (for both light and dark modes), and an accent color. If the platform allows apps to customize color use, these colors will be used to style the app's presentation. (#1566)
  • The version of PursuedPyBear for new projects was bumped from 1.1 to 3.2.0. (#1592)
  • Python 3.12 is now supported on Android. (#1596)
  • Android apps can now specify the base theme used to style the application. (#1610)
  • The Java JDK was upgraded from 17.0.8.1+1 to 17.0.10+7. Run briefcase upgrade java to upgrade existing Briefcase installations. (#1611)
  • When the Android emulator fails to start up properly, users are now presented with additional resources to help resolve any issues. (#1630)

Bugfixes

  • When a custom Briefcase template from a git repository is used to create an app, Briefcase now ensures that git repository is always used. (#1158)
  • The filter for iOS build warnings was improved to catch messages from Xcode 15.0.1. (#1507)
  • When merging dependencies on macOS, file permissions are now preserved. (#1510)
  • flatpak-builder 1.3+ can now be correctly identified. (#1513)
  • The BeeWare icon of Brutus is now used as the runtime icon for new projects created with PyGame. (#1532)
  • Linux System RPM packaging for openSUSE Tumbleweed no longer errors with FileNotFoundError. (#1595)
  • Any ANSI escape sequences or console control codes are now stripped in all output captured in the Briefcase log file. (#1604)
  • The detection of physical Android devices on macOS was made more resilient. (#1627)

Backward Incompatible Changes

  • The use of AppImage as an output format now generates a warning. (#1500)
  • Support for creating new projects using PySide2 has been removed. Briefcase's release testing will no longer explicitly verify compatibility with PySide2. (#1524)
  • The Flatpak build process no longer strips binaries included in third-party (e.g. PyPI) packages that are bundled with the app. (#1540)
  • New projects will now use manylinux_2_28 instead of manylinux2014 to create AppImages in Docker. (#1564)
  • It is highly recommended that Android applications add a definition for build_gradle_dependencies to their app configuration. A default value will be used if this option is not explicitly provided. Refer to the Android documentation for the default value that will be used. (#1610)

Documentation

  • The common options available to every command have now been documented. (#1517)

Misc

Don't miss a new briefcase release

NewReleases is sending notifications on new releases.