aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tools
Commit message (Collapse)AuthorAge
* CI,windows: create test_suites for Windows testsGravatar L?szl? Csomor2017-09-19
| | | | | | | | | | | | | | | Add recursive test_suite rules for all tests that ci.bazel.io runs for Windows, and set the top-level test_suite as the CI test target. Doing so shortens the command line and works around https://github.com/bazelbuild/bazel/issues/3742 I verified that the old set of tests are the same as the new set. Change-Id: Id8d5da3f0c03c9b8969a9f8e1e9a3096888365aa PiperOrigin-RevId: 169242858
* Java Launcher: Create classpath jar with a random nameGravatar Yun Peng2017-09-18
| | | | | | | | | | | | | | | When the classpath is too long, the launcher creates a jar file to pass the classpath value. This change makes the jar file's name random. It fixed the bug that when running multiple instances of the same java binary, they all try to create the same classpath jar file. For example, when running java_test with shard_count > 1. Also, we delete the classpath jar file after the program finishes, so that we don't leave any garbages behind. Change-Id: I67926b3ef76dcb1806797e977ecaa7c6763c5cf2 PiperOrigin-RevId: 169087032
* Remove warning about multiple options in copts.Gravatar Joe Finney2017-09-15
| | | | | | | | | Fixes #3526 Closes #3725. Change-Id: Ice068542e574661f9dff199f88a1e56fea191de3 PiperOrigin-RevId: 168720424
* Skylint: report missing documentation for a function's return valueGravatar fzaiser2017-09-14
| | | | | | | | | | | | | | | | | | | | | | | | | | In addition to checking the function parameter documentation, skylint now also checks whether the return value is documented in a 'Returns:' section in the docstring. The same restrictions as for parameters apply: - Private functions need no documentation - If a function has a single line docstring, it need not document the return value. In addition, I improved the docstring parsing: - Previously, the beginning and end of a section (e.g. 'Args:', 'Returns:') were determined by line breaks. Now, they're determined by indentation and missing line breaks are reported. This change should make the docstring parser more robust. - Additional indentation is not warned against anymore. There are many situations where it makes sense, like example code. Both of these changes were motivated by the results of the linter on Skylark files "in the wild". RELNOTES: none PiperOrigin-RevId: 168660248
* Open source tests for Android desugarer.Gravatar ajmichael2017-09-14
| | | | | | | These tests will fail with a helpful error message if you do not have android_sdk_repository set up. They currently require that platform 25 be installed in your SDK. RELNOTES: None PiperOrigin-RevId: 168570577
* Support for local_resource_files in android_testGravatar Googler2017-09-13
| | | | | RELNOTES: none PiperOrigin-RevId: 168444499
* Windows Native Launcher: Print command line when launch failed.Gravatar pcloudy2017-09-12
| | | | | | | This will help us debug some Launcher errors. RELNOTES: None PiperOrigin-RevId: 168354216
* Add multiple density processing to aapt2 using the optimize command.Gravatar corysmith2017-09-12
| | | | | RELNOTES: None PiperOrigin-RevId: 168259422
* Skylint: improve the naming conventions checkerGravatar fzaiser2017-09-12
| | | | | | | | | | | | | | | | | | | | | | | | Changes in behavior: * Local variables are also allowed to be UPPER_SNAKE_CASE. Upper case means that they're constants but this is not checked yet. * Providers are required to be UpperCamelCase. A variable FooBar is considered a provider if it appears in an assignment of the form "FooBar = provider(...)" * Shadowing of builtins (e.g. "True = False", "def fail()") is not allowed * The single-letter variable names 'O', 'l', 'I' are disallowed since they're easy to confuse * Multi-underscore names ('__', '___', etc.) are disallowed * Single-underscore names may only be written to, as in a, _ = tuple They may not be read, as in "f(_)". In the process, I also moved some code from UsageChecker to AstVisitorWithNameResolution to prevent duplication in NamingConventionsChecker. RELNOTES: none PiperOrigin-RevId: 168250396
* Add Profiler for recording task execution time.Gravatar corysmith2017-09-12
| | | | | RELNOTES: None PiperOrigin-RevId: 168246856
* Skylint: add main linter class and clean up BUILD filesGravatar fzaiser2017-09-08
| | | | | RELNOTES: none PiperOrigin-RevId: 167846717
* Replace ad hoc wrapper classes with Equivalence.WrapperGravatar brandjon2017-09-07
| | | | | | | | | The tradeoff is that it eliminates a class but makes type signatures slightly more complicated. I think it's a net win because we avoid implementing equals/hashCode. I figured helper methods for wrapping/unwrapping were better than relying on the caller to know what Equivalence to use ("identity"). RELNOTES: None PiperOrigin-RevId: 167750079
* More BUILD file refactorings.Gravatar philwo2017-09-06
| | | | | | | | | Split collect, concurrent, vfs, windows into package-level BUILD files. Move clock classes out of "util", into their own Java package. Move CompactHashSet into its own Java package to break a dependency cycle. Give nestedset and inmemoryfs their own package-level BUILD files. PiperOrigin-RevId: 167702127
* Remove debug outputGravatar Googler2017-09-06
| | | | | | | This was displayed to the user during the build, which could result in a lot of extra log data. RELNOTES: None. PiperOrigin-RevId: 167641446
* fix for legacy jacoco instrumentation in interfaces behind flagGravatar kmb2017-09-06
| | | | | | RELNOTES: n/a PiperOrigin-RevId: 167619442
* Skylint: add lint for uninitialized variablesGravatar fzaiser2017-09-06
| | | | | RELNOTES: none PiperOrigin-RevId: 167614625
* Skylint: check the documentation of parameters in function docstringsGravatar fzaiser2017-09-04
| | | | | RELNOTES: none PiperOrigin-RevId: 167502103
* Skylint: add lint to check for unreachable statementsGravatar fzaiser2017-09-04
| | | | | RELNOTES: none PiperOrigin-RevId: 167501207
* Extract authandtls, buildeventservice, buildeventstream into package-level ↵Gravatar philwo2017-09-04
| | | | | | | | BUILD files. Replace all ":relative" labels with "//absolute:path" labels for easier search & replace. PiperOrigin-RevId: 167500985
* Remove the Dialect type from the Parser.Gravatar laurentlb2017-09-01
| | | | | | | | Let's use the same parser. Dialect differences are checked in a separate validation pass. RELNOTES: None. PiperOrigin-RevId: 167280201
* PiperOrigin-RevId: 167167400Gravatar kmb2017-09-01
|
* Changed Android manifest merger build action to also resolve relative class ↵Gravatar Googler2017-09-01
| | | | | | | names in manifest files for Android libraries. RELNOTES: none PiperOrigin-RevId: 167147373
* Skylint: add a lint that reports unused identifiersGravatar fzaiser2017-08-31
| | | | | RELNOTES: None PiperOrigin-RevId: 167134267
* Skylint: handle for-loops in control flow lint correctlyGravatar fzaiser2017-08-31
| | | | | RELNOTES: none PiperOrigin-RevId: 167113866
* Add a closeResource(Throwable throwable, Object resource) in the runtimeGravatar cnsun2017-08-31
| | | | | | | | | library. Javac9 generates a helper method $closeResource(Throwable, AutoCloseable) sometimes for try-with-resources. Now we rewrite the call to call our version to avoid the dependency on AutoCloseable. RELNOTES: None PiperOrigin-RevId: 167025276
* Allow to overwrite default dex prefix name 'classes'.Gravatar Googler2017-08-31
| | | | | RELNOTES: none PiperOrigin-RevId: 167020968
* Make ControlFlowChecker follow the dataflow analysis idiom more closelyGravatar brandjon2017-08-31
| | | | | | | | | | | This makes ControlFlowInfo an ADT handling its own join operation, and combines the list of return statements into that structure. This is less error-prone if a new field is added, and helps simplify the logic in visit(IfStatement). The invariants regarding the cf field are also clarified: It is "transferred" (in dataflow analysis terminology) from the point before the node to the point after the node by the visit() function. It is also undefined (null) outside of a function definition. There's a cost to this CL in terms of LOC and maybe even memory allocations, but I suspect that's outweighed by sticking to a known paradigm for flow analysis. RELNOTES: None PiperOrigin-RevId: 167005045
* pkg_tar usage: fix CI warningGravatar laszlocsomor2017-08-30
| | | | | RELNOTES: none PiperOrigin-RevId: 166993735
* Skylint: add lint that checks for statements without effectsGravatar fzaiser2017-08-30
| | | | | | | | Statement expressions without function calls cannot have an effect and should be removed, e.g. literals like "['a', 'b']". RELNOTES: none PiperOrigin-RevId: 166990862
* Make classJarOutput of AndroidResourceMergingAction read package from manifestGravatar ajmichael2017-08-30
| | | | | | | if --packageForR is not specified. RELNOTES: None PiperOrigin-RevId: 166923102
* Add support for the <type>/<package>:<name> method of declaring resources.Gravatar corysmith2017-08-30
| | | | | RELNOTES: None PiperOrigin-RevId: 166899690
* Save density information to manifests when filtering resources in analysisGravatar Googler2017-08-30
| | | | | | | | | | | Previously, when filtering in analysis, density information was not passed to execution to avoid wasting time on re-filtering. However, that density information was also used to add information to the manifest. Add an additional flag to save density information to the manifest without triggering resource filtering in execution, and use it when filtering in analysis. RELNOTES: None PiperOrigin-RevId: 166891827
* Rollforward of ↵Gravatar apell2017-08-29
| | | | | | | | | https://github.com/bazelbuild/bazel/commit/0071b396776be4d146fd271499716dd5dea6f7e9: Enable parameter files for manifest merger actions. NEW: Using shell quoted param files and unescape arguments in ParamsFilePreProcessor to avoid miss-processing --manifestValues arguments containing whitespace. RELNOTES: None. PiperOrigin-RevId: 166858411
* Split "shell", "graph" into their own packages.Gravatar philwo2017-08-29
| | | | PiperOrigin-RevId: 166849610
* Skylint: add lint for missing docstringsGravatar fzaiser2017-08-29
| | | | | RELNOTES: None PiperOrigin-RevId: 166846007
* Make Windows C++ launcher support long pathGravatar Yun Peng2017-08-29
| | | | | Change-Id: I25795c748fa98b9275ae34ead17fce02a57dc8e4 PiperOrigin-RevId: 166816800
* Add a lint for missing return statementsGravatar fzaiser2017-08-28
| | | | | | | | This lint checks that if a functions returns a value in some execution paths, it does so in all execution paths. RELNOTES: None PiperOrigin-RevId: 166688783
* Prepend workspace name when finding Jar path by RlocationGravatar pcloudy2017-08-25
| | | | | | | Fix https://github.com/bazelbuild/bazel/issues/3620 RELNOTES: None. PiperOrigin-RevId: 166472158
* Add missing action to processor busy boxGravatar corysmith2017-08-25
| | | | | | RELNOTES: None PiperOrigin-RevId: 166402585
* Typo fix: prosess -> processGravatar jingwen2017-08-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 166385930
* Enable using a parameter for large lists of resources to link.Gravatar corysmith2017-08-25
| | | | | RELNOTES: None PiperOrigin-RevId: 166379334
* Busybox all the Bazel Android tools.Gravatar ajmichael2017-08-25
| | | | | | | | | This change reduces the size taken up in the bazel binary by Android tools deploy jars from 38.2 mb to 9.8 mb, which is 15% of the bazel binary size. Also, some minor cleanups of our BUILD files. https://github.com/bazelbuild/bazel/issues/2385 RELNOTES: None PiperOrigin-RevId: 166373241
* Windows: Implement Java native launcherGravatar Yun Peng2017-08-25
| | | | | | | | | | | Now Bazel build a Windows exe binary to launch JVM for java_binary and java_test. The Java native launcher is implemented with the same logic and functionalities as the original java shell stub script. Change-Id: Ida40579bce82425f3506f9376b7256aa3edc265e PiperOrigin-RevId: 166346445
* Automated rollback of commit d31a944cfae27564caa7f974e0daec99314d4c44.Gravatar lberki2017-08-24
| | | | | | | | | | | | | *** Reason for rollback *** Breaks //java/com/google/commerce/tapandpay/android/app/alienfood:<things> *** Original change description *** Enable parameter files for manifest merger actions. RELNOTES: None. PiperOrigin-RevId: 166324224
* Enable parameter files for manifest merger actions.Gravatar apell2017-08-24
| | | | | RELNOTES: None. PiperOrigin-RevId: 166215145
* Final tweaks and fixes to enable aapt2 for Blaze.Gravatar corysmith2017-08-24
| | | | | | | Implemented processing databinding for compile passes RELNOTES: None PiperOrigin-RevId: 166215052
* Adds compile action for aapt2: Aapt2ResourcePackagingActionGravatar corysmith2017-08-23
| | | | | | | | Adds a ManifestContainer interface to centralize the types that provide manifests. Adds PackagedResources to represent a linked dexless resource apk RELNOTES: None PiperOrigin-RevId: 166193049
* Start work on the Skylark linter (skylint).Gravatar fzaiser2017-08-23
| | | | | | | | This commit introduces checking of naming conventions, i.e. upper and lower snake case. RELNOTES: None PiperOrigin-RevId: 166073284
* Remove workaround. The ASM bug is fixed. And we use ClassRemapper now.Gravatar cnsun2017-08-22
| | | | | RELNOTES: None PiperOrigin-RevId: 165949162
* Terminate requests with OK instead of ALREADY_EXISTS in the Remote Worker.Gravatar olaola2017-08-22
| | | | | | | | | We intend to change the API to enforce that in the general case: https://docs.google.com/document/d/12c3oAPgedckLpue2yj0xGgJTEOyUm4mXWWBJ157J-8I/edit#heading=h.l7cw5mk7fh05 ALREADY_EXISTS should never be thrown by the CAS. TESTED=remote worker RELNOTES: PiperOrigin-RevId: 165933102