1# Release 1.7.1 2 3**What's Changed** 4* Fix distribution tarballs to include directory rules. (https://github.com/bazelbuild/bazel-skylib/pull/520) 5 6**Full Changelog**: https://github.com/bazelbuild/bazel-skylib/compare/1.7.0...1.7.1 7 8# Release 1.7.0 9 10**New features** 11* Implement `directory` rules by @matts1 in https://github.com/bazelbuild/bazel-skylib/pull/510 12* Add `is_normalized` and `starts_with` to paths module by @comius in https://github.com/bazelbuild/bazel-skylib/pull/514 13 14**New Contributors** 15* @matts1 made their first contribution in https://github.com/bazelbuild/bazel-skylib/pull/510 16 17**Full Changelog**: https://github.com/bazelbuild/bazel-skylib/compare/1.6.1...1.7.0 18 19 20# Release 1.6.1 21 22**What's Changed** 23* Fix `modules` Bazel 6 compatibility by @phst in https://github.com/bazelbuild/bazel-skylib/pull/499 24 25**New Contributors** 26* @phst made their first contribution in https://github.com/bazelbuild/bazel-skylib/pull/499 27 28**Full Changelog**: https://github.com/bazelbuild/bazel-skylib/compare/1.6.0...1.6.1 29 30# Release 1.6.0 31 32**What's Changed** 33* Add helper functions for module extensions as `modules` by @fmeum in https://github.com/bazelbuild/bazel-skylib/pull/457 34* Make `out` on `native_binary` optional by @tpudlik in https://github.com/bazelbuild/bazel-skylib/pull/474 35* Remove outdated rules_cc dependency @cpsauer in https://github.com/bazelbuild/bazel-skylib/pull/476 36* Add toolchains argument to unittests.make by @jylinv0 in https://github.com/bazelbuild/bazel-skylib/pull/483 37* Allow `bzl_library` to depend on non-`bzl_library` targets by @Wyverald in https://github.com/bazelbuild/bazel-skylib/pull/495 38 39**New Contributors** 40* @jylinv0 made their first contribution in https://github.com/bazelbuild/bazel-skylib/pull/483 41* @tpudlik made their first contribution in https://github.com/bazelbuild/bazel-skylib/pull/474 42 43**Full Changelog**: https://github.com/bazelbuild/bazel-skylib/compare/1.5.0...1.6.0 44 45 46# Release 1.5.0 47 48**What's Changed** 49* Expose int- and string-valued build settings as Make variables by @fmeum in https://github.com/bazelbuild/bazel-skylib/pull/440 50* Modify actions in order not to need `toolchain` param by @kotlaja in https://github.com/bazelbuild/bazel-skylib/pull/455 51* versions: Don't fail on Bazel dev builds by @fmeum in https://github.com/bazelbuild/bazel-skylib/pull/463 52* Add error for empty `bzl_library` by @keith in https://github.com/bazelbuild/bazel-skylib/pull/457 53* Add `doc` param to `unittest.make` by @UebelAndre in https://github.com/bazelbuild/bazel-skylib/pull/464 54 55**New Contributors** 56* @kotlaja made their first contribution in https://github.com/bazelbuild/bazel-skylib/pull/455 57* @keith made their first contribution in https://github.com/bazelbuild/bazel-skylib/pull/457 58 59**Full Changelog**: https://github.com/bazelbuild/bazel-skylib/compare/1.4.2...1.5.0 60 61 62# Release 1.4.2 63 64Bugfix release: fixes `build_test` to respect `target_compatible_with` (#448) 65 66**New Features** 67- `bzl_library` allows `.scl` files (new Starlark dialect loadable by Bazel at 68 HEAD with `--experimental_enable_scl_dialect`) 69 70**Contributors** 71Alexandre Rostovtsev, UebelAndre, Vertexwahn, Xavier Bonaventura 72 73 74# Release 1.4.1 75 76Bugfix release: fixes gazelle plugin failure with 77`--incompatible_disallow_empty_glob` (#431) and (for released versions) with 78`--incompatible_disable_starlark_host_transitions` (#433). 79 80**Contributors** 81Alexandre Rostovtsev, Chuck Grindel 82 83 84# Release 1.4.0 85 86**New Features** 87- The Gazelle plugin is marked stable for general use (#400, #424) 88 89**Other Notable Changes** 90- copy_file/copy_directory again allow sandboxing (#392) 91 92**Contributors** 93Alexandre Rostovtsev, Nick Gooding, Simon Stewart, Xùdōng Yáng 94 95 96# Release 1.3.0 97 98**New Features** 99- Added `dicts.omit` and `dicts.pick` (#304) 100- Added `expand_template` rule (#330) 101- Added `subpackages` module (#348) 102- Added `copy_directory` rule (#366) 103- Added `bzlmod` support (#385) 104 105**Incompatible Changes** 106- `native_binary` and `native_test` now use symlinks instead of copying, if 107 the OS supports it (#340) 108- `native_binary` and `native_test` now build in target configuration instead 109 of host configuration (#341) 110- `copy_file` no longer adds non-executables to `default_runfiles` (#326) 111 112**Contributors** 113 114Alex Eagle, Alexandre Rostovtsev, Barry McNamara, Derek Cormier, Fabian 115Meumertzheim, Geoffrey Martin-Noble, hchsiao, Kevin Kres, nickgooding, 116Vertexwahn, Vinh Tran 117 118 119# Release 1.2.1 120 121Bugfix release: fixes build failure with --incompatible_disallow_empty_glob 122(#359) 123 124**Contributors** 125 126Alexandre Rostovtsev, Ivo List 127 128 129Release 1.2.0 130 131**New Features** 132 133- The unittest toolchain has better support for special characters in failure 134 messages (#320) 135- Use portable Bash shebangs for BSD compatibility (#329) 136- Add loadingtest - tests which evaluate during the loading phase (#347) 137- Add doc parameter to analysistest.make, allowing analysis tests to be 138 documented in a Stardoc-friendly way (#343, #352) 139 140**Contributors** 141 142Alexandre Rostovtsev, Geoffrey Martin-Noble, Kevin Kress, Samuel Freilich, 143UebelAndre, Yesudeep Mangalapilly 144 145 146# Release 1.1.1 (initially tagged as 1.1.0) 147 148**New Features** 149 150- Gazelle: support relative imports (#271) and imports from `@bazel_tools` 151 (#273) 152- Add partial.is_instance() (#276) 153- Allow unittest.suite() to accept partial calls of test rules (#276) 154- Allow specifying additional aspects to target under test in 155 analysistest.make() (#299) 156- Add Windows support for build_test (#302) 157 158**Incompatible Changes** 159 160- structs.to_dict() ignores deprecated to_json()/to_proto() methods (#295) 161 162**Contributors** 163 164aiuto, alandonovan, Alex Eagle, Alexandre Rostovtsev, Andrew Z Allen, c-parsons, 165Christopher Sauer, Daniel Wagner-Hall, David Sanderson, dmaclach, Laurent Le 166Brun, Mansur, Olek Wojnar, Philipp Wollermann, River, Samuel Giddins, Thaler 167Benedek 168 169 170# Release 1.0.3 171 172**Significant Changes** 173 174- Move Gazelle extension to //gazelle/bzl and change package name 175- Stop depending on rules_pkg through the federation. (#259) 176- copy_file: Add parameter to allow symlinks (#252) 177- Create Gazelle language for Starlark (#251) 178- Create a helper rule (`select_file`) for selecting a file from outputs of another rule (#233) 179 180 181**Incompatible Changes** 182- Remove links to maprules (#213) 183- Remove old_sets.bzl (#231) 184 It has been deprecated for a while, the code is not really compatible with Bazel depset-related changes. 185 186**Contributors** 187Andrew Z Allen, Bocete, Bor Kae Hwang, irengrig, Jay Conrod, Jonathan B Coe, Marc Plano-Lesay, Robbert van Ginkel, Thomas Van Lenten, Yannic 188 189 190# Release 1.0.0 191 192**Incompatible Changes** 193 194- @bazel_skylib//:lib.bzl is removed. You now must specify specific modules 195 via @bazel_skylib//lib:<file>.bzl. 196- maprule.bzl is removed. 197 198**New Features** 199 200- Added types.is_set() to test whether an arbitrary object is a set as defined by sets.bzl. 201 202 203# Release 0.9.0 204 205**New Features** 206 207- common_settings.bzl: Standard data types for user defined build 208 configuration. Common scalar build settings for rules to use so they don't 209 recreate them locally. This fulfills part of the SBC design doc: 210 https://docs.google.com/document/d/1vc8v-kXjvgZOdQdnxPTaV0rrLxtP2XwnD2tAZlYJOqw/edit#bookmark=id.iiumwic0jphr 211- selects.bzl: Add config_setting_group for config_setting AND/OR-chaining 212 Implements 213 https://github.com/bazelbuild/proposals/blob/HEAD/designs/2018-11-09-config-setting-chaining.md. 214- Make sets.bzl point to new_sets.bzl instead of old_sets.bzl. new_sets.bzl 215 and old_sets.bzl should be removed in the following skylib release. 216 217- run_binary: runs an executable as an action 218 219 - This rule is an alternative for genrule(): it can run a binary with the 220 desired arguments, environment, inputs, and outputs, as a single build 221 action, without shelling out to Bash. 222 - Fixes https://github.com/bazelbuild/bazel-skylib/issues/149 223 224- New `native_binary()` and `native_test()` rules let you wrap a pre-built 225 binary in a binary and test rule respectively. 226 227 - native_binary() wraps a pre-built binary or script in a *_binary rule 228 interface. Rules like genrule can tool-depend on it, and it can be 229 executed with "bazel run". This rule can also augment the binary with 230 runfiles. 231 - native_test() is similar, but creates a testable rule instead of a 232 binary rule. 233 - Fixes https://github.com/bazelbuild/bazel-skylib/issues/148 234 235- diff_test: test rule compares two files and passes if the files match. 236 237 On Linux/macOS/non-Windows, the test compares files using 'diff'. 238 239 On Windows, the test compares files using 'fc.exe'. This utility is 240 available on all Windows versions I tried (Windows 2008 Server, Windows 2016 241 Datacenter Core). 242 243 See https://github.com/bazelbuild/bazel/issues/5508, 244 https://github.com/bazelbuild/bazel/issues/4319 245 246- maprule: move functionality to maprule_util.bzl. maprule_util.bzl will 247 benefit planned new rules (namely a genrule alternative). 248 249**This release is tested with Bazel 0.28** 250