John McDole 7d0f4d9ae8
[CP][Stable] Check for tracked engine.version before overriding (#163741)
### Issue Link:

#163308
#163691
and in some cases #162251

### Changelog Description:

Flutter tool respects tracked `engine.version`

### Impact Description:

Non `master`, `stable`, and `beta` branches will respect tracked versions of `engine.version` and not download incorrect engine artifacts.

### Workaround:

Deleting `engine/src/.gn` will trick the tools into thinking this is a non-monorepo.

### Risk:
What is the risk level of this cherry-pick?

### Test Coverage:
Are you confident that your fix is well-tested by automated tests?

### Validation Steps:

1. Switch to the branch / tag this is checked out to (i.e. `3.29.0`)
2. Examine `bin/internal/engine.version`
2. Run `flutter doctor`
3. See that it downloads the correct hash and `engine.version` hasn't been modified.
2025-02-20 22:06:55 +00:00
..
2024-12-18 20:18:06 +00:00

Flutter SDK dependency versions

The files in this directory specifies pinned versions of various dependencies of the flutter SDK.

The bin/internal/engine.version file controls where to find compiled artifacts of the engine. These artifacts are compiled in the Merge Queue for every commit in the flutter repository.

The bin/internal/flutter_packages.version file specifies the version of the flutter/packages repository to be used for testing. The flutter/packages repository isn't an upstream dependency of flutter/flutter; it is only used as part of the test suite for verification, and the pinned version here makes sure that tests are deterministic at each flutter/flutter commit.