tree 77dc6904ea6e45ba662be203daa0de9ef6e36b9e
parent ac1cab56bd5e4082fd4a9da3c64b21e4ccf6c10b
author Janice Collins <jcollins@google.com> 1543954660 -0800
committer GitHub <noreply@github.com> 1543954660 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJcBuDkCRBK7hj4Ov3rIwAAdHIIAK5ZWsYUDsqKUnS1oB9SS/X/
 uYpyNXBrBp78Y//lGVyfvmFn7hON6/YdqXBmE0tNuVMVZruDvTeVmgtKZ4wRWj2/
 Ej6FlLZkbzBPmoAyWTyPr1Cxddceens7WWKiqsNCkXz3MIMB3vRNAV9IrQhy2XH4
 /H1QtTYxPPgl98HgZbkLKm9xuZhw4Wac4KgUV3Zqq0tXnzD3dI5XEGsNnXZ/ICN1
 ILJQaHVUuWT2+J1MeLajW3bn7IqV3HCqVL55J37sqhd365cut1z9KLyVVZz9Czws
 oRp+8UXQ5f3gkTly/TXQrVtOb6VEg2dbNt2+R8M2Sr/qnvM3/8QI5rOFWNJYlPs=
 =RHWo
 -----END PGP SIGNATURE-----
 

Remove computeNode and use new analyzer interfaces for library retrieval (#1851)

* asynchronous PackageGraph construction and precaching

* checkpoint

* cleanup

* checkpoint

* Run tools more asynchronously

* Enhacements and dropping of Future.wait

* dartfmt

* Rate-limit the number of tools in flight

* checkpoint

* Workaround for duplicate ResovledLibraryResult objects

* Patch up merge problem and rebuild test package docs

* Use maps to avoid having to filter results

* dartfmt and review comments

* Update test package docs again (quotation marks different in stable branch)

* Clear pubspec overrides (this will only work in sdk-analyzer Travis)

* Change sdk test branch to master (analyzer-0.33 not integrated yet)

* Set correct analyzer version

* Eliminate initialization race where analyzer might not find all the files in time for empty packages

* Update analyzer requirement

* Fix merge error
