aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java
Commit message (Collapse)AuthorAge
* Refactor BlazeWorkspace creation to happen after BlazeRuntime construction.Gravatar Ulf Adams2016-04-13
| | | | | | | | As part of that, move a BinTools and the WorkspaceStatusActionFactory to the BlazeWorkspace. -- MOS_MIGRATED_REVID=119633702
* Make preprocessor modules mostly stateless; pass in the directories instead.Gravatar Ulf Adams2016-04-12
| | | | | -- MOS_MIGRATED_REVID=119631623
* Add stub gRPC C++ client and Java server.Gravatar Lukacs Berki2016-04-12
| | | | | | | The code doesn't do anything yet and it's unused code for now. This change only serves to add all the necessary dependencies to BUILD files that gRPC needs. -- MOS_MIGRATED_REVID=119628697
* Rollback of commit 351475627b9e94e5afdf472cbf465f49c433a25e.Gravatar Florian Weikert2016-04-12
| | | | | | | *** Reason for rollback *** -- MOS_MIGRATED_REVID=119625653
* Remove some dead code.Gravatar Ulf Adams2016-04-12
| | | | | | | | The cast to Label can never succeed for a configured target node, so this code could never have been executed (or we'd see crashes at this location). -- MOS_MIGRATED_REVID=119615022
* Fix missing format specifier.Gravatar Googler2016-04-12
| | | | | -- MOS_MIGRATED_REVID=119599941
* Document the difference between actions and genrules since the question has ↵Gravatar Dave MacLachlan2016-04-12
| | | | | | | | | come up a couple of times. RELNOTES: -- MOS_MIGRATED_REVID=119578035
* RELNOTES[INC]: It is now an error for a cc rule's includes attribute to ↵Gravatar Janak Ramakrishnan2016-04-12
| | | | | | | point to the workspace root. -- MOS_MIGRATED_REVID=119558172
* --Gravatar Googler2016-04-12
| | | | MOS_MIGRATED_REVID=119557016
* Stop passing --strict_java_deps to header compilation actionsGravatar Liam Miller-Cushon2016-04-12
| | | | | | | | Turbine now leaves enforcement of strict deps to JavaBuilder. Compile-time dependencies will still be collected as long as --output_deps is set. -- MOS_MIGRATED_REVID=119551363
* Remove unnecessary warning when applying empty invocation policy.Gravatar Luis Fernando Pino Duque2016-04-12
| | | | | -- MOS_MIGRATED_REVID=119533501
* Batch package and subdirectory requests -- might as well avoid serializing ↵Gravatar Janak Ramakrishnan2016-04-12
| | | | | | | requests wherever we can. -- MOS_MIGRATED_REVID=119531512
* Make NoSuchTargetException a concrete class. Removed ↵Gravatar Googler2016-04-12
| | | | | | | | | BadWorkspaceFileException and BadPreludeFileException. BadWorkspaceFileException and BadPreludeFileException are not doing anythings special rather than providing a custom message. Replace them by using NoSuchTargetException directly. -- MOS_MIGRATED_REVID=119530878
* Don't make racy changes to the global Environment.FrameGravatar Brian Silverman2016-04-12
| | | | | | | | | | | | | | | 6f15335 Make labels in .bzl files in remote repos resolve relative [...] introduced a Frame#setLabel which is documented to create a new Frame but instead modifies the existing one. This results in the global environment being modified in-place. I've been seeing some strange errors about not finding various packages in the wrong repositories which seems to be fixed by this change. -- Change-Id: I9b8521e50f45cfd385b20491315904ff0e24dcf6 Reviewed-on: https://bazel-review.googlesource.com/#/c/3300 MOS_MIGRATED_REVID=119529142
* Keep output of experimental UI short if curses cannot be usedGravatar Klaus Aehlig2016-04-12
| | | | | | | | | | | | | | | | | | | | As the experimental UI should be usable in all situations, we also have to care about the situation where updating the status bar in place is not possible. In this case, we have to make sure we do not litter the output to much. To achieve this, - we use the short one-line version of the status bar, and - reduce the frequency for time-based updates. Unfortunately, this means that we have to further complicate the timing mechanisms for updating the progress bar. We now have 3 time intervals in place: - a short one, after which we update the progress bar, if we dropped an update due to too frequent events, - an intermediate one, describing the frequency of status bar updates due to time passing, and - a long one for purely time-based updates of the progress bar if we cannot update it in place. -- Change-Id: I5d59ba174c4d290b07181620e238362a8d21a6eb Reviewed-on: https://bazel-review.googlesource.com/#/c/3295 MOS_MIGRATED_REVID=119527089
* ExperimentalStateTracker: add a short version of the progress barGravatar Klaus Aehlig2016-04-11
| | | | | | | | | | | | When bazel is used without curses, every status message ever written will never be deleted and, instead, stick in the log. To keep the output manageable in this case, provide a one-line progress bar to be used in this case. -- Change-Id: Ia0f9619d406e676f88ff536617a56fd4990cb51e Reviewed-on: https://bazel-review.googlesource.com/#/c/3294 MOS_MIGRATED_REVID=119520912
* Rate limit updates in the experimental UI and keep it freshGravatar Klaus Aehlig2016-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the experimental UI honor the --show_progress_rate_limit flag. While just dropping a status bar update if it happens too soon after the last update shown would be easy, there are a few delecate points to keep in mind. Assume that several updates happen after another and then nothing for a long time. Then the last(!) update is the one the user wants to see, as it most accurately reflects which actions are running during the long period. However, the simple dropping algorithms would show the first of those state updates. So, whenever we refrain from updating due to the rate limit we to make sure that an update will happen soon-ish, even if no events are reported for a long time. We do this by having (at most) one thread that periodically triggers updates of the progress, if the rate limit allows this. This mechanism is additionally used to ensure that the progress bar, when showing time-dependent data is kept fresh. For this property we also add a test. There is a third point to keep in mind: users (and also our tests) want to see all phases. However, some phases (like loading) might be so short that they happen in its entirety within a refresh interval. Therefore, whenever a new important phase starts, we skip the rate limit interval once; note that this happens at most a fixed number of times during the entire build. -- Change-Id: Iee68194d7eb92d6ef9efdc7abde6f56edfa21ce8 Reviewed-on: https://bazel-review.googlesource.com/#/c/3293 MOS_MIGRATED_REVID=119515272
* experimental UI: only wrap lines if curses are usedGravatar Klaus Aehlig2016-04-11
| | | | | | | | | | | | | Lines are wrapped in the progress bar to reliably know how many lines we'll eventually have to erase (there are a couple of reasons for this; for example, the information about the terminal width often is unreliable). So, if we don't erase lines anyway, we can as well let the terminal break lines. -- Change-Id: Id20806e6d53bfeccc781200eeac96acf48a74b1d Reviewed-on: https://bazel-review.googlesource.com/#/c/3292 MOS_MIGRATED_REVID=119510906
* experimental UI: honor --cursesGravatar Klaus Aehlig2016-04-11
| | | | | | | | | | | | Bazel can be asked to uses colors, but not to use other curses options. In this case, the ExperimentalEventHandler cannot rely on the terminal to ignore all curses output; hence it has to actively refrain from using curses that move the cursor. -- Change-Id: I026edade4366a8c5a8e56d376e8a4603f5c73b92 Reviewed-on: https://bazel-review.googlesource.com/#/c/3291 MOS_MIGRATED_REVID=119439855
* experimental UI: squeeze dots in last sample actionGravatar Klaus Aehlig2016-04-11
| | | | | | | | | | | | When showing the earliest started actions in the progress bar of the experimental UI, it is a wasted line to use a whole line just to show dots indicating that more actions are running; instead, just put the dots on the same line as the last action. -- Change-Id: I37fcb654f689786ab522036b563409b15b85437f Reviewed-on: https://bazel-review.googlesource.com/#/c/3290 MOS_MIGRATED_REVID=119439830
* Properly use PrintStream in QueryCommand. PrintStream swallows all ↵Gravatar Nathan Harmata2016-04-11
| | | | | | | IOExceptions and so we need to check if any were encountered. -- MOS_MIGRATED_REVID=119417412
* In RuleDefintion, use AutoValue and delete the checked-in generated code for it.Gravatar Carmi Grushko2016-04-08
| | | | | -- MOS_MIGRATED_REVID=119369970
* Allow Skylark repository rule to be privateGravatar Damien Martin-Guillerez2016-04-08
| | | | | | | | We want sometimes to wrap them around a macro and make it impossible to call them directly. So allow them to be private. -- MOS_MIGRATED_REVID=119362967
* Modify python template file to support WindowsGravatar Yun Peng2016-04-08
| | | | | -- MOS_MIGRATED_REVID=119361134
* Run test in standalone mode with "local = 1". Fixes #1052.Gravatar Yue Gan2016-04-08
| | | | | -- MOS_MIGRATED_REVID=119351752
* ios_device attribute "xcode", which takes an "xcode_version" target to ↵Gravatar Chris Parsons2016-04-08
| | | | | | | | | select a specific xcode. RELNOTES: ios_device attribute "xcode", for declaring a specific xcode to use when selecting iOS simulators. -- MOS_MIGRATED_REVID=119317344
* Expose method on ruleContext for retrieving TransitiveInfoProviders by ↵Gravatar Chris Parsons2016-04-08
| | | | | | | | | configuration. This is useful for obtaining child split configurations and the information they provide. -- MOS_MIGRATED_REVID=119295699
* Provide ResourceShrinker with the generated R.java packages in addition to ↵Gravatar Andrew Pellegrini2016-04-08
| | | | | | | packages from manifests. This prevents resources from being removed when they have been generated into a package other than the one specified in their target's manifest. -- MOS_MIGRATED_REVID=119294591
* Fix bug introduced by commit dc0fbb42ab22ab8f3205b0884069e1ffe03677c9 where ↵Gravatar Nathan Harmata2016-04-07
| | | | | | | | | | | | | a less specific option specification in a rc file could override a more specific option specification when there's a non-trivial Command hierarchy. A concrete example would be a "build --foo=1" line overriding a "test --foo=2" line for a "test" invocation. See the added test for more details. Also fix some typos in BlazeCommandDispatcherRcoptionsTest.java. Note that commit dc0fbb42ab22ab8f3205b0884069e1ffe03677c9 was rolled back in commit 417dad0f1e0d0ed4ccd5f8e52b49eb79937da49d which also incidentally rolled back commit 4f0fbe1b09333806cce76b75214e98c7684766e0. So this change is effectively a roll-forward of both of those, plus the bug fix, plus the typo fixes, and plus a documentation update. -- MOS_MIGRATED_REVID=119276218
* experimental UI: use LoadingProgressReceiverGravatar Klaus Aehlig2016-04-07
| | | | | | | | | | | | Subscribe to the LoadingPhaseStartedEvent to get the LoadingProgressReceiver; use it to provide information about the loading progress. As this event will not be raised by the LegacyLoadingPhaseRunner, do not depend on this event and still produce a sensible status bar if it is never raised. -- Change-Id: I1db24ceaf7de4fc42d00b02f470066cb38c877b4 Reviewed-on: https://bazel-review.googlesource.com/#/c/3270 MOS_MIGRATED_REVID=119261675
* Add error message for skylark for-else statement, and fix error message for ↵Gravatar Yue Gan2016-04-07
| | | | | | | single else statement. -- MOS_MIGRATED_REVID=119260729
* SkyframeExecutor: Raise an event at the beginning of the loading phaseGravatar Klaus Aehlig2016-04-07
| | | | | | | | | | | The main purpose of this event is to provide the LoadingProgressReceiver to any interested listener. Note that this event will only be raised if the option --experimental_skyframe_target_pattern_evaluator is given. -- Change-Id: Ic675c9e1255b7d60de28bdad1ec1838655abd389 Reviewed-on: https://bazel-review.googlesource.com/#/c/3269 MOS_MIGRATED_REVID=119258070
* SkyframeExecutor: use a LoadingProgressReceiver during loading phaseGravatar Klaus Aehlig2016-04-07
| | | | | | | | | | In this way, information about the progress of the loading phase is collected. -- Change-Id: I80ff0c91e27f0b55780c18c05fbb4fdda93263d3 Reviewed-on: https://bazel-review.googlesource.com/#/c/3268 MOS_MIGRATED_REVID=119255431
* Add a LoadingProgressReceiver classGravatar Klaus Aehlig2016-04-07
| | | | | | | | | | Instances of this class keep track of the packages already loaded and those currently being loaded. This information can be useful for UIs. -- Change-Id: Ifd380dd2129d11181ad4a31ecbb71d142825df61 Reviewed-on: https://bazel-review.googlesource.com/#/c/3267 MOS_MIGRATED_REVID=119252784
* implement list.insert for skylark ruleGravatar Yue Gan2016-04-07
| | | | | | | RELNOTES: implement list.insert for skylark rule -- MOS_MIGRATED_REVID=119243427
* Rollback of commit dc0fbb42ab22ab8f3205b0884069e1ffe03677c9.Gravatar John Field2016-04-07
| | | | | | | | | | | | | | | | | | *** Reason for rollback *** Changed the semantics of local .blazerc handling, requiring a Blaze release rollback ([]). *** Original change description *** Make specific options win over common ones When specifying which command names to parse options for, given the command annotation, ensure that "common" comes first, so that it can be overridden by more specific options. -- MOS_MIGRATED_REVID=119227260
* Remove incorrect exec() on well_known_protos dependency.Gravatar Peter Schmitt2016-04-07
| | | | | -- MOS_MIGRATED_REVID=119224150
* Add --host_java_toolchainGravatar Liam Miller-Cushon2016-04-07
| | | | | -- MOS_MIGRATED_REVID=119223631
* Moves Android NDK support for NDK r10e to a separate package in preparationGravatar Alex Humesky2016-04-07
| | | | | | | for adding support for NDK r11. -- MOS_MIGRATED_REVID=119207577
* Allow actions to specify if extra actions can attach to them.Gravatar Janak Ramakrishnan2016-04-07
| | | | | -- MOS_MIGRATED_REVID=119203499
* Allow the action that calls proto-compiler, to do so using a params file.Gravatar Carmi Grushko2016-04-07
| | | | | | | This allows compilations with very long command lines to succeed. -- MOS_MIGRATED_REVID=119199042
* Clean the API of ProtoCompileAction, in preparation for making the ↵Gravatar Carmi Grushko2016-04-07
| | | | | | | proto-compiler use a params file. -- MOS_MIGRATED_REVID=119193368
* Remove SkylarkAspectClass.getDefintion.Gravatar Dmitry Lomov2016-04-07
| | | | | -- MOS_MIGRATED_REVID=119162307
* Expose ObjcConfiguration to Skylark as fragment "objc" along with callable ↵Gravatar Erik Abair2016-04-07
| | | | | | | | | methods to return compiler options useful for reflection in aspects. RELNOTES[NEW]: Objective-C compiler information is now available to Skylark. -- MOS_MIGRATED_REVID=119160290
* Remove AspectClass.getDefinitionGravatar Dmitry Lomov2016-04-07
| | | | | | | | | | Aspect becomes a triple (AspectClass, AspectDefinition, AspectParameters) and loses its equals() method. After this CL, SkylarkAspectClass.getDefintion still exists and is deprecated. -- MOS_MIGRATED_REVID=119159653
* Eliminate BuildConfiguration.Fragment#prepareForExecutionPhase().Gravatar Lukacs Berki2016-04-07
| | | | | | | It is only used for FDO, for which purpose it seems to be unnecessary. -- MOS_MIGRATED_REVID=119151709
* Move FDO support to the analysis phase by wrapping FdoSupport in its own ↵Gravatar Lukacs Berki2016-04-07
| | | | | | | | | | | SkyFunction. This removes one of the two reasons for the existence of BuildConfiguration#prepareToBuild() which makes implementing dynamic configurations impossible and also makes FDO support halfway sane; now FDO is exactly as ugly as remote repositories, that is to say, reasonably okay. Ideally, we'd implement the zip extraction as an Action and make it a TreeArtifact, but support for TreeArtifacts is not mature yet enough, so it's not possible at the moment. -- MOS_MIGRATED_REVID=119150223
* Skylark docs: fix ctx.file and ctx.files.Gravatar Laszlo Csomor2016-04-07
| | | | | | | | | | | | | | | They were using "<ATTR>" which was parsed as a HTML tag. ctx.file appeared as: It is a shortcut for: list(ctx.attr..files)[0] ctx.files appeared as: It is a shortcut for: [f for t in ctx.attr. for f in t.files] -- MOS_MIGRATED_REVID=119149347
* Remove Aspect field from AspectKey.Gravatar Dmitry Lomov2016-04-07
| | | | | -- MOS_MIGRATED_REVID=119141878
* Mount whole directories into the sandbox when possibleGravatar Brian Silverman2016-04-07
| | | | | | | | | | | | | | | | | | | | This halves the overhead with sandboxing enabled vs disabled for a test that basically only mounts a bunch of files out of a directory, and slows that same test with a single extra file added to the directory (but not mounted) by only ~4%. The test is <https://gist.github.com/bsilver8192/10527a862ce16bb7f79a> with 30000 inputs moved to a subdirectory and only 10 genrules. This change means symlinks will be mounted directly as their target rather than as a symlink, but this solves some weird behavior with multi-level symlinks and will only break things which don't declare all of their dependencies. -- Change-Id: I1aa39dccb2e5fca2893bdab9065ee043d34019b2 Reviewed-on: https://bazel-review.googlesource.com/#/c/3220/ MOS_MIGRATED_REVID=119138157