fsnix - Modern File System APIs & Such

This library is designed to expose various file and file system related APIs for modern POSIX compatible systems to Python. This includes functions that wrap openat and other *at type calls (from POSIX.1-2008) that are not available for Python 2.x. In addition it provides a stdlib compatible listdir call which can also be used to return d_type values from a directory entry on file systems that support that feature.

This package provides three importable modules:

  • fsnix.fslib: is a compiled module that provides the "full" low-level suite of file system and other sundry calls.
  • fsnix.fswlib: is a ctypes wrapper that tracks fslib where possible and potentially can be used where you can not use a C compiler. This is a cleaned up version of my original attempt at providing suite of *at calls to Python 2.
  • fslib.util: provides some convenient, higher-level, more pythonic interfaces that build upon either fslib or fswlib and standard library modules.

API Stability

I consider API stability an important part of any library. This becomes more and more important as a new library matures is used by more people. The fsnix.fslib module is the core of the library and maintained with the intent of keeping backwards compatibility in mind, however until 1.0 I do not plan on being backwards compatible where I think I've made a design mistake. The fsnix.fswlib module should follow that as it shadows the functionality of fslib but using ctypes. The API of the fslib.util module is still immature and can fluctuate between versions.

  • Current Version: 0.4
  • License: MIT License