| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 184649483
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 184498836
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 184016150
|
|
|
|
|
|
|
|
| |
SkylarkAspectLoadingKey.
Also add a @VisibleForSerialization annotation to @AutoCodec, since we're going to need to increase serialization visibility a lot here, and clean up some unnecessary modifiers.
PiperOrigin-RevId: 182389162
|
|
|
|
|
|
|
|
|
| |
The bug also permitted For statements in BUILD files so long as they were contained within an If statement (i.e. not at the top level).
Also add minor guidance to error messages.
RELNOTES: None
PiperOrigin-RevId: 182236172
|
|
|
|
|
|
| |
* Moves SingletonCodec to third_party.
PiperOrigin-RevId: 182143153
|
|
|
|
|
|
|
| |
If two values compared equal (e.g., MethodLibrary#bool and SkylarkAttr#bool), we were dropping one of them in favor of the other.
RELNOTES: None
PiperOrigin-RevId: 182057611
|
|
|
|
|
|
|
| |
The said test fails if the --incompatible_disallow_dict_plus flag is flipped by
default (e.g. in a .bazelrc file)
PiperOrigin-RevId: 180553910
|
|
|
|
|
|
|
| |
The terminology "field" is preferred over "key" for the components of a struct or struct-like object.
RELNOTES: None
PiperOrigin-RevId: 180269374
|
|
|
|
| |
PiperOrigin-RevId: 179748374
|
|
|
|
|
|
|
|
| |
RELNOTES[INC]: The flag --incompatible_list_plus_equals_inplace is removed, its
default behavior is preserved. += on lists now always mutates the left hand
side.
PiperOrigin-RevId: 178359047
|
|
|
|
|
|
|
|
|
|
|
| |
This covers all builtins in classes that use SkylarkSignatureProcessor#configureSkylarkFunctions. Generally this means things you define with @SkylarkSignature.
It is now an error to call configureSkylarkFunctions multiple times for the same class. It should only be called in static initializers.
Runtime's static knowledge of builtins has been factored into Runtime.BuiltinRegistry.
RELNOTES: None
PiperOrigin-RevId: 178295926
|
|
|
|
|
|
|
| |
RELNOTES:
Using `+`, `|` or `.union` on depsets is now deprecated. Please use the new
constructor instead (see https://docs.bazel.build/versions/master/skylark/depsets.html).
PiperOrigin-RevId: 178262338
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 177487913
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 177169878
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 177004853
|
|
|
|
|
|
|
|
|
|
|
|
| |
The `set` constructor used to be deprecated, but it was still possible to use
it by providing --incompatible_disallow_set_constructor=false.
It's still allowed to have `set` in parts of the code that are not executed, this will be deprecated later. You can check if your code is compatible with this future change by using the flag --incompatible_disallow_uncalled_set_constructor (currently the default is "false").
RELNOTES[INC]: The flag --incompatible_disallow_set_constructor is no longer
available, the deprecated `set` constructor is not available anymore.
PiperOrigin-RevId: 176491641
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The `set` constructor used to be deprecated, but it was still possible to use
it by providing --incompatible_disallow_set_constructor=false.
It's still allowed to have `set` in parts of the code that are not executed, this will be deprecated later.
RELNOTES[INC]: The deprecated `set` constructor is removed, along with the
migration flag --incompatible_disallow_set_constructor. It is still temporarily
allowed to refer to `set` from within unexecuted code.
PiperOrigin-RevId: 176375859
|
|
|
|
|
|
|
|
| |
These libs are exposed externally, implying that the vfs is also exposed externally.
We break out PathFragment from vfs to still use this in their interface. This class is a much smaller dependency than the entire vfs.
PiperOrigin-RevId: 174729373
|
|
|
|
|
|
|
| |
This used to be annoying for Skylint.
RELNOTES: none
PiperOrigin-RevId: 173249428
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 173125138
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
If the 'set' function was used in a .bzl file but not called, --incompatible_disallow_set_constructor=True would allow the load of that .bzl file without error, but this change removes the 'set' function so loading that bzl file is an error.
Example failure: https://ci.bazel.io/blue/organizations/jenkins/Global%2FTensorFlow/detail/TensorFlow/245/pipeline/
*** Original change description ***
Remove the deprecated set constructor from Skylark
The `set` constructor used to be deprecated, but it was still possible to use
it by providing --incompatible_disallow_set_constructor=false.
RELNOTES[INC]: The flag --incompatible_disallow_set_constructor is no longer
available, the deprecated `set` constructor is not available anymore.
PiperOrigin-RevId: 173115983
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 173048992
|
|
|
|
|
|
|
| |
Follow-up of unknown commit.
RELNOTES: None
PiperOrigin-RevId: 172922507
|
|
|
|
|
|
|
|
|
| |
All callers that do not use Environment.Builder#setSemantics should call #useDefaultSemantics. A follow-up CL will enforce this requirement.
Motivation: It's more important that we are strict about semantics than about the other builder args. It's too easy for a mistake in semantics to go unnoticed.
RELNOTES: None
PiperOrigin-RevId: 172912829
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cuts back a lot of unnecessary copying. All construction is funneled through copyOf and
wrapUnsafe. copyOf is the traditional construction mechanism, taking defensive copies of
the input and determining if GlobList information needs to be retained. wrapUnsafe takes
full ownership of the supplied ArrayList, allowing us to skip a lot of copies in trusted
situations. This is particularly useful for common built in functions which return a list,
range() being one common example.
RELNOTES: None
PiperOrigin-RevId: 172361367
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 172325367
|
|
|
|
|
|
|
|
|
|
| |
The `set` constructor used to be deprecated, but it was still possible to use
it by providing --incompatible_disallow_set_constructor=false.
RELNOTES[INC]: The flag --incompatible_disallow_set_constructor is no longer
available, the deprecated `set` constructor is not available anymore.
PiperOrigin-RevId: 171962361
|
|
|
|
|
|
|
|
| |
RELNOTES[INC]: The flag --incompatible_descriptive_string_representations is no
longer available, old style string representations of objects are not supported
anymore.
PiperOrigin-RevId: 171952621
|
|
|
|
|
|
|
| |
Previously, the closing parenthesis was not included in the location.
RELNOTES: none
PiperOrigin-RevId: 171527078
|
|
|
|
| |
PiperOrigin-RevId: 171176871
|
|
|
|
|
|
|
|
|
| |
Previously, the end line and column of a location were the position past the actual end of a location. This makes sense for the end offset, because one can use `input.substring(startOffset, endOffset)` to get the string belonging to an ASTNode.
However the line and column (as opposed to the offset) aren't used for that. Therefore I made the change that the end line and column now point to the last character in the location. This is also they way every compiler I know does it.
RELNOTES: none
PiperOrigin-RevId: 170723732
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`depset` constructor has new arguments, `direct` and `transitive`.
`items` argument is deprecated and after its removal `direct` will
become a sole positional argument.
If `transitive` and `items` are specified, `items` must be a list of
direct elements.
In the absence of `transitive` the value of `items` can also be a
depset, but that behavior is deprecated.
RELNOTES: New depset API
PiperOrigin-RevId: 170346194
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 170343759
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL doesn't fix all of the problems. The end location of blocks
after an if, elif, else and for is still wrong. (I added TODOs for them)
The latter is not easy to fix: One might think that one could just
set the end location of a block to the end location of the last
statement. However, if the last statement is a "pass" statement,
this is not preserved in the AST, in particular, there's no location
for it. In the future, we probably want to preserve "pass" statements.
RELNOTES: none
PiperOrigin-RevId: 170028466
|
|
|
|
| |
PiperOrigin-RevId: 169942209
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Relanding
https://github.com/bazelbuild/bazel/commit/17214ac78ffaec369d5d5bafe62a39730473cfaa
with fixes to 'repository_ctx.download()' and
'repository_ctx.download_and_extract()'.
I reviewed other usages of @ParamType annotation - I do not think there
are more issues.
Fixes #3714.
Change-Id: I17087ef3fc2d28ab99224740a2164675a49847d3
PiperOrigin-RevId: 169896223
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 169676866
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Rolled back commit enforces stricter parameter checks. Will fix and roll forward
This creates several failures on the nightly build of Bazel:
ERROR: /home/ci/workspace/Global/rules_closure-node=linux-x86_64/closure/protobuf/test/BUILD:23:1: no such package '@com_google_protobuf_protoc//': Cannot convert parameter 'url' to type string or sequence of strings, in method download_and_extract(List, string, string, string, string) of 'repository_ctx' and referenced by '//closure/protobuf/test:example_proto_gen'.
ERROR: Analysis of target '//closure/protobuf/test:example_lib' failed; build aborted: no such package '@com_google_protobuf_protoc//': Cannot convert parameter 'url' to type string or sequence of strings, in method download_and_extract(List, string, string, string, string) of 'repository_ctx'.
*** Original change description ***
Check parameter types for methods when multiple types are allowed.
Fixes #3714
RELNOTES: None.
PiperOrigin-RevId: 169669802
|
|
|
|
|
|
| |
Fixes #3714
RELNOTES: None.
PiperOrigin-RevId: 169382686
|
|
|
|
|
|
| |
This is a trivial change with a large file footprint.
PiperOrigin-RevId: 169169864
|
|
|
|
|
|
|
| |
Exempt RuleConfiguredTarget in this change because that's liable to touch
a billion files.
PiperOrigin-RevId: 168929827
|
|
|
|
|
|
|
|
| |
RELNOTES[INC]:
--incompatible_comprehension_variables_do_not_leak defaults to "true."
Iteration variable becomes inaccessible after a list/dict comprehension.
PiperOrigin-RevId: 167876119
|
|
|
|
|
|
|
|
| |
--incompatible_load_argument_is_label enabled (fixes #3560)
Closes #3562.
PiperOrigin-RevId: 167745885
|
|
|
|
|
|
|
|
| |
RELNOTES[INC]:
Keyword-only syntax in a function definition is now forbidden
e.g. `def foo(a, *, b)` or `def foo(a, *b, c)`
PiperOrigin-RevId: 167741296
|
|
|
|
|
|
|
| |
Also distinguish between unspecified base arg and base 10, so "int(True, 10)" is now an error. This is an incompatible change, albeit a small one.
RELNOTES: None
PiperOrigin-RevId: 167616143
|
|
|
|
|
|
|
| |
Mutiple other cleanups in the parser, update code documentation.
RELNOTES: None.
PiperOrigin-RevId: 167501136
|
|
|
|
|
|
|
|
|
|
|
| |
testFunctionDictArgumentsAreImmutable
These tests don't actually check mutability of objects but behavior of += on
them. Input arguments of functions are in fact mutable unless they've been
created in another mutability scope. There are already other tests that
actually check immutability of objects from another mutability scope.
PiperOrigin-RevId: 167295711
|
|
|
|
|
|
|
|
| |
Let's use the same parser. Dialect differences are checked in a separate
validation pass.
RELNOTES: None.
PiperOrigin-RevId: 167280201
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 167263494
|