Releases: bazelbuild/rules_swift
1.6.0
What's Changed
- Fixed sanitizers on Linux (#975)
- Adds
-enable-bare-slash-regex
on Linux if supported (#971) - Added workaround for Swift + lld bug (#978)
- Enabled
swift.coverage_prefix_map
by default (#1002) - Added
--test_filter
support (#999) - Fixed
swift.use_global_index_store
when usingswift.file_prefix_map
(#1001) - Upgraded
apple_support
to 1.4.1 (#1010) - Enabled
-debug-prefix-map
by default on Linux (#1011) - Enabled
swift.remap_xcode_path
default (#1012) - Enabled
swift.use_response_files
by default on Linux (#1013) - Enabled
swift.file_prefix_map
by default if supported (#1014)
This release is compatible with 5.x LTS and bazel 6.x rolling releases.
MODULE.bazel Snippet
bazel_dep(name = "rules_swift", version = "1.6.0", repo_name = "build_bazel_rules_swift")
Workspace Snippet
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "build_bazel_rules_swift",
sha256 = "d25a3f11829d321e0afb78b17a06902321c27b83376b31e3481f0869c28e1660",
url = "https://github.com/bazelbuild/rules_swift/releases/download/1.6.0/rules_swift.1.6.0.tar.gz",
)
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()
1.5.1
What's Changed
This release is compatible with 5.x LTS and bazel 6.x rolling releases.
Workspace Snippet
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "build_bazel_rules_swift",
sha256 = "84e2cc1c9e3593ae2c0aa4c773bceeb63c2d04c02a74a6e30c1961684d235593",
url = "https://github.com/bazelbuild/rules_swift/releases/download/1.5.1/rules_swift.1.5.1.tar.gz",
)
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()
1.5.0
What's Changed
- Enable
swift.cacheable_swiftmodules
by default (#957) - Enable
swift.use_global_module_cache
by default (#956) - Update skylib (#954)
- Add support for automatically pushing bzlmod updates to the Bazel Central Registry (#948)
This release is compatible with 5.x LTS and bazel 6.x rolling releases.
Workspace Snippet
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "build_bazel_rules_swift",
sha256 = "32f95dbe6a88eb298aaa790f05065434f32a662c65ec0a6aabdaf6881e4f169f",
url = "https://github.com/bazelbuild/rules_swift/releases/download/1.5.0/rules_swift.1.5.0.tar.gz",
)
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()
1.4.0
What's Changed
- Fix incremental compilation when generated header is nested in a directory, thanks @brentleyjones!
- Add
-disable-autolink-framework
for static frameworks to avoid invalidLC_LINKER_OPTION
s with newer bazel / rules_apple versions
This release is compatible with 5.x LTS and bazel 6.x rolling releases.
Workspace Snippet
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "build_bazel_rules_swift",
sha256 = "c244e9f804a48c27fe490150c762d8b0c868b23ef93dc4e3f93d8117ca216d92",
url = "https://github.com/bazelbuild/rules_swift/releases/download/1.4.0/rules_swift.1.4.0.tar.gz",
)
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()
1.3.0
What's Changed
- Enable whole module optimization by default for
--compilation_mode opt
builds. Pass--features=-swift.opt_uses_wmo
to restore the previous behavior - Support
env
inswift_test
, thanks @maxwellE! - Add ability to use
PathToUnderscores
in proto to Swift generation. Enabled with--features swift.generate_path_to_underscores_from_proto_files
, thanks @mattrobmattrob! - Add Swift 5.6 feature for partially explicit modules that can be used in place of VFS overlays to better support incremental compilation. Enabled with
swift.use_explicit_swift_module_map
- Fix incremental compilation issue with emitting Objective-C headers
- Transition
--proto_compiler
instead of patchingrules_proto
to better support--@build_bazel_rules_swift//swift:universal_tools
, thanks @thii! - Match Swift Package Manager behavior for main entry point binaries
- Update
index-import
to use a universal binary, thanks @brentleyjones! - Update rules_proto
This release is compatible with 5.x LTS and bazel 6.x rolling releases.
Workspace Snippet
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "build_bazel_rules_swift",
sha256 = "2ce874c8c34a03a0a33bfb0c8100f0be32279e0a40f5b794fd943f15441e034a",
url = "https://github.com/bazelbuild/rules_swift/releases/download/1.3.0/rules_swift.1.3.0.tar.gz",
)
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()
1.2.0
- Enable precompiling swift implicit dep PCMs, thanks @dierksen!
DEVELOPER_DIR
is now required on Apple platforms, thanks @keith!- Add support for Swift 5.7's new
-file-prefix-map
flag, thanks @keith!
This release is compatible with 5.x LTS and bazel 6.x rolling releases
Please use the release asset from your Bazel WORKSPACE instead of
GitHub's asset to reduce download size and improve reproducibility.
SHA-256 digest: 51efdaf85e04e51174de76ef563f255451d5a5cd24c61ad902feeadafc7046d9
1.1.1
- Fix
swift_import
- Add additional outputs to the swift module in SwiftInfo
- Support Swift 5.7 Bare Slash Regex Literal, thanks @chiragramani!
- This release is compatible with 5.x LTS and bazel 6.x rolling releases
Please use the release asset from your Bazel WORKSPACE instead of
GitHub's asset to reduce download size and improve reproducibility.
SHA-256 digest: 043897b483781cfd6cbd521569bfee339c8fbb2ad0f0bdcd1b3749523a262cf4
1.1.0
- Update
apple_support
to 1.3.0 - Add
-gmodules
flag to swift compilations for a new lldb regression in Xcode 13.3 - Use the target triple from the C++ toolchain instead of deriving it from values in the Apple configuration fragment
- Remove the
toolchain
field fromSwiftUsageInfo
- Remove
RULES_SWIFT_BUILD_DUMMY_WORKER
- Disable implicit modules for Swift compile actions when the
swift.use_c_modules
feature is set - Migrate
ObjcConfiguration
usage to equivalent info inCppConfiguration
- Conditionally add developer framework paths
- Return
SwiftInfo
fromswift_{binary,test}
- Add basic sanitizer support for
swift_test
- Add
apple.swizzle_absolute_xcttestsourcelocation
feature - This release is compatible with 5.x LTS and bazel 6.x rolling releases
Please use the release asset from your Bazel WORKSPACE instead of
GitHub's asset to reduce download size and improve reproducibility.
SHA-256 digest: b672c212173ab3b3a9c4666028c08ff474915c3ed2a5c19eb5d9b8e84acc1373
1.0.0
- Migrate the worker to use the JSON protocol instead of protobuf, this should reduce compilation time when starting from scratch
- Fix incremental compilation issues with Swift 5.6+, thanks @brentleyjones!
- Add
swift.emit_symbol_graph
feature for use withdocc
, thanks @jpsim! - Update gRPC / swift_grpc_library, thanks @achew22
- Add initial Windows support, thanks @compnerd!
- Add tests for missing
bzl_library
targets, thanks @cgrindel - Switch to standard semver release versioning
- This release is compatible with 5.x LTS and bazel 6.x rolling releases
Please use the release asset from your Bazel WORKSPACE instead of
GitHub's asset to reduce download size and improve reproducibility.
SHA-256 digest: 12057b7aa904467284eee640de5e33853e51d8e31aae50b3fb25d2823d51c6b8
0.27.0
- Fix incremental builds with Xcode 13.3 / Swift 5.6
- Add
bazel coverage
support to swift_test - Disable noisy warning from using old Swift driver. Note that it is deprecated and Apple will likely remove it soon
- Fix swift_binary + apple_static_framework_import duplicate symbols issue
- Fix deduplication of some Objective-C dependencies' linker flags, and retain the initial list instead
- This release is compatible with 5.x LTS and bazel 6.x rolling releases
Please use the release asset from your Bazel WORKSPACE instead of
GitHub's asset to reduce download size and improve reproducibility.
SHA-256 digest: a2fd565e527f83fb3f9eb07eb9737240e668c9242d3bc318712efa54a7deda97