--- rpl/ChangeLog 2010/07/13 17:37:07 1.34 +++ rpl/ChangeLog 2011/04/17 14:01:22 1.63.2.3 @@ -1,3 +1,106 @@ +* Thu Apr 14 2011 BERTRAND Joël rpl-4.0.23 (RPL/2) +- major bug is fixed in READ intrinsic (socket). This bug was introduced +by a new feature in glibc. +* Thu Apr 14 2011 BERTRAND Joël rpl-4.0.22 (RPL/2) +- by default, RPL/2 uses "NONE" IMPLICIT when it's started in batch mode and +"ALL" IMPLICIT when it runs in interactive mode; +- when "NONE" IMPLICIT is set, STO intrinsic raises an error when it is used +to create or modify a global variable. Now, with "NONE" IMPLICIT, you have +to use SAVE to manipulate global variables; +- replace erroneous TAB by TBL in evaluation() and formateur_fichier() +subroutines; +- fix major memory access violation in evaluation subroutine. Only occurs +when 'X(i,j)' is evaluated on a matrix and when (i,j) points out of bounds; +- fix major bug in evaluation subroutine. 'X(i)' returns execution error +when X was a vector or a table. +* Sun Apr 04 2011 BERTRAND Joël rpl-4.0.21 (RPL/2) +- Gnuplot is upgraded; +- flag 34 is now used to enable or disable control character evaluation; +- major bug is fixed in P->R intrinsic function when argument type is +complex and degree mode is set; +- L->T and T->L are added; +- OLD filetype is fixed; +- FLOW socket support is added; +- FLOW sequential files are added; +- new escape sequence is added to handle flow files (\x + hexadecimal code). +Known escape sequences are \", \b, \n, \t, \x?? and \\. +* Sun Mar 06 2011 BERTRAND Joël rpl-4.0.20 (RPL/2) +- Ncurses is upgraded to 5.8; +- ALARM is fixed by filling isdst field; +- catch ECONNRESET in write intrinsic to return an execution error instead of +system one; +- fix a typo in HELP intrinsic; +- Openssl is upgraded to 1.0.0d, sqlite to 3.7.5 and readline to 6.2; +- Lapack is upgraded to 3.3.0; +- libmtmalloc is now default Solaris allocator; +- ncurses is upgraded; +- regression introduced by 4.0.19 is fixed in signal management. +Interruption1() could be called from itself and raises bus error (on sparc) or +segmentation fault; +- sqlite is upgraded to 3.7.4; +- OpenSSL is upgraded to 1.0.0c; +- syntax error is correctly checked ( (2+,0) does not crash RPL/2 anymore); +- characters are tested in recherche_type() to avoid names like '12+'; +- gnuplot is upgraded to 4.4.2 due to major bugs. +* Thu Sep 23 2010 BERTRAND Joël rpl-4.0.19 (RPL/2) +- due to a very strange bug I've only seen on Solaris, ptmalloc3 is removed. +Solaris libresolv randomly uses ptmalloc3 and system allocator and makes heap +corruption. As internal memory management have been improved, a best fit +allocator like ptmalloc3 is not required anymore; +- gnuplot is upgraded to 4.4.1; +- deadlock is fixed in signal handlers: same mutex was used in standard +subroutines (without protected sections by sigprocmask() or pthread_sigmask()) +and signal handlers. A new signal handler specific mutex is added; +- minor bug is fixed in evaluation() subroutine. In { X 0 PI }, PI is a function +that has to be evaluated by ->NUM; +- rplfile build process is modify to be sure that rplfile is not modified +after rpl build stage (to be sure that rplfile checksum is not modified after +rpl compilation); +- AWK is replaced by rplawk. rplawk is original awk written by Brian Kernighan, +modified to remove yacc code and renamed; +- some workarounds have been written to not use buggy klibc SystemV IPCS. +ABORT now works on eComStation; +- sqlite is upgraded to 3.7.2; +- bug is fixed in software interrupts. When both process have different PID, +parent process was not interrupted if it is not group master process. To fix +this bug, SIGINJECT signal is not sent by child process but by control thread +in parent process; +- minor bug is fixed in data injection (POKE) that does not work as expected +when child process is protected by NRPROC. +* Thu Aug 26 2010 BERTRAND Joël rpl-4.0.18 (RPL/2) +- --enable-sysv-sems is added to configure script to use SystemV semaphores +functions instead of POSIX functions. This function is disabled or forced on +systems that does not provide correct POSIX or SysV semaphores subsystem; +- a dirty but not quick patch is written to workaround broken siginfo +structures. This patch has been successfully tested. It uses a segment of +shared memory (Posix or SysV) and some semaphores (Posix or SysV) by process +(Unix PID); +- some OpenBSD's hacks are added; +- broken siginfo->si_pid field is now checked by configure script; +- SWI now sends SIGCONT to interrupted process to start interrupt without delay; +- random generator is cloned by SPAWN; +- in transliteration subroutine : '\r' is added after all '\n' in OS/2 port; +- getaddrinfo is hardcoded when host system does not provide getaddrinfo +or freeaddrinfo; +- RPL/2 can now use SystemV semaphores when POSIX semaphores are unavailable; +- major bug is fixed in CHR intrinsic when obtained character is not printable; +- Lapack is upgraded to 3.2.2; +- OS/2 (eComStation 2.0 with EMX 0.9d) support is added; +- TOKENIZE is now able to convert escape sequences; +- ATPOKE and CLRATPOKE new intrinsics are added; +- --enable-full-static configure flag is added. With this flag, mysql and +postgresql libraries are statically linked in rpl executable; +- units Makefile is modified to avoid readline and ncurses usages; +- sqlite is upgraded to 3.7.0.1; +- units is upgraded to 1.88; +- another major bug is fixed in the same variable creation subroutine. +Level 0 and 1 variables adresses were swapped when a global variable masked +a name of RPL/2 routine; +- major bug is fixed in global variable creation subroutine. When a global +variable was created and when a local variable existed with the same name, +computed address of global variable was wrong; +- src/Makefile.am is modified to avoid a bug on several systems. libptmalloc3 +is forced in front of all libraries. * Tue Jul 13 2010 BERTRAND Joël rpl-4.0.17 (RPL/2) - BACKTRACE intrinsic is added; - major bug is fixed in SELECT/DEFAULT/END conditional structure. Only occurs