packages
packages copied to clipboard
[git] Ignore .uuid files that have started popping up.
Ignores junk (?) .uuid files that seem to have started popping up in my working copy (generated by gradle?):
dit@dit:~/github/packages$ git status
On branch main
Your branch is up to date with 'flutter/main'.
Untracked files:
(use "git add <file>..." to include in what will be committed)
packages/adaptive_scaffold/example/android/.uuid
packages/adaptive_scaffold/example/android/gradle/.uuid
packages/adaptive_scaffold/example/android/gradle/wrapper/.uuid
packages/animations/example/android/.uuid
packages/animations/example/android/gradle/.uuid
packages/animations/example/android/gradle/wrapper/.uuid
packages/dynamic_layouts/example/android/.uuid
packages/dynamic_layouts/example/android/gradle/.uuid
packages/dynamic_layouts/example/android/gradle/wrapper/.uuid
packages/flutter_markdown/example/android/.uuid
packages/flutter_markdown/example/android/gradle/.uuid
packages/flutter_markdown/example/android/gradle/wrapper/.uuid
packages/go_router/example/android/.uuid
packages/go_router/example/android/gradle/.uuid
packages/go_router/example/android/gradle/wrapper/.uuid
packages/palette_generator/example/android/.uuid
packages/palette_generator/example/android/gradle/.uuid
packages/palette_generator/example/android/gradle/wrapper/.uuid
packages/rfw/example/hello/android/.uuid
packages/rfw/example/hello/android/gradle/.uuid
packages/rfw/example/hello/android/gradle/wrapper/.uuid
packages/rfw/example/local/android/.uuid
packages/rfw/example/local/android/gradle/.uuid
packages/rfw/example/local/android/gradle/wrapper/.uuid
packages/rfw/example/remote/android/.uuid
packages/rfw/example/remote/android/gradle/.uuid
packages/rfw/example/remote/android/gradle/wrapper/.uuid
nothing added to commit but untracked files present (use "git add" to track)
(No issue found about this, but it's bothering me a little bit)
Pre-launch Checklist
- [x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
- [x] I read the Tree Hygiene wiki page, which explains my responsibilities.
- [x] I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/packages repo does use
dart format.) - [x] I signed the CLA.
- [x] The title of the PR starts with the name of the package surrounded by square brackets, e.g.
[shared_preferences] - [ ] I listed at least one issue that this PR fixes in the description above.
- [ ] I updated
pubspec.yamlwith an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes. - [ ] I updated
CHANGELOG.mdto add a description of the change, following repository CHANGELOG style. - [x] I updated/added relevant documentation (doc comments with
///). - [ ] I added new tests to check the change I am making, or this PR is test-exempt.
- [x] All existing and new tests are passing.
If you need help, consider asking for advice on the #hackers-new channel on Discord.
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!).
If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?
Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.
@GaryQian Any idea what these are? If it is gradle, we should probably be adding them to the template's ignore list too.
I haven't seen these before and I dont think they are from Gradle. A quick Google search seems to indicate font-related things sometimes generate .uuid files, but usually not so many
@GaryQian @stuartmorgan this is exactly what I'm seeing:
dit@box:packages/animations/example$ git status
On branch main
nothing to commit, working tree clean
dit@box:packages/animations/example$ flutter build apk
Running "flutter pub get" in example... 1,153ms
💪 Building with sound null safety 💪
Calling mockable JAR artifact transform to create file: /usr/local/.../0b6088bfe77c50a75de8dff0b5129d0a/android.jar with input /usr/local/.../android-31/android.jar
Removed unused resources: Binary resource data reduced from 47KB to 38KB: Removed 19%
Running Gradle task 'assembleRelease'... 68.6s
✓ Built build/app/outputs/flutter-apk/app-release.apk (18.6MB).
dit@box:packages/animations/example$ git status
On branch main
Untracked files:
(use "git add <file>..." to include in what will be committed)
android/.uuid
android/gradle/.uuid
android/gradle/wrapper/.uuid
nothing added to commit but untracked files present (use "git add" to track)
The problem was especially worse on my machine, after running some of the CI scripts locally (things that built many examples) ((not sure where those .uuid come from though))
@stuartmorgan I don't mind this too much, as I said, it only becomes cumbersome when doing batch operations in the repo (which I guess is a CI problem, not a local dev problem 😛) ((PS: you must have seen them in some of your latest PRs though!))
Nope, I have literally zero of these files anywhere on my machine. 🤷🏻
(Just to be sure I tried your STR from above exactly; no .uuid files.)
LGTM I guess; I would prefer to actually know what's creating them and why we're not all seeing them, but it seems like a very low-risk ignore.
Very weird! I thought other people were seeing this! @stuartmorgan I used auditctl and ausearch -f "$(pwd)/android/.uuid" and found the entry where the file seems to be created:
time->Fri Oct 28 15:07:34 2022
type=PROCTITLE msg=audit(1666994854.821:5576): proctitle=2F7573722F6C6F63616C2F676F6F676C652F686F6D652F6469742F6769746875622F666C75747465722F62696E2F63616368652F646172742D73646B2F62696E2F64617274002D2D64697361626C652D646172742D646576002D2D7061636B616765733D2F7573722F6C6F63616C2F676F6F676C652F686F6D652F6469742F67
type=PATH msg=audit(1666994854.821:5576): item=1 name="/usr/local/google/home/dit/github/packages/packages/animations/example/android/.uuid" inode=525088 dev=fe:01 mode=0100644 ouid=697382 ogid=89939 rdev=00:00 nametype=CREATE cap_fp=0 cap_fi=0 cap_fe=0 cap_fver=0 cap_frootid=0
type=PATH msg=audit(1666994854.821:5576): item=0 name="/usr/local/google/home/dit/github/packages/packages/animations/example/android/" inode=526139 dev=fe:01 mode=040750 ouid=697382 ogid=89939 rdev=00:00 nametype=PARENT cap_fp=0 cap_fi=0 cap_fe=0 cap_fver=0 cap_frootid=0
type=CWD msg=audit(1666994854.821:5576): cwd="/usr/local/google/home/dit/github/packages/packages/animations/example"
type=SYSCALL msg=audit(1666994854.821:5576): arch=c000003e syscall=257 success=yes exit=9 a0=ffffff9c a1=7fabf5bc7d10 a2=80242 a3=1b6 items=2 ppid=46877 pid=202073 auid=697382 uid=697382 gid=89939 euid=697382 suid=697382 fsuid=697382 egid=89939 sgid=89939 fsgid=89939 tty=pts2 ses=4 comm="DartWorker" exe="/usr/local/google/home/dit/github/flutter/bin/cache/dart-sdk/bin/dart" subj==unconfined key=(null)
The proctitle bytes decode to:
/usr/local/google/home/dit/github/flutter/bin/cache/dart-sdk/bin/dart--disable-dart-dev--packages=/usr/local/google/home/dit/g
Which is most likely this, but at that point I don' t know how to dive deeper into which. #SadTrombone. (maybe if I could log all the PIDs <-> commands, I could correlate it with the PID in the log?)
As @GaryQian mentioned, this seems to be related to fontconfig / fc-cache or some other tool from the family creating .uuid files and not cleaning them up afterwards.
I don't know why this happens on my machine and not others (maybe because I'm using the CRD graphical interface?)
Thanks for tracking it down that far!
We're definitely at the point of diminishing returns in terms of spending more time investigating, so let's just land this.