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