Add PyTest support for Mac, remove pylint & dependency validation

Take care of a few repository maintenance and cleanup tasks:

- Add support to run pytest on Mac: google-crc32c was not available for the mac platform in version 1.1.2, but support was added in 1.3.0

- Use YAPF instead of pylint: YAPF was already suggested to format text, but applies different rules than pylint which was used in presubmit. YAPF is now used for lint checking in presubmit as well.

- Validate generated dependencies: When running `tools/generate_requirements_txt.py`, new recursive dependencies might be added which are not defined in .vpython3. This is an issue for running tests (which rely on cipd wheels defined in .vpython3), and a security concern due to the inclusion of unreviewed versions. This change validates that all (recursive) dependencies added to requirements.txt have been defined in .vpython3 and provides helpful messages if validation fails, e.g.

```
Exception: Generated requirements.txt differs from definitions in .vpython3:

  · charset-normalizer==2.0.4 found in requirements.txt, but .vpython3 defines version 1.1.0
  · pyasn1-modules==0.2.8 found in requirements.txt, but not in .vpython3

Fix the .vpython3 definitions and re-run this command.
```

- Add tmrts & machenbach as OWNERS

Change-Id: I587f2df3211ef56241892d47d089375b4d79ae9d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/chrome-devtools-frontend/+/3691840
Auto-Submit: Alexander Schulze <alexschulze@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
6 files changed
tree: 648f772811c0e7be5e09c4327001c3884f44cfc4
  1. gae_py3/
  2. .gitignore
  3. codereview.settings
  4. OWNERS
  5. README.md
  6. WATCHLISTS
  7. whitespace.txt
README.md

This repo contains:

  • the infra for serving the devtools frontend from Google's app engine (gae_py3)

See this README and go/devtools-hosting-app for details.

go/devtools-uploader references to a deprecated version of this app.