|
Bugzilla – Full Text Bug Listing |
| Summary: | Bake fails to find dependencies | ||
|---|---|---|---|
| Product: | bake | Reporter: | Tommaso Pecorella <tommaso.pecorella> |
| Component: | bake | Assignee: | Daniel Camara <daniel.camara> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | ns-bugs, tomh |
| Priority: | P3 | ||
| Version: | unspecified | ||
| Hardware: | Mac Intel | ||
| OS: | Mac OS | ||
| Attachments: |
patch to try
New patch |
||
|
Description
Tommaso Pecorella
2018-08-22 07:59:14 UTC
Created attachment 3163 [details]
patch to try
patch is untested; a guess at what is needed for homebrew. (In reply to Tom Henderson from comment #2) > patch is untested; a guess at what is needed for homebrew. Tested. Doesn't work. It's like if it doesn't recurse through the subdirectories. Created attachment 3164 [details]
New patch
I searched what the problem was, and I found out that MacOS (and brew) are symlinks lovers.
The [ugly and slow] solution is to follow the symlinks.
Note that activating the symlinks following makes the check way slower. Alas, it's the right thing to do.
The only downside is that following the symlinks is potentially dangerous. Citing the manual:
By default, walk() will not walk down into symbolic links that resolve to directories. Set followlinks to True to visit directories pointed to by symlinks, on systems that support them.
Note: Be aware that setting followlinks to True can lead to infinite recursion if a link points to a parent directory of itself. walk() does not keep track of the directories it visited already.
Sorry, in the patch there's a lot of space-related changes. My editor automatically "cleans" the code. Blame Atom... I found it to be 2-3 times slower than before, so I configured it to only walk symlinks for MacOS. Pushed in changeset 411:a9bc3124a563 |