Skip to content

Releases: bazel-contrib/rules_d

v0.5.1

23 Dec 16:53

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.5.1")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "dmd-2.111.0")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "d7583379a2a276ad027bd23c4e805b2174ad2044c83d03b8bc0e98392919dadb",
    strip_prefix = "rules_d-0.5.1",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.5.1/rules_d-v0.5.1.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "dmd_toolchain",
    d_version = "dmd-2.111.0",
)

d_register_toolchains(
    "ldc_toolchain",
    d_version = "ldc-1.41.0",
)

What's Changed

  • fix: add phobos -ldl, -lm and -lphtread linker flags by @dcarp in #145

Full Changelog: v0.5.0...v0.5.1

v0.5.0

22 Dec 15:22

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.5.0")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "dmd-2.111.0")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "46867c1c976423b91c38ec9f068b2c87f33bca88b4a3ca1b9a2e6e723090adc3",
    strip_prefix = "rules_d-0.5.0",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.5.0/rules_d-v0.5.0.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "dmd_toolchain",
    d_version = "dmd-2.111.0",
)

d_register_toolchains(
    "ldc_toolchain",
    d_version = "ldc-1.41.0",
)

What's Changed

  • chore(deps): update bazel-contrib/publish-to-bcr action to v1.1.0 by @renovate[bot] in #137
  • chore(deps): update pre-commit hook commitizen-tools/commitizen to v4.10.1 by @renovate[bot] in #136
  • Link with cc_common.link by @yanok in #135
  • chore: update to rules-template@3194a79 state by @dcarp in #138
  • chore(deps): update dependency bazel_skylib_gazelle_plugin to v1.8.2 by @dcarp in #139
  • fix: add .bazelrc flag to support rules_cc >=0.2.14, update workspace… by @dcarp in #140
  • chore(deps): update bazel-contrib/.github action to v7.2.4 by @renovate[bot] in #142
  • chore: update BCR CI image os by @dcarp in #143

Full Changelog: v0.4.1...v0.5.0

v0.4.1

13 Dec 15:18

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.4.1")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "dmd-2.111.0")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "910a7f94e5d1a2ea83c39827f72d1016f7a3700293a49d4b735c886141ff86eb",
    strip_prefix = "rules_d-0.4.1",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.4.1/rules_d-v0.4.1.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "dmd_toolchain",
    d_version = "dmd-2.111.0",
)

d_register_toolchains(
    "ldc_toolchain",
    d_version = "ldc-1.41.0",
)

What's Changed

  • fix(doc): fix compiler selection example in release notes by @dcarp in #130
  • Use CC toolchain for linking (updated branch name for CI) by @yanok in #133
  • fix: add curl dependency by @dcarp in #134

New Contributors

Full Changelog: v0.4.0...v0.4.1

v0.4.0

29 Nov 15:18

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.4.0")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "auto")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "11d7d86a11e5d6131356790efd1b737a7a7d2efca77a42d4c97f7deacf78ecdc",
    strip_prefix = "rules_d-0.4.0",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.4.0/rules_d-v0.4.0.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "dmd_toolchain",
    d_version = "dmd-2.111.0",
)

d_register_toolchains(
    "ldc_toolchain",
    d_version = "ldc-1.41.0",
)

What's Changed

  • chore(deps): update pre-commit hook google/yamlfmt to v0.20.0 by @renovate[bot] in #117
  • chore: add API documentation link to README.md by @dcarp in #118
  • chore(deps): update pre-commit hook crate-ci/typos to v1.39.0 by @renovate[bot] in #120
  • chore(deps): update pre-commit hook commitizen-tools/commitizen to v4.10.0 by @renovate[bot] in #121
  • chore(deps): update pre-commit hook crate-ci/typos to v1.39.1 by @renovate[bot] in #122
  • chore(deps): update pre-commit hook crate-ci/typos to v1.39.2 by @renovate[bot] in #123
  • chore(deps): update actions/checkout action to v6 by @renovate[bot] in #124
  • chore: update bazelrc-preset.bzl to 1.6.0 by @dcarp in #125
  • chore(deps): update dependency bazel to v7.7.1 by @renovate[bot] in #119
  • chore(deps): update pre-commit hook crate-ci/typos to v1.40.0 by @renovate[bot] in #128
  • feat: add platform-aware D toolchain selection and pin default versions by @dcarp in #129

Full Changelog: v0.3.1...v0.4.0

v0.3.1

22 Oct 15:20

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.3.1")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "auto")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "87c36459a43db266b1d9830a0fb3b17679dc26699952b05616aa5f5422694616",
    strip_prefix = "rules_d-0.3.1",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.3.1/rules_d-v0.3.1.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "d_toolchain",
    d_version = "auto",
)

What's Changed

  • fix: upgrade aspect_bazel_lib dep to 2.19.1 by @dcarp in #105
  • Fix incompatible disable native repo rules check by @dcarp in #107
  • chore: use human readable durations in the output of 'Tag a Release' workflow by @dcarp in #106
  • chore: add docs .tar.gz to the release by @dcarp in #108
  • chore: use bazelrc_preset.bzl module to stay on top of .bazelrc settings by @dcarp in #109
  • fix: replace sh_test with native_test for fixing windows build by @dcarp in #110
  • chore(deps): update pre-commit hook google/yamlfmt to v0.19.0 by @renovate[bot] in #111
  • chore: use bazel_lib instead of aspect_bazel_lib by @dcarp in #115
  • fix: reduce sandbox size for d_library targets by @dcarp in #116

Full Changelog: v0.3.0...v0.3.1

v0.3.0

10 Oct 15:20

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.3.0")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "auto")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "9cdf1715b1db2575e83981b7cddc63fcc16c02bc0e835b6875a1f1a271016db3",
    strip_prefix = "rules_d-0.3.0",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.3.0/rules_d-v0.3.0.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "d_toolchain",
    d_version = "auto",
)

What's Changed

  • Write versions bzl generator in d by @dcarp in #94
  • chore(deps): update pre-commit hook crate-ci/typos to v1.37.0 by @renovate[bot] in #95
  • chore(deps): update pre-commit hook crate-ci/typos to v1.37.1 by @renovate[bot] in #96
  • fix: don't publish bcr PR as draft by @dcarp in #97
  • fix: correct automatic release tagging delay to two weeks by @dcarp in #98
  • chore(deps): update pre-commit hook crate-ci/typos to v1.37.2 by @renovate[bot] in #99
  • feat: add 'env' and 'data' attributes for 'd_binary' and 'd_test' by @dcarp in #100
  • chore(deps): update pre-commit hook crate-ci/typos to v1.38.0 by @renovate[bot] in #102
  • chore(deps): update pre-commit hook crate-ci/typos to v1.38.1 by @renovate[bot] in #103

Full Changelog: v0.2.2...v0.3.0

v0.2.2

26 Sep 16:35

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.2.2")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "auto")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "0fc6508c322ed39a7ad590897dd22ebc5b7939d4c1c6f136923f5767d51929cd",
    strip_prefix = "rules_d-0.2.2",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.2.2/rules_d-v0.2.2.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "d_toolchain",
    d_version = "auto",
)

v0.2.0

25 Sep 15:21

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.2.0")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "auto")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "c05eb74af387662bd64459615596eede160f388b8182dfe2fac851a557203fbf",
    strip_prefix = "rules_d-0.2.0",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.2.0/rules_d-v0.2.0.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "d_toolchain",
    d_version = "auto",
)

What's Changed

  • Update bazel-contrib/publish-to-bcr action to v0.2.3 by @renovate[bot] in #79
  • Update pre-commit hook crate-ci/typos to v1.35.8 by @renovate[bot] in #80
  • Update pre-commit hook crate-ci/typos to v1.36.0 by @renovate[bot] in #81
  • Update pre-commit hook keith/pre-commit-buildifier to v8.2.1 by @renovate[bot] in #82
  • Update pre-commit hook crate-ci/typos to v1.36.2 by @renovate[bot] in #83
  • Update bazel-contrib/publish-to-bcr action to v1 by @renovate[bot] in #84
  • Update pre-commit hook commitizen-tools/commitizen to v4.9.0 by @renovate[bot] in #85
  • Update pre-commit hook commitizen-tools/commitizen to v4.9.1 by @renovate[bot] in #86
  • Fix rules_cc workspace integration for rules_cc 0.2.0 or newer by @dcarp in #87
  • Update repo structure to repo-template@6470c76 by @dcarp in #89
  • feat: Add imports and string_imports attributes by @dcarp in #90

Full Changelog: v0.1.3...v0.2.0

v0.1.3

19 Aug 22:10

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.1.3")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "auto")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "ff319cd559bcae5adfd113f882717ac90342fac48c655a75fd67f50b1ee93566",
    strip_prefix = "rules_d-0.1.3",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.1.3/rules_d-v0.1.3.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "d_toolchain",
    d_version = "auto",
)

v0.1.2

15 Jul 19:09

Choose a tag to compare

Using Bzlmod with Bazel 7 or greater

Add to your MODULE.bazel file:

bazel_dep(name = "rules_d", version = "0.1.2")

d = use_extension("//d:extensions.bzl", "d")
d.toolchain(d_version = "auto")
use_repo(d, "d_toolchains")

register_toolchains("@d_toolchains//:all")

Using WORKSPACE

Paste this snippet into your WORKSPACE.bazel file:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_d",
    sha256 = "598a9f484778c52315e8c9acd3e1c7d61a310368b065fca296c1335525acc58d",
    strip_prefix = "rules_d-0.1.2",
    url = "https://github.com/bazel-contrib/rules_d/releases/download/v0.1.2/rules_d-v0.1.2.tar.gz",
)

######################
# rules_d setup #
######################
# Fetches the rules_d dependencies.
# If you want to have a different version of some dependency,
# you should fetch it *before* calling this.
# Alternatively, you can skip calling this function, so long as you've
# already fetched all the dependencies.
load("@rules_d//d:repositories.bzl", "d_register_toolchains", "rules_d_dependencies")

rules_d_dependencies()

d_register_toolchains(
    "d_toolchain",
    d_version = "auto",
)