README.md

fs2

Extended utilities for working with files and filesystems in Rust. fs2 requires Rust stable 1.8 or greater.

Documentation

Linux Status Windows Status

Features

  • [x] file descriptor duplication.
  • [x] file locks.
  • [x] file (pre)allocation.
  • [x] file allocation information.
  • [x] filesystem space usage information.

Platforms

fs2 should work on any platform supported by libc.

fs2 is continuously tested on: * x86_64-unknown-linux-gnu (Linux) * i686-unknown-linux-gnu * x86_64-apple-darwin (OSX) * i686-apple-darwin * x86_64-pc-windows-msvc (Windows) * i686-pc-windows-msvc * x86_64-pc-windows-gnu * i686-pc-windows-gnu

Benchmarks

Simple benchmarks are provided for the methods provided. Many of these benchmarks use files in a temporary directory. On many modern Linux distros the default temporary directory, /tmp, is mounted on a tempfs filesystem, which will have different performance characteristics than a disk-backed filesystem. The temporary directory is configurable at runtime through the environment (see env::temp_dir).

License

fs2 is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE, LICENSE-MIT for details.

Copyright (c) 2015 Dan Burkert.