Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Be consistent using local deps #184

Closed
creationix opened this issue May 6, 2016 · 6 comments · Fixed by #188
Closed

Be consistent using local deps #184

creationix opened this issue May 6, 2016 · 6 comments · Fixed by #188

Comments

@creationix
Copy link
Member

As discovered in another issue luvit/luvit#892 (comment), lit doesn't include local deps always on certain platforms.

@squeek502
Copy link
Member

squeek502 commented May 7, 2016

Note that this doesn't seem to be easily reproducible. On a Debian virtual machine, it includes the local deps properly.

./lit make
lit version: 3.3.3
luvi version: v2.7.2
command: make
load config: /home/ryan/.litconfig
compiling filter: /home/ryan/Luvit/luvit/luvit/** excludes by default (first rule is positive)
skipping: bench
skipping: examples
including: init.lua
including: main.lua
including: package.lua
skipping: tests
including dependency: buffer (/home/ryan/Luvit/luvit/luvit/deps/buffer.lua)
including dependency: childprocess (/home/ryan/Luvit/luvit/luvit/deps/childprocess.lua)
including dependency: codec (/home/ryan/Luvit/luvit/luvit/deps/codec.lua)
...

@creationix
Copy link
Member Author

:/

@creationix
Copy link
Member Author

Strikes again https://travis-ci.org/luvit/luvit/jobs/139775128#L365-L385

I wish I could reproduce it more easily.

@squeek502
Copy link
Member

squeek502 commented Jun 24, 2016

Ok, found the issue, but not sure how to solve it. Turns out fs_scandir_next is getting UV_DIRENT_UNKNOWN as the type for every file on Travis's Linux build container, which then causes Lit to skip retrieving the metadata for all local deps because baseName ends up being nil.

I added a bunch of debug printing to test it. Here's the relevant portions:

On Linux:

checking /home/travis/build/squeek502/luvit/deps
- iterating buffer.lua
 - type nil
 - name buffer.lua

On OSX:

checking /Users/travis/build/squeek502/luvit/deps
- iterating buffer.lua
 - type file
 - name buffer.lua

@squeek502
Copy link
Member

Found a relevant comment in the luv tests:

https://github.com/luvit/luv/blob/master/tests/test-fs.lua#L77-L78

-- ftype is not available in all filesystems; for example it's
-- provided for HFS+ (OSX), NTFS (Windows) but not for ext4 (Linux).

@creationix
Copy link
Member Author

Published as 3.4.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants