Skip to content

Release v0.28.0

Compare
Choose a tag to compare
@cgrindel-app-token-generator cgrindel-app-token-generator released this 14 Feb 13:02
· 573 commits to main since this release
5784b23

What's Changed

  • chore: update README.md for v0.27.0 by @cgrindel-app-token-generator in #912
  • chore(deps): update dependency onevcat/kingfisher to from: "7.11.0" by @cgrindel-self-hosted-renovate in #913
  • chore(deps): update dependency pointfreeco/swift-composable-architecture to from: "1.8.0" by @cgrindel-self-hosted-renovate in #914
  • chore(deps): update dependency stripe/stripe-ios to from: "23.22.0" by @cgrindel-self-hosted-renovate in #915
  • feat: use swift_library_group for library products by @brentleyjones in #883
  • fix: align BCR Bazel version with .bazelversion by @cgrindel in #916

Full Changelog: v0.27.0...v0.28.0

⚠️ Breaking Changes ⚠️

  • Swift package manager products are now represented by a single swift_library_group Bazel target. Previously, a product was represented by one or more Bazel targets.
  • The Bazel targets generated for Swift packages are much shorter. Previously, the Bazel target labels were derived from an SPM target's path and name. Now, Bazel targets for SPM targets are <target name>.rspm and for SPM products is <product name>.

When you upgrade to this release, be sure to run //:swift_update_pkgs and //:update_build_files. If you do not use the Gazelle plugin to manage your build files, you will need to manually update the Swift package dependencies in your project.

If you have any questions or run into any issues, please open an issue.

Bazel Module Snippet

bazel_dep(name = "rules_swift_package_manager", version = "0.28.0")

Workspace Snippet

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "rules_swift_package_manager",
    sha256 = "eef16c8a5f9fa6102049f762823e773601a44398baf2a5de7ef7cbebcb888870",
    urls = [
        "https://github.com/cgrindel/rules_swift_package_manager/releases/download/v0.28.0/rules_swift_package_manager.v0.28.0.tar.gz",
    ],
)

load("@rules_swift_package_manager//:deps.bzl", "swift_bazel_dependencies")

swift_bazel_dependencies()

load("@cgrindel_bazel_starlib//:deps.bzl", "bazel_starlib_dependencies")

bazel_starlib_dependencies()

# MARK: - Gazelle

# gazelle:repo bazel_gazelle

load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies")
load("@rules_swift_package_manager//:go_deps.bzl", "swift_bazel_go_dependencies")
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

# Declare Go dependencies before calling go_rules_dependencies.
swift_bazel_go_dependencies()

go_rules_dependencies()

go_register_toolchains(version = "1.21.1")

gazelle_dependencies()

# MARK: - Swift Toolchain

http_archive(
    name = "build_bazel_rules_swift",
    # Populate with your preferred release 
    # https://github.com/bazelbuild/rules_swift/releases
)

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

# gazelle:repository_macro swift_deps.bzl%swift_dependencies
swift_dependencies()

swift_rules_dependencies()

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

swift_rules_extra_dependencies()