Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency build_bazel_rules_apple to v3 #1673

Merged
merged 1 commit into from
Nov 3, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Sep 21, 2023

Mend Renovate

This PR contains the following updates:

Package Type Update Change
build_bazel_rules_apple http_archive major 2.5.0 -> 3.1.1

Release Notes

bazelbuild/rules_apple (build_bazel_rules_apple)

v3.1.1

Compare Source

What's Changed

This release is compatible with Bazel 6.x LTS, 7.x LTS, and 8.x rolling releases

MODULE.bazel Snippet
bazel_dep(name = "rules_apple", version = "3.1.1", repo_name = "build_bazel_rules_apple")
Workspace Snippet
load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "build_bazel_rules_apple",
    sha256 = "34c41bfb59cdaea29ac2df5a2fa79e5add609c71bb303b2ebb10985f93fa20e7",
    url = "https://github.com/bazelbuild/rules_apple/releases/download/3.1.1/rules_apple.3.1.1.tar.gz",
)

load(
    "@​build_bazel_rules_apple//apple:repositories.bzl",
    "apple_rules_dependencies",
)

apple_rules_dependencies()

load(
    "@​build_bazel_rules_swift//swift:repositories.bzl",
    "swift_rules_dependencies",
)

swift_rules_dependencies()

load(
    "@​build_bazel_rules_swift//swift:extras.bzl",
    "swift_rules_extra_dependencies",
)

swift_rules_extra_dependencies()

load(
    "@​build_bazel_apple_support//lib:repositories.bzl",
    "apple_support_dependencies",
)

apple_support_dependencies()

v3.1.0

Compare Source

What's Changed

This release is compatible with Bazel 6.x LTS, 7.x LTS, and 8.x rolling releases

MODULE.bazel Snippet
bazel_dep(name = "rules_apple", version = "3.1.0", repo_name = "build_bazel_rules_apple")
Workspace Snippet
load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "build_bazel_rules_apple",
    sha256 = "483cbf889d4d6f78a8302d32692012445271e21290102bad2f858f633154cc95",
    url = "https://github.com/bazelbuild/rules_apple/releases/download/3.1.0/rules_apple.3.1.0.tar.gz",
)

load(
    "@​build_bazel_rules_apple//apple:repositories.bzl",
    "apple_rules_dependencies",
)

apple_rules_dependencies()

load(
    "@​build_bazel_rules_swift//swift:repositories.bzl",
    "swift_rules_dependencies",
)

swift_rules_dependencies()

load(
    "@​build_bazel_rules_swift//swift:extras.bzl",
    "swift_rules_extra_dependencies",
)

swift_rules_extra_dependencies()

load(
    "@​build_bazel_apple_support//lib:repositories.bzl",
    "apple_support_dependencies",
)

apple_support_dependencies()

v3.0.0

Compare Source

What's Changed

  • Use platforms inside Apple rules transitions (overridable with flags), removing the need for platform_mappings with bazel 7.x+
  • Bump xctestrunner for Xcode 15 compatibility
  • Make AppIntentsMetadataProcessor fail if it outputs errors

Below are the changes that were also in previous release candidates.

What's Changed

  • Add initial support for Apple .doccarchive through a new docc_archive rule, thanks @​luispadron! See the docs for an example
  • Add initial beta visionOS support. There may be breaking changes as Xcode changes before the initial release
  • Fix issue where iOS CPUs defaulted to x86_64 instead of the current host arch
  • Fix case where xcodebuild was always being used for logic tests, thanks @​erikkerber!
  • Fix some cases for upcoming --incompatible_enable_cc_toolchain_resolution flip, thanks @​comius!
  • Fix ios_xctestrun_runner failing when using parallel testing with a false positive saying no tests ran, thanks @​kapoorlakshya!
  • Ignore more variants of noisy codesigning output
  • Assume target environment is device to ease transition to required platforms that aren't defaulting to using the device constraint
  • Silence output from appintentsmetadataprocessor

Potentially breaking changes

  • A platform_mappings file is now required in some cases (e.g. if you are on a Bazel version older than 7.0.0-pre.20230823.4). If you do not already have one you can copy rules_apple's
  • Test targets now require minimum_os_version (#​2124)
  • Adds target name to bundle output paths when bundle_name differs from name. This allows having targets with the same bundle_name in the same BUILD file, thanks @​chiragramani!
  • Replaced apple_common.multi_arch_split with new transition, this should not be a breaking change but is required for bazel 7.x support. Please file any issues you find!
  • Removes any support for Xcode prior to 14 from the rules, matching the supported versions from the App Store
  • Imported versioned (macOS) frameworks need to be the correct format (https://developer.apple.com/documentation/bundleresources/placing_content_in_a_bundle), and currently don't support --@​build_bazel_rules_apple//apple/build_settings:use_tree_artifacts_outputs/--define=apple.experimental.tree_artifact_outputs=1

Notable additions

  • Add support for app intents through the app_intents attribute
  • Add ExtensionKit support to ios_extension, macos_extension, and tvos_extension rules
  • Add rpaths to apple_xcframework generated binaries
  • Add support for watchOS single target applications, thanks @​BalestraPatrick!
  • Adding Support for UI Test Coverage, thanks @​gabijarciskeviciute and @​mattrobmattrob!

Notable improvements

  • Include private_deps when gathering resources for Apple rules
  • Include Apple Symbols for watchOS extensions, thanks @​BalestraPatrick!
  • Document Xcode version selection and invalidation strategy, thanks @​BalestraPatrick!
  • Improve exception message catching when running tests, thanks @​sebastianv1!
  • Embed frameworks in ios_message_extension, thanks @​brentleyjones!

Migrations

  • --@​build_bazel_rules_apple//apple/build_settings:use_tree_artifacts_outputs should be used instead of --define=apple.experimental.tree_artifact_outputs=1. Support for the define will be removed in the future.
  • --@​build_bazel_rules_apple//apple/build_settings:signing_certificate_name should be used instead of --ios_signing_cert_name

This release is compatible with 6.x LTS and bazel 7.x rolling releases

MODULE.bazel Snippet
bazel_dep(name = "rules_apple", version = "3.0.0", repo_name = "build_bazel_rules_apple")
Workspace Snippet
load("@​bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "build_bazel_rules_apple",
    sha256 = "20da675977cb8249919df14d0ce6165d7b00325fb067f0b06696b893b90a55e8",
    url = "https://github.com/bazelbuild/rules_apple/releases/download/3.0.0/rules_apple.3.0.0.tar.gz",
)

load(
    "@​build_bazel_rules_apple//apple:repositories.bzl",
    "apple_rules_dependencies",
)

apple_rules_dependencies()

load(
    "@​build_bazel_rules_swift//swift:repositories.bzl",
    "swift_rules_dependencies",
)

swift_rules_dependencies()

load(
    "@​build_bazel_rules_swift//swift:extras.bzl",
    "swift_rules_extra_dependencies",
)

swift_rules_extra_dependencies()

load(
    "@​build_bazel_apple_support//lib:repositories.bzl",
    "apple_support_dependencies",
)

apple_support_dependencies()

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@codecov
Copy link

codecov bot commented Sep 21, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (fe7e3f3) 85.80% compared to head (b8c2fe1) 85.77%.
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1673      +/-   ##
==========================================
- Coverage   85.80%   85.77%   -0.03%     
==========================================
  Files         566      566              
  Lines       27856    27856              
==========================================
- Hits        23901    23894       -7     
- Misses       3955     3962       +7     

see 2 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@github-actions
Copy link

github-actions bot commented Sep 21, 2023

Size test result

Old size: 8674624 bytes
New size: 8674624 bytes
Difference: +0.00%

@renovate renovate bot changed the title Update dependency build_bazel_rules_apple to v3 chore(deps): update dependency build_bazel_rules_apple to v3 Sep 23, 2023
@renovate renovate bot force-pushed the renovate/build_bazel_rules_apple-3.x branch from d243c5a to cb9be34 Compare September 25, 2023 19:11
@renovate renovate bot changed the title chore(deps): update dependency build_bazel_rules_apple to v3 Update dependency build_bazel_rules_apple to v3 Oct 14, 2023
@renovate renovate bot force-pushed the renovate/build_bazel_rules_apple-3.x branch from 5c5c32a to b2ce0a4 Compare October 18, 2023 09:59
@github-actions
Copy link

github-actions bot commented Oct 18, 2023

Bloaty Results 🐋

Compared to main

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  [ = ]       0  [ = ]       0    TOTAL

Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-1673-compared-to-main.txt

Compared to d387090 (legacy)

    FILE SIZE        VM SIZE    
 --------------  -------------- 
   +19% +22.1Mi  +401% +24.0Mi    TOTAL

Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-1673-compared-to-legacy.txt

@ntadej
Copy link
Collaborator

ntadej commented Oct 29, 2023

@louwers, can this be merged? I'm not an expert in Bazel so I do not want to break anything 😊

@renovate renovate bot force-pushed the renovate/build_bazel_rules_apple-3.x branch from 086a64e to b8c2fe1 Compare October 29, 2023 20:35
@louwers
Copy link
Collaborator

louwers commented Oct 29, 2023

@ntadej I don't think so. The way we build the .ipa for AWS Device Farm is a bit whacky, and it seems to break with this update.

I hope this will be picked up by someone so we can use Bazel to do it: bazelbuild/rules_apple#2175

@louwers louwers merged commit f0490ac into main Nov 3, 2023
21 checks passed
@louwers louwers deleted the renovate/build_bazel_rules_apple-3.x branch November 3, 2023 12:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants