Skip to content

Releases: bazelbuild/rules_apple

0.16.1

09 May 17:48
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.25.1
  • apple_unit_test and apple_ui_test rules no longer exist. They have been replaced with platform specific rules (e.g. ios_unit_test, macos_ui_test). (85ba2d1)
  • Add support for returning the debug symbol outputs for dependencies using the --output_groups=+debug_symbols flag. (This replaces the --define=apple.propagate_embedded_extra_outputs=1 flag) (a06750b)

Thanks to the following contributors:

Please use the rules_apple.0.16.1.tar.gz release asset from your Bazel WORKSPACE.

SHA-256 digest: ec5d2ba70595e52b9678674ea3dd3eed85b5d2280e3f74b889c0f248ec1b835a

Complete list of changes

0.15.0

25 Apr 19:57
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.24.1
  • Add a macos_quick_look_plugin() rule for Quick Look plugin support. (1f8f67b)
  • The AppleTestRunner alias has been removed, usages should have migrated to AppleTestRunnerInfo. (7f4cefe)
  • Adds first class support for mlmodel files through a new apple_core_ml_library rule. Check the documentation of apple_core_ml_library for more information. (9c81847)
  • Adds support for executing macos_application targets using bazel run (67a943d) Thanks @rahul-malik!
  • Add support for bazel run for ios_application when using tree artifact outputs (0295c7a) Thanks @rahul-malik!

Thanks to the following contributors:

Please use the rules_apple.0.15.0.tar.gz release asset from your Bazel WORKSPACE.

SHA-256 digest: 23792cd999f97fc97284d1c44cb1324bfdd0bc54aa68ad513fa3705aca3b1f9e

Complete list of changes

0.14.0

08 Mar 17:23
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.23
  • objc_bundle, objc_bundle_library and objc_framework are no longer supported in rules_apple. Please migrate to their new Starlark versions, apple_bundle_import, apple_resource_bundle and apple_dynamic_framework_import/apple_static_framework_import respectively. (a06b11e)
  • Add an explicit minimum_os_version to all apple target tests. (b8f74f3)
  • Add tvos_framework rule implementation. (33bd2c6)
  • Add tvos_unit_test rule implementation. (c1d2248)
  • minimum_os_version is now a required attribute for all Apple rules that accept it. (72a20ac)
  • AppleTestRunner has been renamed to AppleTestRunnerInfo, the alias will be removed in the next release. (cb1010f)
  • Add tvos_ui_test rule implementation. (9196015)
  • New AppleBinaryInfo provider is available from rules creating binary files (e.g. macos_command_line_application). (4661129)
  • New flag --define=apple.package_swift_support=false can be used to stop packaging the SwiftSupport dylibs Defaults to true. (545a9f3)
  • New flag --define=apple.compress_ipa=true can be used to add compression to the returned ZIP archive. Defaults to false. (bc915b1)
  • Adds support for building Swift apps with Xcode 10.2 so that the system Swift dylibs can be used instead. (cac9773)

Thanks to the following contributors:

Please use the rules_apple.0.14.0.tar.gz release asset from your Bazel WORKSPACE.

SHA-256 digest: 8f32e2839fba28d549e1670dbed83606dd339a9f7489118e481814d61738270f

Complete list of changes

0.13.0

18 Jan 21:55
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.21.0.
  • Notice: This is the last version that supports objc_framework, objc_bundle and objc_bundle_library. The next version of rules_apple will not support these rules. Please migrate to their Starlark counterparts apple_dynamic_framework_import/apple_static_framework_import, apple_bundle_import and apple_resource_bundle.
  • Codesigning now supports multiple identities in provisioning profiles. (Thanks @steeve!)
  • The resources and structured_resources attribute in swift_library have been removed and won't be processed for resource propagation. Please move those resources to the data attribute instead.
  • Adds experimental support for tree artifact outputs under the --define=apple.experimental.tree_artifact_outputs=1 flag. Please note that this works only for building Apple targets, and Bazel tests are not currently supported. The latest commit of Tulsi supports usage of this flag for building and testing.
  • The @build_bazel_rules_apple//apple/testing/default_host/ios target has been removed. If you were using it as the test host for ios_unit_test targets, please create an ios_application target in your repository instead.
  • macos_extension now uses the Starlark linking API.
  • Test rules now use the Starlark linking API.
  • Entitlement validation logic will also validate the aps-environment setting (thanks @keith!).
  • Multiple minor bug fixes, cleanups and improvements (thanks @keith and @steeve!)

Complete list of changes between 0.12.0 and 0.13.0.

0.12.0

03 Jan 14:09
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.21.0.
  • apple_genrule has been removed from rules_apple. Please load it from its new location in apple_support.
    • To load the new apple_genrule, use load("@build_bazel_apple_support//rules:apple_genrule.bzl", "apple_genrule")
  • macos_application and macos_bundle is deprecating the product_type attribute. To create macOS Kernel Extensions, Spotlight Importers and XPCServices, use macos_kernel_extension, macos_spotlight_importer and macos_xpc_service instead. The product_type attribute will be removed in a subsequent release.
  • Multiple bug fixes and cleanups.

Complete list of changes between 0.11.1 and 0.12.0.

0.11.1

20 Dec 18:55
Compare
Choose a tag to compare

This is a patch release over 0.11.0.

  • This release is tested with Bazel 0.20.0 and 0.21.0.
  • Fixes an issue with entitlement validation regarding Associated Domains wildcard values.

Complete list of changes between 0.11.0 and 0.11.1.

0.11.0

20 Dec 17:32
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.20.0 and 0.21.0.
  • apple_genrule is being removed from rules_apple. Please load it from its new location in apple_support.
  • apple_framework_import has been split into apple_dynamic_framework_import and apple_static_framework_import. (thanks @kastiglione and @keith !)
  • apple_static_framework_import now supports propagation of bundled resources and force linking of the binaries. (thanks @kastiglione and @keith !)
  • Bundled frameworks are no longer signed with entitlements (thanks @jfaust !)
  • swift_library and objc_library can now reference resources through the data attribute. During 2019, we'll start removing support for the resources attributes in swift_library and objc_library, leaving only data as the entry point to reference resources.
  • tvOS and watchOS rules no longer create an intermediate apple_binary target.
  • Additional Associated Domains validation (thanks @dierksen !)
  • ios_ui_test now accepts a provisioning_profile attribute used to run UI tests on devices (thanks @xinzhengzhang !)
  • Various cleanups, bug fixes, tweaks.

Complete list of changes between 0.10.0 and 0.11.0.

0.10.0

07 Dec 21:08
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.20.0.
  • Note: The --define=apple.experimental.bundling flag is now enabled by default. This flag enables a new bundling implementation. If you're using Tulsi, you'll need to regenerate your Tulsi generated Xcode projects.
  • apple_framework_import now accepts deps that propagate other apple_framework_import dependencies.
  • New macos_dylib rule that creates a binary dylib targetting macOS platforms.
  • Swift dylibs will now be stripped of architectures not used in the app's binary.
  • Test rules now accept an env attribute with a dictionary of environment variable names and values to be made available during test execution.
  • A number of cleanups and bug fixes (thanks @keith!).

0.9.0

21 Nov 17:35
Compare
Choose a tag to compare
  • This release is tested with Bazel 0.19.0.
  • Note: The new rules mentioned here are only supported in the new bundling logic that can be enabled with --define=apple.experimental.bundling=1. We will make the new bundling logic the default in the next release.
  • Updates rules_swift to 0.4.0.
  • Updates skylib to 0.5.0.
  • Adds support for Xcode 10 for tests.
  • Adds new rules to replace deprecated Bazel native rules and attributes:
    • apple_bundle_import replaces objc_bundle
    • apple_framework_import replaces objc_framework
    • apple_resource_bundle replaces objc_bundle_library
    • apple_resource_group will replace objc_library resource attributes.
  • Adds new rules that will replace existing support for those features:
    • ios_sticker_pack_extension replaces ios_extension with product_type = apple_product_type.messages_sticker_pack_extension.
    • ios_imessage_extension replaces ios_extension with product_type = apple_product_type.messages_extension.
    • ios_imessage_application replaces ios_application with product_type = apple_product_type.messages_application.
  • Fixes small issues with resource deduplication.
  • A number of compatibility and cleanup fixes for more recent Bazel versions (thanks @keith, @benjaminp and @shoumikhin !)

0.8.0

01 Oct 15:19
Compare
Choose a tag to compare
  • The resource deduplication model changed. When resources are deduplicated from dynamic framework targets, the bundler will now account for uses of the resources outside of the transitive closure of dependencies of the framework.
  • A new bundling logic is now available when building Apple bundles. In order to test it, add --define=apple.experimental.bundling=1 to your build flags. This logic will become the default in the future.
  • Various updates and fixes in testing infrastructure.