class Sprockets::Base

def file_digest(path)

Returns a String digest or nil.

path - String filename or directory path.

Internal: Compute digest for path.
def file_digest(path)
  if stat = self.stat(path)
    # Caveat: Digests are cached by the path's current mtime. Its possible
    # for a files contents to have changed and its mtime to have been
    # negligently reset thus appearing as if the file hasn't changed on
    # disk. Also, the mtime is only read to the nearest second. Its
    # also possible the file was updated more than once in a given second.
    cache.fetch("file_digest:#{path}:#{stat.mtime.to_i}") do
      self.stat_digest(path, stat)
    end
  end
end