Symlinks are supported (but hard links are not). However, there are a few cases where they might not work:
1) Your symlink goes outside of the .tup hierarchy (eg: I have /home/user/project/.tup and symlink to a file in /home/user). In this case, the file in /home/user isn't checked by tup unless you are setting updater.full_deps 2) (On OSX, and Linux if your kernel doesn't support user namespaces) - your symlink uses a full path to point back into the tup hierarchy. Eg: 'ln -s /home/user/project/foo.txt bar.txt' instead of 'ln -s foo.txt bar.txt'. In this case, the symlink escapes out of the FUSE filesystem, so the dependency is missed. The ^c flag forces tup to use a chroot so this case works, but it makes the performance impact of FUSE much worse. This may go away in the future in OSX if we revert to a shared library shim instead of FUSE. Does your use-case fall into one of those two categories? I'm not very familiar with npm. Ideally we'd use updater.full_deps=1 by default, and have a better dependency checking mechanism that didn't have the performance impact and other peculiarities of FUSE, so these cases would work out of the box. Obviously we're not there yet though. -Mike On Wed, Apr 27, 2016 at 3:31 AM, Cheng Lou <[email protected]> wrote: > First of all, to confirm my assumptions: Tup doesn't track changes across > with symlinks right? E.g. if mySource is symlinked into the current project, > its changes won't be picked up? > > I have project A, B, both depending on C. When I'm developing C, I'd like to > see its changes reflected in both A and B. Realistically I'm working with > npm (node.js) here, so the workflow looks like: > > - `npm link` inside C to establish that C can now be linked by other > projects. > - `npm link C` inside A to link C inside A. > - `npm link C` inside B, same. > > If there's an alternative solution to this, that'd be great. But I can't > seem to find a non-hacky one. > > -- > -- > tup-users mailing list > email: [email protected] > unsubscribe: [email protected] > options: http://groups.google.com/group/tup-users?hl=en > --- > You received this message because you are subscribed to the Google Groups > "tup-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. -- -- tup-users mailing list email: [email protected] unsubscribe: [email protected] options: http://groups.google.com/group/tup-users?hl=en --- You received this message because you are subscribed to the Google Groups "tup-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
