aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Internal changeGravatar Laszlo Csomor2018-03-09
| | | | PiperOrigin-RevId: 188459395
* tests: fix flaky SkyframeAwareActionTestGravatar Laszlo Csomor2018-03-09
| | | | | | | | | | | | | Fix testCacheBypassingActionWithMtimeChangingInput in SkyframeAwareActionTest by ensuring that enough time elapses between file updates so their effects are observable on the file's ctime. Fixes https://github.com/bazelbuild/bazel/issues/4755 Closes #4787. PiperOrigin-RevId: 188458542
* Automated rollback of commit 3edf41b70de9bb1a8702d0342beeb2ad13898d71.Gravatar philwo2018-03-09
| | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Rollback was requested by original authors @hmemcpy and @ittaiz in #3201: "We found a problem with this patch... seems that tests that are added dynamically by the test runner (in our case, specs2 'examples' that are generated with Fragments.foreach) do not appear in the xml!" This should be part of 0.12.0-rc1, otherwise that release will have the above mentioned regression. *** Original change description *** Skipping writing FILTERED tests to test.xml This fixes #3201 by preventing tests that haven't actually run to be written to the test.xml. This is consistent with how e.g. surefire reports work, tests that were filtered out do not appear in the xml. This allows changing the Bazel plugin in such a way that does not depend on `time` being 0.0. Closes #4596. PiperOrigin-RevId: 188455315
* runfiles,py,java: rlocation accepts absolute pathGravatar Laszlo Csomor2018-03-09
| | | | | | | | | | | | | | | | | | | | | The rlocation functions in the Python and Java runfiles libraries (under @bazel_tools//tools/runfiles) now consistently return the argument itself if it is an absolute path. If the argument is a driveless absolute Windows path (e.g. "\\windows\\system32") then rlocation reports an error. See https://github.com/bazelbuild/bazel/issues/4460 Change-Id: I80474f7cc4736a571bf113438a916f71c36a344d Closes #4806. Change-Id: I80474f7cc4736a571bf113438a916f71c36a344d PiperOrigin-RevId: 188453982
* Optimize GC churn of parameter bindings performed before each user defined ↵Gravatar nharmata2018-03-08
| | | | | | | | | | | | | | | function call. This is the 2nd attempt at this commit. The first attempt (https://github.com/bazelbuild/bazel/commit/f1013485d41efd8503f9d4f937e17d1b4bc91ed3) was rolled back because it introduced the following two bugs: (1) The side effects of Environment#enterScope are relevant: it creates and stores a new Continuation that has a reference to the set currently referenced by 'knownGlobalVariables', and then overwrites the value of the variable. When there are e.g. nested function calls, 'knownGlobalVariables' will be wrong in the Environment used to stage the inner call (see the added test for an example). (2) The finally block in UserDefinedFunction#call assumes the env.enterScope was called. Because of the EvalException (incorrectly) thrown due to (1), this is no longer true. I restructured the code such that (2) isn't possible and I also added a unit test that would have caught the two bugs. In my first attempt, I was doing too much - I was also trying to save the CPU-costs in the env.update call (dispatches to the just-created lexical frame, and calls LexicalFrame#put, which does an unnecessary mutability sanity check, etc) and in doing so completely missed the above bugs. Sorry. RELNOTES: None PiperOrigin-RevId: 188411737
* Add the flag --experimental_import_deps_checking to control the dependencyGravatar cnsun2018-03-08
| | | | | | | checking for aar_import and java_import targets. RELNOTES:None. PiperOrigin-RevId: 188399775
* Add a flag to control whether to treat missing dependencies as errors orGravatar cnsun2018-03-08
| | | | | | | warnings (--emit_errors or --noemit_errors). RELNOTES:None. PiperOrigin-RevId: 188397338
* Delete unused test runner script.Gravatar kaipi2018-03-08
| | | | PiperOrigin-RevId: 188375134
* Remove all dynamic type checking overhead for struct field accesses. These ↵Gravatar nharmata2018-03-08
| | | | | | | checks are unnecessary by construction; see the codepaths that construct SkylarkInfo instances. RELNOTES: None PiperOrigin-RevId: 188373688
* Tag SkylarkComputedDefault with @AutoCodecGravatar mjhalupka2018-03-08
| | | | PiperOrigin-RevId: 188367892
* Tag SkylarkType with @AutoCodec.Gravatar mjhalupka2018-03-08
| | | | PiperOrigin-RevId: 188367672
* Add missing "dump" command link from Bazel user manual.Gravatar gregce2018-03-08
| | | | PiperOrigin-RevId: 188362796
* Add unit tests for rc parsing.Gravatar ccalvarin2018-03-08
| | | | | | | | | | | | | | | | | These provide some testing for the following cases: - tokenization - recognizing comments - grouping of different lines by command - import ordering - import cycles - bad imports There's still room for more, in particular in the multi-command case, but this feels like a good start. Also identified some surprising behaviors that should be fixed. Leaving them tested as documentation of their broken nature. RELNOTES: None. PiperOrigin-RevId: 188355929
* As a micro-optimization, inline the "Callstack.enabled" guard. The java-land ↵Gravatar nharmata2018-03-08
| | | | | | | | | function call overhead of the morally no-op Callstack#push/pop was profiled to be ~1.4% CPU in a benchmark of loading a BUILD file that was particularly heavy in Skylark function calls. Alternatives considered: writing code that I hoped would be more amenable to the JIT choosing to inline the function call. I couldn't get this to work. RELNOTES: None PiperOrigin-RevId: 188350132
* Intern CollectTargetsInPackagKey. Bug from ↵Gravatar janakr2018-03-08
| | | | | | https://github.com/bazelbuild/bazel/commit/5fb2a487e53cc3d80e3654d5b63d062f7f70588b. PiperOrigin-RevId: 188348546
* Add an interface to interact with sandboxfs.Gravatar jmmv2018-03-08
| | | | | | | | | | | | | | | | The new SandboxfsProcess interface allows interacting with sandboxfs. There are two implementations: RealSandboxfsProcess, which spawns the sandboxfs binary, and FakeSandboxfsProcess, which mimics what sandboxfs does but using symlinks and is intended for testing purposes only. The RealSandboxfsProcess implementation works but still carries many TODOs. The most "painful" one may be that the test requires manual invocation because we do not yet have an easy way to integrate with sandboxfs. That will be solved later on; for now this is sufficient for initial testing. RELNOTES: None. PiperOrigin-RevId: 188347393
* Remove unnecessary I/O operations from handling remotely executed actions ↵Gravatar olaola2018-03-08
| | | | | | | | (fixes performance regression #4749). Also adding Skylark tests for input/output directories. TESTED=locally RELNOTES: Fix performance regression PiperOrigin-RevId: 188346410
* Remove unnecessary space in error message.Gravatar ajmichael2018-03-08
| | | | | RELNOTES: None PiperOrigin-RevId: 188341095
* update to MethodDescriptor methods instead of fieldsGravatar Carl Mastrangelo2018-03-08
| | | | | | | | @buchgr Closes #4790. PiperOrigin-RevId: 188332795
* tests,windows: enable skylarkinterface/processor:*Gravatar Laszlo Csomor2018-03-08
| | | | | | | | | | | | | | Add these tests to the transitive closure of //src:all_windows_tests thus run them on CI. See https://github.com/bazelbuild/bazel/issues/4292 Change-Id: Iae0bd925bdde2921fb0b2d4222b81fcecb28dea3 Closes #4800. Change-Id: Iae0bd925bdde2921fb0b2d4222b81fcecb28dea3 PiperOrigin-RevId: 188324317
* tests,windows: enable android.desugar.runtimeGravatar Laszlo Csomor2018-03-08
| | | | | | | | | | | | Add the c.g.d.build.android.desugar.runtime tests to the transitive closure of //src:all_windows_tests, thus running them on CI. See https://github.com/bazelbuild/bazel/issues/4292 Closes #4796. PiperOrigin-RevId: 188312286
* C++: Marks Skylark exposed as not documented.Gravatar plf2018-03-08
| | | | | | | This is to avoid listing them in the Bazel docs for now. RELNOTES:none PiperOrigin-RevId: 188295824
* Fix PackageFunction's call to Package.Builder.Helper#onLoadingComplete to passGravatar nharmata2018-03-07
| | | | | | | | | | along the wall time of the load, even when the package in question was in PackageFunction's internal cache (e.g. the current #compute call is a PackageFunction Skyframe restart). Also clarify the intent of the 'loadTimeMs' param in #onLoadingComplete. RELNOTES: None PiperOrigin-RevId: 188253198
* Automated rollback of commit f1013485d41efd8503f9d4f937e17d1b4bc91ed3.Gravatar nharmata2018-03-07
| | | | | | | | | | | | | *** Reason for rollback *** Introduced a bug in skylark that caused intellij TAP test to fail. The bug was not caught by any skylark/blaze/bazel tests. *** Original change description *** Optimize GC churn of parameter bindings performed before each user defined function call. RELNOTES: None PiperOrigin-RevId: 188249713
* Fixed missing C standard library functions with NDK r15 and r16Gravatar jingwen2018-03-07
| | | | | | | | | Certain C++ stdlib wrapper headers are unable to find their C counterparts (e.g. math.h for cmath) that are in %ndk%/sysroot/usr/include. This is because the -isystem for the include path was added with addCompilerFlag instead of addUnfilteredCxxFlag. The former is filtered out when compiling C code, whereas the latter keeps it. Fixes https://github.com/bazelbuild/bazel/issues/4777 RELNOTES: None. PiperOrigin-RevId: 188241254
* Skylint: check for PACKAGE_NAME, REPOSITORY_NAME, and ctx.outputs.executableGravatar laurentlb2018-03-07
| | | | | RELNOTES: None. PiperOrigin-RevId: 188225156
* Fix stale comment about selector entry orderGravatar mschaller2018-03-07
| | | | | RELNOTES: None. PiperOrigin-RevId: 188221536
* Skylint: Warn for the '/' operator (instead of '//').Gravatar laurentlb2018-03-07
| | | | | RELNOTES: None. PiperOrigin-RevId: 188217409
* Create a new version of BuildTool that holds all cquery logic.Gravatar juliexxia2018-03-07
| | | | PiperOrigin-RevId: 188212286
* Allow passing location, ast, and environment to @SkylarkCallable methodsGravatar cparsons2018-03-07
| | | | | RELNOTES: None. PiperOrigin-RevId: 188201686
* Optimize GC churn of parameter bindings performed before each user defined ↵Gravatar nharmata2018-03-07
| | | | | | | function call. RELNOTES: None PiperOrigin-RevId: 188199514
* Don't check contents of conflicting compiled resourcesGravatar asteinb2018-03-07
| | | | | | | | Until we properly support checking the contents of these files, don't try to do so. RELNOTES: none PiperOrigin-RevId: 188192286
* Added named=true to output_group.group_nameGravatar cparsons2018-03-07
| | | | | | | This was migrated incorrectly, as there's a semantic difference between @Param for @SkylarkSignature and for @SkylarkCallable, it would appear. RELNOTES: None. PiperOrigin-RevId: 188190409
* Automatic code cleanup.Gravatar laurentlb2018-03-07
| | | | PiperOrigin-RevId: 188182739
* Update gRPC to 1.10.0Gravatar Carl Mastrangelo2018-03-07
| | | | | | | | | | | | Modeled after d6dde574ce539b11279fd4694de2304da9482a47 This is needed to remove the `METHOD_` static fields in the generated stubs, which are deprecated. cc: @buchgr Closes #4760. PiperOrigin-RevId: 188182280
* Remove internal-only startup option from documentation.Gravatar ajmichael2018-03-07
| | | | | RELNOTES: None PiperOrigin-RevId: 188179200
* Refactoring FileTransport to use the AsynchronousFileOutputStream.Gravatar olaola2018-03-07
| | | | | | | | Very thin wrapper, nothing except swallow+log all errors. TESTED=presubmit RELNOTES: None PiperOrigin-RevId: 188177872
* Add a binary to CppCompileAction that is responsible for grepping header ↵Gravatar ajmichael2018-03-07
| | | | | | | files for include statments. This binary is currently only used for an internal feature - but that feature may be supported externally eventually. RELNOTES: None PiperOrigin-RevId: 188173513
* update grpc-java to 1.10.0Gravatar Jakob Buchgraber2018-03-07
|
* Fixed left alignment in docGravatar Anders Sundman (asum)2018-03-07
| | | | | | Closes #4689. PiperOrigin-RevId: 188169719
* report test duration in XML using attribute "time"Gravatar Shimin Guo2018-03-07
| | | | | | | | Fixes #4738 Closes #4764. PiperOrigin-RevId: 188167356
* Add option to dump command lines of actions in dump.Gravatar twerth2018-03-07
| | | | | RELNOTES: None PiperOrigin-RevId: 188164754
* Don't use computeIfAbsent in action graph dumping.Gravatar twerth2018-03-07
| | | | | | | | | | | | | | | computeIfAbsent may throw (on best effort basis) a ConcurrentModificationException if you change the underlying Map in the computeIfAbsent call, for example when you call computeIfAbsent recursively in the mappingFunction. NestedSets are an inherent recursive structure, so we need to call computeIfAbsent recursively in the action graph dump. Since computeIfAbsent doesn't throw the exception all the time, it's hard to come up with a reliable test case. RELNOTES: None PiperOrigin-RevId: 188151283
* C++: Makes sure ltoBitcodeFiles get merged when merging compilation outputs.Gravatar plf2018-03-07
| | | | | RELNOTES: PiperOrigin-RevId: 188149648
* C++ providers: Removes C++ providers from JavaWrapCcGravatar plf2018-03-07
| | | | | | | They are now wrapped by a JavaWrapCc specific provider. RELNOTES:none PiperOrigin-RevId: 188140909
* Post PatternExpandingError from the skyframe target pattern evaluator as needed.Gravatar Benjamin Peterson2018-03-07
| | | | | | | | | This fixes https://github.com/bazelbuild/bazel/issues/4731. Also, add test coverage for posting of ParsingFailedEvent and handling of cycles in LoadingPhaseRunnerTest. Change-Id: I88c9d33417b9c3c7a06c92a6137d58f37b991b0c PiperOrigin-RevId: 188138972
* Filter out non-.flat files while linking.Gravatar corysmith2018-03-06
| | | | | RELNOTES: None PiperOrigin-RevId: 188121571
* Use -isystem instead of -I for NDK header search paths.Gravatar jingwen2018-03-06
| | | | | | | | | | | | | | This suppresses warnings from the NDK headers from users. This also fixes the correct include search paths, because -isystem dirs are searched _after_ -I dirs. https://gcc.gnu.org/onlinedocs/gcc/Directory-Options.html#Directory-Options "You can use -I to override a system header file, substituting your own version, since these directories are searched before the standard system header file directories. However, you should not use this option to add directories that contain vendor-supplied system header files; use -isystem for that. The -isystem and -idirafter options also mark the directory as a system directory, so that it gets the same special treatment that is applied to the standard system directories." RELNOTES[FIX]: Fixed NDK r15/r16 system include search paths to use -isystem instead of -I. PiperOrigin-RevId: 188111072
* Expose an actions provider on RuleConfiguredTarget instances.Gravatar cparsons2018-03-06
| | | | | | | | | Given a target (for example from a skylark aspect), one will be able to access a list of actions that the target generated using "target.actions". This is without additional memory footprint. Actions themselves are not fully exposed to skylark (and thus there isn't much meaning to gather from them in skylark yet). Access methods will follow soon. RELNOTES: None. PiperOrigin-RevId: 188098079
* Adding async proto or text logging utility class.Gravatar olaola2018-03-06
| | | | | | | WANT_LGTM=buchgr TESTED=unit tests, 500 runs per test RELNOTES: None PiperOrigin-RevId: 188093043