* Reword flutter run help screen.
* As per Hixie request, added Efthymios Sarmpanis to the AUTHORS file
* fix test
Co-authored-by: Efthymis Sarmpanis <e.sarbanis@gmail.com>
* Update project.pbxproj files to say Flutter rather than Chromium
Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.
* Update the copyright notice checker to require a standard notice on all files
* Update copyrights on Dart files. (This was a mechanical commit.)
* Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.
Some were already marked "The Flutter Authors", not clear why. Their
dates have been normalized. Some were missing the blank line after the
license. Some were randomly different in trivial ways for no apparent
reason (e.g. missing the trailing period).
* Clean up the copyrights in non-Dart files. (Manual edits.)
Also, make sure templates don't have copyrights.
* Fix some more ORGANIZATIONNAMEs
Empirical measurements indicate on the network file system we use
internally, using `FileStat.stat` on thousands of files is much
faster than using `FileStat.statSync`. (It can be slower for files
on a local SSD, however.)
Add a flag to `ProjectFileInvalidator.findInvalidated` to let it
use `FileStat.stat` instead of `FileStat.statSync` when scanning for
modified files. This can be enabled by overriding `HotRunnerConfig`.
I considered creating a separate, asynchronous version of
`findInvalidated`, but that led to more code duplication than I
liked, and it would be harder to avoid drift between the versions.
...because otherwise, processes that think they're manipulating your
filesystem will be doing crazy things the test is ignoring, leading to
(at best) failures and (at worst) flakes or disk corruption.
Restructure ProjectFileInvalidator.findInvalidated a bit
I plan to modify `ProjectFileInvalidator.findInvalidated` to allow
it to use `FileStat.stat` instead of `FileStat.statSync`.
Restructure `findInvalidated` a bit so that `FileStat.statSync` is
called in only one place.
Note that this change now always counts the `.packages` file as one
of the files scanned, even if it does not exist. I think that this
is okay since it more accurately reflects the number of times that we
hit the filesystem with `stat()`, and it is consistent with how other
files are counted.
In preparation for some refactoring that I will be doing to
`ProjectFileInvalidator.findInvalidated`, make its code a bit
clearer:
* Indicate which arguments may be null.
* Don't bother calling `FileStat.statSync` on the `.packages` file
for the initial load. This makes the checks for the `.packages`
file consistent with those for other files.
* Use `DateTime.isAfter()` instead of comparing microseconds
ourselves.
While I was touching this file, I also removed some unnecessary
comparisons to `false`. (`_ManifestAssetBundle.wasBuiltOnce()` is the
only implementation I can find of `AssetBundle.wasBuiltOnce()`, and
it never returns `null`.)