[#4710] nanosecond precision in utime using libc futimens #4795
timeval & ufiles only provide microsecond precision. Use timespec & futimens from libc to implement File.ufile, to provide nanosecond precision.
This PR is required jnr/jnr-posix#107 to be able to use the native function.
F = '/tmp/test' mtime = File.mtime(F) File.utime(Time.now, mtime, F) File.mtime(F) == mtime or raise "File.mtime should be == mtime"
@alexis779 I updated this to remove the conflicts but then realized your jnr-posix PR never got accepted. I asked about Windows support which will need to work or at least we will need to work around it not existing on that platform (although I did not check...they do have some of these methods on windows sometimes).