[roll] Roll fuchsia [scripts] fix `fx lint` (disable rust) & python 3 incompatibilities

Thanks to allanmac@ for realizing that `fx lint` stopped working for
`clang`. He started a CL (fxrev.dev/503199) and when I reviewed it, I
had some Rust edits that also failed on `fx lint`. There were several
problems including bad paths and bad file modes (found by Allan), and
also some python script preambles were changed to run python 3, but the
scripts were not changed to work with python 3 (at least for some of the
files). I grepped for some common python-2-only syntax issues, and
updated what I found.

I guess no one lints their code, because `fx lint` pretty much doesn't
work at all right now, for most changes. ;-)

I fixed just enough of `run-clippy.py` and its dependency `rust.py` to
get it to run without exceptions, but I think the scripts are outdated,
and the `ninja` or `gn` results no longer produce the expected patterns
(I assume). This will require some work, and for now it is disabled in
`fx lint`.

See fxbug.dev/72865

To test, re-enable Rust in `fx lint` and do the following:

Make a small edit to a Fuchsia Rust source, and run `fx
lint`. I updated the results to show the `gn` commands (based on `ninja`
query results) and the found targets. None of them seem to match the
expected pattern, so the `fx lint` command fails for Rust.

Also, it's running `gn refs ...` multiple times, for each `ninja` output
file result, and each invocation is _very slow_! I'm not a `gn refs`
expert, but we may be able to run `gn refs` once, listing all of the
output files, and then just loop through the results.

Despite needing to temporarily disable `fx lint` support for Rust, this
CL makes `fx lint` work for other languages again, and fixes linting
for C/C++ CLs.

Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/504725
Original-Revision: 35f6f5d0839ae1b1f37acdc9136f5cb17bd505be
GitOrigin-RevId: ac67645eed950e77a4f481e8b5d2a4b08196c7af
Change-Id: I9bd6726c74e70dd4797182569abbd69e34523cea
1 file changed
tree: e20d298d6792a0b6d8fe4fbe872f1c297dbe1d6a
  1. garnet/
  2. infra/
  3. peridot/
  4. third_party/
  5. topaz/
  6. zircon/
  7. firmware
  8. flower
  9. jiri.lock
  10. minimal
  11. prebuilts
  12. README.md
  13. stem
  14. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.