lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

A library binding various POSIX APIs. POSIX is the IEEE Portable Operating System Interface standard. luaposix is based on lposix.

I am happy to announce release 34.0.2 of luaposix. In addition to the some small bug fixes, this release is somewhat smaller now that it optionally uses for consistent argument type errors in Lua functions instead of its own version of the same, and relies on for easier portability of Lua code.

If you have moved to the new low-level APIs, and don't rely on the Lua backwards compatibility layer and convenience functions, you can safely omit those dependencies and use the C layer only.

luaposix's home page is at, with documentation at

## Noteworthy changes in release 34.0.2 (2018-02-17) [stable]

### Incompatible Changes

  - `require 'posix'` (or any of its submodules) always returns a
    populated module table, but no longer sets `_G.posix` or any other
    global symbol on Lua 5.1 (including LuaJIT).  If you were relying
    on this behaviour, please change your require statements to an

    local posix = require 'posix'

### Bugs Fixed

  - `posix.sys.wait.wait` returns `<childpid>, "running"` when the
child has not exited yet, and `wait` was called with `WNOHANG` set.

  - specs don't fail on valid -1 return values from `posix.sysconf`.

  - loading posix (or any of its submodules) no longer leaks symbols
    into the global namespace on Lua 5.1 (including LuaJIT).

Install it with LuaRocks, using:

    luarocks install luaposix 34.0.2