| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103931317
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to Attribute.skipPrereqValidatorCheck.
This is to disambiguate the concept of "constraints" and keep
the word consciously focused on Bazel's *new* constraint system.
The changed methods refer to checks done by PrerequisiteValidator,
which is basically an adhoc version of the "old" system (e.g.
checking visibility)
--
MOS_MIGRATED_REVID=103872412
|
|
|
|
|
|
|
|
|
| |
only one of them was implemented (potentially incorrectly) or the class really intends to have reference equality.
RELNOTES:
--
MOS_MIGRATED_REVID=103778746
|
|
|
|
|
|
|
| |
comment in PackageSerializer.
--
MOS_MIGRATED_REVID=103693274
|
|
|
|
|
|
|
| |
RELNOTES:
--
MOS_MIGRATED_REVID=103606693
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
internally. This should be a semantics-preserving change for users. In a subsequent CL, I'll change the Skylark syntax to allow load statements to use labels as well as paths, with the goal of eventually deprecating the latter.
Also:
- Removed the hack for handling relative loads in the prelude file.
- Refactored some redundant functionality in PackageFunction and SkylarkImportLookupFunction for handling loads.
- Removed the ability to put the BUILD file for the package containing a Skylark file under a different package root than the Skylark file itself. This functionality isn't currently used and is inconsistent with Blaze's handling of the package path elsewhere.
- Added BUILD files to a number of tests that load Skylark files; this is consistent with the requirement that all Skylark files need to be part of some package.
- Changed the constants used to set the location of the prelude file from paths to labels.
--
MOS_MIGRATED_REVID=103567562
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103547846
|
|
|
|
|
|
|
|
|
|
| |
- Label parsing can be simplified
- lib.syntax is only contains the code for Skylark and is reasonably independent from the problem domain of building things
This change is mostly only changes to imports declarations. The rest is reversing the dependency between :cmdline and :syntax and moving a tiny amount of code between Printer and FilesetEntry and the addition of SkylarkPrintableValue that I couldn't be bothered to separate out into its own change.
--
MOS_MIGRATED_REVID=103527877
|
|
|
|
|
|
|
| |
Without this, the FDO features enabled under --fdo* blaze options are not removed when BUILD files contain "features = ['-fdo_instrument', '-fdo_optimize']".
--
MOS_MIGRATED_REVID=103431508
|
|
|
|
|
|
|
|
|
| |
serialization works correctly.
Removes ExternalPackage as Package specialization.
--
MOS_MIGRATED_REVID=103395682
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103374106
|
|
|
|
|
|
|
|
| |
Due to a typo in the past, we had to support both 'exclude' and 'excludes'
for the migration.
--
MOS_MIGRATED_REVID=103371676
|
|
|
|
|
|
|
|
|
| |
separate Skylark from the rest of the code so that Label parsing can be simplified.
This is another go at []: now that the tests were fixed in [] and [] it can be submitted again.
--
MOS_MIGRATED_REVID=103364881
|
|
|
|
|
|
|
|
| |
Make SkylarkList no longer read-only to match Python and the BUILD language.
Instead, subject it to a Mutability object inherited from the Environment.
--
MOS_MIGRATED_REVID=103332973
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Broke tests, I mistakenly assumed it was flakiness.
*** Original change description ***
Remove support for the deprecated include() statement.
This is part of the crusade to eliminate as every dependency in Skylark on the rest of the code so that it can be moved deeper in the dependency graph.
RELNOTES: The include() statement in BUILD files is not supported anymore.
--
MOS_MIGRATED_REVID=103284257
|
|
|
|
|
|
|
|
|
| |
This is part of the crusade to eliminate as every dependency in Skylark on the rest of the code so that it can be moved deeper in the dependency graph.
RELNOTES: The include() statement in BUILD files is not supported anymore.
--
MOS_MIGRATED_REVID=103279943
|
|
|
|
|
|
|
|
|
| |
composite types and remove the mention of the type "Label" from the context argument of Type.convert().
This is in preparation of separating build-specific types and types inherent to Skylark.
--
MOS_MIGRATED_REVID=103266869
|
|
|
|
|
|
|
|
|
|
|
| |
contains errors. Instead, require callers to process the package and throw if they need to.
This allows us to avoid embedding a Package in an exception, which is icky. This also allows us to remove Package#containsTemporaryErrors.
Most callers' changes are fairly straightforward. The exception is EnvironmentBackedRecursivePackageProvider, which cannot throw an exception of its own in case of a package with errors (because it doesn't do that in keep_going mode), but whose request for a package with errors *should* shut down the build in case of nokeep_going mode. To do this in Skyframe, we have a new PackageErrorFunction which is to be called only in this situation, and will unconditionally throw. EnvironmentBackedRecursivePackageProvider can then catch this exception and continue on as usual, except that the exception will shut down the thread pool in a nokeep_going build.
--
MOS_MIGRATED_REVID=103247761
|
|
|
|
|
|
|
| |
instead. Transient errors were only detected on IOExceptions, but preprocessing doesn't actually throw IOExceptions except if it fails before it even opens the main file, so there's no sense in trying to construct a package in that case.
--
MOS_MIGRATED_REVID=103119445
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103090380
|
|
|
|
|
|
|
|
|
| |
syntax that means "refer to the main repository".
There isn't an overarching plan for what we are going to do with the cmdline package, which seems to be separated from the .syntax one in all sorts of awkward ways.
--
MOS_MIGRATED_REVID=103088960
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103004059
|
|
|
|
|
|
|
| |
BaseFunction.
--
MOS_MIGRATED_REVID=102988766
|
|
|
|
|
|
|
|
| |
We always set this false when calling from outside PackageSerializer.
Hide it away since we don't need it and so that we don't get tempted.
--
MOS_MIGRATED_REVID=102864146
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make Environment-s freezable: Introduce a class Mutability
as a revokable capability to mutate objects in an Environment.
For now, only Environment-s carry this capability.
Make sure that every Mutability is revoked in the same function that create...
This reinstates a change that previously rolled-back because it broke the
serializability of SkylarkLookupValue. Bad news: serializing it succeeds for the
wrong reason, because a SkylarkEnvironment was stored as a result (now an
Environment.Extension) that was Serializable but inherited its bindings from an Environment (now an Environment.BaseExtension) which wasn't Serializable.
Apparently, Java doesn't try to serialize the bindings then (or at least doesn't
error out when it fails), because these bindings map variable names to pretty
arbitrary objects, and a lot of those we find in practice aren't Serializable.
Thus the current code passes the same tests as the previous code, but obviously
the serialization is just as ineffective as it used to be.
--
MOS_MIGRATED_REVID=102776694
|
|
|
|
|
|
|
|
|
|
|
|
| |
They're not cheap to serialize or reconstitute and we don't really need them.
This does leave some odd ends around, in particular i decided to keep deserialization context around as i can picture use for it soon. Also return non-null values from all
of EmptyLocation's method since while the javadocs declare that LineAndColumn and Path
can be null, there does exist code which does not take this into account, this is for
another change.
--
MOS_MIGRATED_REVID=102758810
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=102658808
|
|
|
|
|
|
|
|
|
| |
The lipo dependency is artificial; it's an artifact of how LIPO is implemented
in Bazel. Running these checks doesn't make sense; they unnecessarily
disallow perfectly valid scenarios.
--
MOS_MIGRATED_REVID=102550286
|
|
|
|
|
|
|
| |
via ctx.host_fragments.
--
MOS_MIGRATED_REVID=102490502
|
|
|
|
|
|
|
| |
calling rule in the BUILD file.
--
MOS_MIGRATED_REVID=102487335
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks serialization of SkyValues.
--
MOS_MIGRATED_REVID=102457225
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make Environment-s freezable: Introduce a class Mutability
as a revokable capability to mutate objects in an Environment.
For now, only Environment-s carry this capability.
Make sure that every Mutability is revoked in the same function that creates it,
so no Environment is left open for modification after being created and exported;
exceptions for tests, the shell and initialization contexts.
Unify Environment, SkylarkEnvironment and EvaluationContext into Environment.
Have a notion of Frame for the bindings + parent + mutability.
Replace the updateAndPropagate mechanism by a dynamicFrame.
Simplify ValidationEnvironment, that is now always deduced from the Environment.
--
MOS_MIGRATED_REVID=102363438
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=102341264
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=102332437
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=102294171
|
|
|
|
|
|
|
|
|
|
|
|
| |
Trying to curb usage of the create method taking a String for efficiency
reasons. Noticed this method was unused + a few places where we could
easily use chars instead of string. Not a major improvement but removes
some temptation.
RELNOTES:
--
MOS_MIGRATED_REVID=102258319
|
|
|
|
|
|
|
| |
The other constructor is now private.
--
MOS_MIGRATED_REVID=102252544
|
|
|
|
|
|
|
| |
attributes: generator_{function, name, location}
--
MOS_MIGRATED_REVID=102139196
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=102126786
|
|
|
|
|
|
|
| |
Currently, this can only happen if a Skylark rules declare use of such an INTEGER_LIST.
--
MOS_MIGRATED_REVID=102054727
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=102020499
|
|
|
|
|
|
|
|
|
|
| |
Finding start/end line/col for locations takes some cpu work. As locations
are quite common this cpu work adds up. Instead make it possible to only
serialize the bare minimum location (start and end offset), the rest can
be derived from the original file if necessary.
--
MOS_MIGRATED_REVID=101966365
|
|
|
|
|
|
|
|
| |
Move away global constants and global namespaces out of Environment
and into a new file Runtime.
--
MOS_MIGRATED_REVID=101940218
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=101798931
|
|
|
|
|
|
|
|
| |
This is necessary to have TargetResolver depend on it without making it depend
on the packages target. First step of #389.
--
MOS_MIGRATED_REVID=101790345
|
|
|
|
|
|
|
| |
attributes: generator_{function, name, location}
--
MOS_MIGRATED_REVID=101774632
|
|
|
|
|
|
|
| |
IllegalStateException that might not be thrown at all.
--
MOS_MIGRATED_REVID=101748191
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=101743615
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=101723683
|
|
|
|
|
|
|
|
| |
They are now disabled based on a dynamic flag instead. It's all too easy
to bypass removal with duplication, anyway, as in my_native_glob = native.glob
--
MOS_MIGRATED_REVID=101714237
|