1,0
See the changelog for the full changelog.
1,0
During the development of this release the project was migrated from bzr on launchpad to git on GitHub.
Also as of 1,0 a new versioning scheme is used, see the README.
New features and improvements:
- Added alternative IP list implementation, that stores pointers to the IPs
instead. Useful for very large number (thousands) of IPs. This is now the
default since the performance drop with a small number of threads is tiny
compared to the increase for a large number of threads. - Cache env vars and other constant (per execution) data in y.
- Changed stack stack code to not realloc once for each call of { and }.
- Improved speed for non-cardinal warp.
- Made cfunge work with the PathScale EKOPath compiler.
- Add Zsh argument completion.
- Automated running of tests with ctest, including mycology.
Changed features:
- Dropped support for Boehm-GC. It was not well tested and manual memory
management worked better. - Removed scaling of coordinates from TURT.
- Dropped inline asm since intrinsics work well on modern GCC and ICC.
- Improved fuzz testing script, and support for AFL fuzz testing.
- Show more of the stack while tracing.
Major bug fixes:
- Fixed bugs in run_sys_info in stack_get_index that together caused
incorrect behaviour for y picking of top of stack and for last 0 below
env vars. - Removed counts from hash tables if they reach zero. Needed for large model
funge-space bounds shrinking logic to be correct. - Fixed bug in STRN G that resulted in an extra \0 being pushed.
- Fixed STRN G, it incorrectly subtracted 1 from string length when
calling stack_push_string(). - Fixed several STRN functions truncating strings to unsigned chars.
- Fixed bug in FILE causing a read of uninitialized memory when O (fopen) was
called with an invalid mode. - Fix issue where using y for picking from stack would count from the wrong
end of the stack. - Fix error handling of t (split).
- Fix s wrapping and add test for it.
- Fix (NCRS) for reentrant ncurses (thanks to Thomas Jollans @tjol)
Minor bug fixes:
- Fixed possible problem in FRTH for very large stack sizes (outside range
of funge cells, but inside range of size_t). - Various small fixes for clang and ICC.
- Various build system fixes.
- Handle zero bytes properly in stdin. Note that STRN still retains the old
behaviour and arguably should do so. - Fixed various bugs (including memory leaks) when out of memory.
- Fixed bug in text mode file output for lines with a single (non-space)
char on them. - Add missing NULL pointer checks in code for i, o and = as well as in several
fingerprints. - Fix several memory leaks on malloc failure (out of memory).
- Fix pointer to out of scope buffer discovered with Coverity Scan.
- Fix crash on integer division of -2^63 / -1
- Fix some allocation size overflows in stack code.
Added fingerprints:
- BOOL Logic Functions