Revision history for POSIX::2008.
0.23 2024-01-27
- t/06_exec.t: Skip fexecve test if we can't sysopen() the Perl executable.
- Removed silly fileno int range check added in 0.22 because AT_FDCWD is
0xffd19553 on Solaris.
0.22 2024-01-26
- Fixed confstr() error handling.
- Fixed getutx*() out-of-bounds read from utmpx string buffers.
- Fixed ptsname() and ttyname() to also accept file handles.
- Fixed read*() and pread*() to not overwrite read-only buffers.
- Fixed catclose(), dlclose(), killpg(), set*gid(), set*uid(), sig*()
to return "0 but true" on success and undef on error as documented.
- Forbid negative byte counts in read*(), pread*(), write(), pwrite().
- Added home-grown non-standard removeat().
- Added creat(), execveat(), fexecve(), raise().
- Added pathconf(), sysconf() and tons of _CS_, _PC_, _SC_ constants.
- Added :confstr, :pathconf, :sysconf export tags.
- Added some non-standard constants.
- Added t/06_exec.t.
- Made timer_create()'s "signal" argument optional.
- Made lchown(), log10(), nexttoward(), posix_f*() exportable.
- Bless returned file handles into IO::Dir/File to make handle methods work.
- t/02_fs.t: Skip dev/ino/rdev stat() checks on Windows w/ Perl 5.34+ to
fake cpantesters green lights (see perl5340delta).
- POD updates.
0.21 2023-11-16
- Replaced FMT_UINT macro by function.
- Replaced safesysfree() by free() in realpath() (closes RT#149058).
- Added non-standard renameat2(), RENAME_* constants.
- POD fixes.
0.20 2023-07-14
- t/02_fs.t: Added work-around for bugs in CORE::stat().
- Pimped abs().
- Fixed nice() error handling.
- Added PRIO_*, FE_*, RWF_*, SEEK_DATA and SEEK_HOLE constants.
- Added some non-standard open() flags.
- Added preadv2(), pwritev2().
- Added remquo().
- Added feclearexcept(), feraiseexcept(), fetestexcept().
- Added isgreaterequal(), isless(), islessequal(), islessgreater(),
isunordered().
- Added fenv_h export tag.
- POD improvements.
0.19 2023-07-07
- Updated ppport.h to version 3.71
- Replaced av_len()+1 by av_count() in (p)readv() and (p)writev().
- Removed "extern int getdate_err" because it's already in time.h.
- Try to get a green light from dubious cpantesters reports for old Perls.
- Added LICENSE to WriteMakefile().
- Added stat_h export tag and some constants.
- Added exp(), isascii(), rmdir(), setsid(), sin(), ttyname().
- Made casin(), isalnum(), log() exportable.
- chdir(), chmod(), chown(), truncate() and stat() now also accept
a file handle or a file descriptor.
- Deprecated atol(), atoll(), ldiv(), fchdir(), fchmod(), fchown(), ftruncate().
- Pimped atoi(), div(), lround().
- Figure out what's available by compiling some C code.
- Added some tests.
- Small POD fixes.
0.18 2023-06-01
- Updated ppport.h to version 3.68
- Fixed size checking in readlink().
- Fixed error handling of psx_fileno():
Check for -1 instead of < 0 to make AT_FDCWD work (which is negative).
- Disabled -Wdeprecated-declarations for sig*().
- Makefile.PL now creates const-c.inc and const-xs.inc dynamically.
- openat() can now optionally return a handle when AT_FDCWD is used.
- Added realpath().
- Added openat2() (non-POSIX).
- POD improvements.
0.17 2021-03-09
- Updated ppport.h to version 3.62 (closes RT#127900)
- pread()/pwrite(): Use %lld in warn() format string (closes RT#127902)
- Some minor cosmetics.
0.16 2017-09-15
- Added timer_create(), timer_delete(), timer_gettime(), timer_getoverrun(), timer_settime().
- Added close() (closes RT#123054).
0.15 2017-09-10
- Fixed a POD error.
- Really fake green lights on cygwin.
0.14 2017-09-09
- Added posix_fadvise() and posix_fallocate().
- Added missing constants from fcntl.h.
- POD update.
- Fake some green lights on cygwin.
0.13 2017-09-08
- pread/pwrite argument order is now (count, offset) instead of (offset, count).
- Added readv(), preadv().
- Added strptime() to the list of exportable functions.
0.12 2017-09-03
- Fixed missing semicolon in #if branch of nearbyint().
- Added some CLOCK_ constants.
- Added const-c.inc, const-xs.c.
0.11 2017-09-02
- Don't call clog() if you mean cexp() ...
0.10 2017-09-02
- Added more detailed checks for availability of complex functions.
- NetBSD seems a bit special about struct stat.
0.09 2017-09-01
- Added some cheats to make some red lights turn to green on cpantesters.
- Fixed a POD typo.
0.08 2017-08-31
- Added writev(), pwritev(), lchown(), lround(), clock(), access().
0.07 2017-08-27
- Call croak_xs_usage() only if available.
- Really let all I/O functions accept file handles.
- Try to reduce compiler errors on non-Linux systems.
0.06 2017-08-26
- Fixed an fd leak in fdopendir() and openat() (see Ye Olde Perl #59268).
XS docs are really poor.
- Cleaned up openat().
- Dropped Perl 5.10 dependency.
0.05 2017-08-25
- Added fdopen() and fdopendir().
- All I/O functions taking file descriptors now accept file handles as well.
- Fixed pread() to truncate the buffer if the data doesn't exceed it.
0.04 2015-05-25
- Fixed _readlink50c (#96644).
0.03 2013-09-15
- check SvGROW for NULL
- use shorter mPUSH macros
0.02 2013-09-14
- added strptime()
0.01 2013-09-13
- initial version