tree 9b2c777b0d0d662849882aaa4b81bec0fd1d8478
parent bb65f91d3f3da4e593ebc3db712816a260b305f3
author stuartmorgan <stuartmorgan@google.com> 1637685258 -0500
committer GitHub <noreply@github.com> 1637685258 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJhnRgKCRBK7hj4Ov3rIwAADokIABO8FQdpM4qYx+/lRpPJOpoj
 nCEspbzvTiBxh/16stDHRs6lFH2/BQPD/ySwn7AlJg9cQPX6M7umgpZztfeAy7Ma
 HmwSU1/GYwuc1TWTt7SydbjigS5t2E8cxLRwoFJKQKR/yEAoViTDsvFKEYEfPCjn
 5akhEB7xwK/RnzDStW9ezJerGP5h3A0f7pWxUpf8Z3lmkWOliLOFNWysgLhhW/L3
 C+Z89PG44yCEfZmWdpPM59gsWi9khafMLZ2NSSjBQSqzx4T+9coe3dR/cXPLw0Lm
 zn4iER5Dixp48hYa6KjxNpU47/TymTfBo7LQrRbOUrSlqadIXF/JVvV8CnK2FlM=
 =zagE
 -----END PGP SIGNATURE-----
 

[flutter_plugin_tools] Check for missing version and CHANGELOG updates (#4530)

The currently documented repository policy is to:
- require version updates for packages changes that don't meet specific exemptions, and
- require CHANGELOG changes for essentially all changes.

This adds tooling that enforces that policy, with a mechanism for overriding it via PR descriptions, to avoid cases where they are accidentally omitted without reviewers catching it.

In order to facilitate testing (which require mocking another `git` command), this also updates the existing `version-check` tests:
- Replaces the custom git result injection/validating with the newer bind-to-process-mocks approach that is now used in the rest of the tool tests.
- Fixes some tests that were only checking for `ToolExit` to also check the error output, in order to ensure that failure tests are not accidentally passing for the wrong reason (as is being done in general as tests in the tooling are updated).

Fixes https://github.com/flutter/flutter/issues/93790