Skip to content

Releases: martis42/depend_on_what_you_use

0.5.0

07 Sep 09:25
Compare
Choose a tag to compare

Using Bzlmod (Recommended)

Add to your MODULE.bazel file:

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

Using WORKSPACE (Legacy)

Add to your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "39b106030a9e79db2fb52dca1b66fec7618d93e0dff986ee55f3b176fd979c91",
    strip_prefix = "depend_on_what_you_use-0.5.0",
    url = "https://github.com/martis42/depend_on_what_you_use/releases/download/0.5.0/depend_on_what_you_use-0.5.0.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

Noteworthy Changes

  • Documentation - There is now a single source of truth for the aspect documentation. You find it in docs/dwyu_aspect.md #273
  • Bugfix (automatic fixes) - Fix bug regarding automatic fixes failing while analyzing targets with empty hdrs attribute #280
  • Feature (aspect) - Experimental support for setting the __cplusplus macro to enable correctly processing files with preprocessor statements relying on this macro #288
  • Feature (aspect) - Support processing targets with large attributes which otherwise would fail due to the system's command length limit #283

What's Changed

  • chore(deps): update dependency bazel_skylib to v1.7.1 by @renovate in #263
  • Update quality tools by @martis42 in #265
  • Update Ubuntu in BCR tests by @martis42 in #267
  • Reduce Windows Python overhead by @martis42 in #266
  • Stop bundling renovate quality updates by @martis42 in #268
  • Update tested bazel versions by @martis42 in #269
  • Replace Bazel mypy orchestration with pre-commit by @martis42 in #271
  • Remove superfluous export by @martis42 in #272
  • chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.5.5 by @renovate in #274
  • chore(deps): update pre-commit hook pre-commit/mirrors-mypy to v1.11.1 by @renovate in #275
  • chore(deps): update dependency pre-commit to v3.8.0 by @renovate in #276
  • chore(deps): update pre-commit hook keith/pre-commit-buildifier to v7 by @martis42 in #278
  • Use stardoc to generate some docs by @martis42 in #273
  • Work around missing "stringListValue" in certain cases by @mrkkrp in #280
  • chore: Update pre-commit to 3.8.0 by @martis42 in #281
  • chore(deps): update pre-commit hook astral-sh/ruff-pre-commit to v0.6.3 by @renovate in #286
  • chore(deps): update pre-commit hook pre-commit/mirrors-mypy to v1.11.2 by @renovate in #284
  • chore(deps): update pre-commit hook keith/pre-commit-buildifier to v7.3.1 by @renovate in #287
  • chore(deps): update dependency aspect_bazel_lib to v2.8.1 by @renovate in #285
  • Experimental support for setting the '__cplusplus' macro by @martis42 in #288
  • Use param files to invoke process_target.py by @mrkkrp in #283

New Contributors

Full Changelog: 0.4.0...0.5.0

0.4.0

20 Jun 21:04
Compare
Choose a tag to compare

Using Bzlmod (Recommended)

Add to your MODULE.bazel file:

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

Using WORKSPACE (Legacy)

Add to your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "e734099ac92263f61f155e2a39dc29937be818d16d25891b166476710ec25ac4",
    strip_prefix = "depend_on_what_you_use-0.4.0",
    url = "https://github.com/martis42/depend_on_what_you_use/releases/download/0.4.0/depend_on_what_you_use-0.4.0.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

Noteworthy Changes

  • Added missing headers to default std headers list #262

What's Changed

Full Changelog: 0.3.0...0.4.0

0.3.0

26 May 17:29
Compare
Choose a tag to compare

Using Bzlmod (Recommended)

Add to your MODULE.bazel file:

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

Using WORKSPACE (Legacy)

Add to your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "b56cdfaed0d74967fefb54bdd3f05bd167c4c4ebaa2a67af962d969e6a51962b",
    strip_prefix = "depend_on_what_you_use-0.3.0",
    url = "https://github.com/martis42/depend_on_what_you_use/releases/download/0.3.0/depend_on_what_you_use-0.3.0.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

Breaking Changes

  • Automatic fixes: Change how arguments are forwarded to buildozer. This is done to achieve a consistent API to how arguments are forwarded to the bazel commands. #251

Noteworthy Changes

  • Analysis: Update standard library headers which are ignored by DWYU #248
  • Automatic fixes: Support cquery to find missing dependencies. Also we allow now forwarding arguments to the bazel commands which are executed by the apply_fixes script #249, #252
  • Analysis: Fix bug for analyzing implementation_deps when using target mappings #254
  • Automatic fiixes: Add a new method for discovering DWYU report files which should be more efficient for large workspaces. This is based on creating an execution log for the analysis done by the DWYU aspect and then forwarding this log to the apply_fixes script #255

What's Changed

New Contributors

Full Changelog: 0.2.0...0.3.0

0.2.0

22 Apr 18:58
Compare
Choose a tag to compare

Using Bzlmod (Recommended)

Add to your MODULE.bazel file:

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

Using WORKSPACE (Legacy)

Add to your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "fc0e730072265d72b796fb39e4d7022249ad35239fdd9fbbce33eb393862039f",
    strip_prefix = "depend_on_what_you_use-0.2.0",
    url = "https://github.com/martis42/depend_on_what_you_use/releases/download/0.2.0/depend_on_what_you_use-0.2.0.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

Noteworthy Changes

  • apply_fixes: Improve heuristic for finding missing dependencies #241
  • Allow skipping external targets #242

What's Changed

  • chore(deps): update quality tooling dependencies by @renovate in #232
  • No automated updates of main deps by @martis42 in #233
  • chore(deps): update softprops/action-gh-release action to v2 by @renovate in #235
  • chore(deps): update quality tooling dependencies by @renovate in #234
  • chore: Make Renovate aware of all Python requirements files by @martis42 in #236
  • Update used and tested Bazel by @martis42 in #238
  • Streamline module bazel by @martis42 in #239
  • Document todo for after abandoning Bazel 5 support by @martis42 in #240
  • apply_fixes: Improve dependency discovery heuristic by @martis42 in #241
  • Allow skipping external targets by @martis42 in #242

Full Changelog: 0.1.0...0.2.0

0.1.0

25 Feb 16:59
Compare
Choose a tag to compare

🎉 This release is a major milestone for DWYU 🎉

This is the first release without a leading 0.0. While DWYU is not yet ready for 1.0.0, its overall feature set is now mostly stable. No bug reports with major gaps in functionality have been reported and thus we are confident to leave the "beta testing" phase.

This is also the first release supporting bzlmod. Also we added examples demonstrating DWYU usage.

Please note this release has some breaking changes as defined below.

Using Bzlmod (Recommended)

Add to your MODULE.bazel file:

bazel_dep(name = "depend_on_what_you_use", version = "0.1.0")

Using WORKSPACE (Legacy)

Add to your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "746de76cb6a8d5e0d6e60c91bcc73ffd6088fff4152552c3e0aee6219c1d809d",
    strip_prefix = "depend_on_what_you_use-0.1.0",
    url = "https://github.com/martis42/depend_on_what_you_use/releases/download/0.1.0/depend_on_what_you_use-0.1.0.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

Breaking Changes

  • The minimum Bazel version is now 5.4.0
  • The output group has been renamed. Replace --output_groups=cc_dwyu_output with --output_groups=dwyu in your DWYU commands #170
  • The name for the DWYU aspect option to provide a config file for ignored include paths changed from config = "//<your_config_file>.json" to ignored_includes = "//<your_config_file>.json" #181
  • Renamed the --bazel-bin apply_fixes CLI option to --search-path to make it more obvious how flexibly it can be used #221

Noteworthy Changes

  • Windows and macOS are now explicitly tested in the CI to ensure DWYU behaves on those platforms as expected.
  • You can now specify a custom list of tags to make DWYU skip analyzing targets #159
  • Support depending on DWYU via bzlmod
  • Ensure code quality with ruff (most checks are active)
  • There is now a set of examples
  • Add verbosity option to the aspect #209

What's Changed

New Contributors

Full Changelog: 0.0.13...0.1.0

0.0.13

01 Nov 10:22
Compare
Choose a tag to compare

Put the following into your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "0d53cc408f53c211172729d17735c5f81e2d08501bcf12218bd51f17a000c024",
    strip_prefix = "depend_on_what_you_use-0.0.13",
    url = "https://github.com/martis42/depend_on_what_you_use/archive/refs/tags/0.0.13.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

load("@depend_on_what_you_use//:setup_step_3.bzl", dwyu_setup_step_3 = "setup_step_3")
dwyu_setup_step_3()

Noteworthy Changes

Full Changelog: 0.0.12...0.0.13

0.0.12

18 Oct 19:46
Compare
Choose a tag to compare

Put the following into your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "e18fe44715612db914ee788f9ada77d6b7a7edc7f2c3c5e101d2d82b176248a2",
    strip_prefix = "depend_on_what_you_use-0.0.12",
    url = "https://github.com/martis42/depend_on_what_you_use/archive/refs/tags/0.0.12.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

load("@depend_on_what_you_use//:setup_step_3.bzl", dwyu_setup_step_3 = "setup_step_3")
dwyu_setup_step_3()

Noteworthy Changes

Full Changelog: 0.0.11...0.0.12

0.0.11

19 Sep 16:44
Compare
Choose a tag to compare

Put the following into your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "0a32e1f66068b3959db2480c502ed2a446086b61b5143e8d39454ec6ac5a2803",
    strip_prefix = "depend_on_what_you_use-0.0.11",
    url = "https://github.com/martis42/depend_on_what_you_use/archive/refs/tags/0.0.11.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

load("@depend_on_what_you_use//:setup_step_3.bzl", dwyu_setup_step_3 = "setup_step_3")
dwyu_setup_step_3()

Noteworthy Changes

What's Changed

  • Rework include path analysis by @martis42 in #137
  • Support relative include statements for virtual paths by @martis42 in #144
  • Enable processing defines from included headers by @martis42 in #146
  • Enable parsing of pre processor tokens as include path by @martis42 in #149

New Contributors

Full Changelog: 0.0.10...0.0.11

0.0.10

30 Jul 09:38
Compare
Choose a tag to compare

Put the following into your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "4986b05c2bf90fab23ce0cb78249d726a6a129c8d4817d1356d8900c711e7dc7",
    strip_prefix = "depend_on_what_you_use-0.0.10",
    url = "https://github.com/martis42/depend_on_what_you_use/archive/refs/tags/0.0.10.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

load("@depend_on_what_you_use//:setup_step_3.bzl", dwyu_setup_step_3 = "setup_step_3")
dwyu_setup_step_3()

Breaking Changes

  • Minimum Bazel version is now 5.0.0
  • Minimum Python version is now 3.8

Noteworthy Changes

New Contributors

Full Changelog: 0.0.9...0.0.10

0.0.9

29 Apr 20:42
Compare
Choose a tag to compare

This release will be the last one to support Bazel 4x.y and Python 3.6 and 3.7.

Put the following into your WORKSPACE file:

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

http_archive(
    name = "depend_on_what_you_use",
    sha256 = "96a98a8c365e268f13fccb3a1357fea1e1d41e862a73ca3d2f971d9661b932e2",
    strip_prefix = "depend_on_what_you_use-0.0.9",
    url = "https://github.com/martis42/depend_on_what_you_use/archive/refs/tags/0.0.9.tar.gz",
)

load("@depend_on_what_you_use//:setup_step_1.bzl", dwyu_setup_step_1 = "setup_step_1")
dwyu_setup_step_1()

load("@depend_on_what_you_use//:setup_step_2.bzl", dwyu_setup_step_2 = "setup_step_2")
dwyu_setup_step_2()

load("@depend_on_what_you_use//:setup_step_3.bzl", dwyu_setup_step_3 = "setup_step_3")
dwyu_setup_step_3()

Noteworthy Changes

Full Changelog: 0.0.8...0.0.9