xref: /aosp_15_r20/external/bazel-skylib/CHANGELOG.md (revision bcb5dc7965af6ee42bf2f21341a2ec00233a8c8a)
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