Dear SWI-Prolog user,
I’m happy to announce the release of SWI-Prolog 8.1.16. This version
comes with a couple of important patches and completion of the new
config file structure. Highlights:
- Fixed Error in standard order of terms related to
[]
, ISO
latin 1 and wide atoms. May result in wrong sort results for
lists that contain all three. - Possibly memory corruption due to freeing tables (tabling)
caused by a write-after-free bug. - Possibly memory corruption due to freeing temporary modules
as used by the Pengine implementation. - Avoid creating config directories if the parent directory is
not owned by the process. This notably avoids creating
directories owned by root if the system is executed under
sudo
.
MODIFIED: the system no longer considers a directory lib
below the
working directory as a library. See below.
Enjoy --- Jan
P.s. virustotal gives one false positive. We’ll see how Google is going to handle this.
SWI-Prolog Changelog since version 8.1.15
-
FIXED: Single threaded compilation
-
FIXED: When removing predicates from a temporary module we can
destroy the indexes early. This saves time and memory and avoids a
write-after-free bug. -
FIXED: Avoid writing to a freed allocation pool.
-
DOC: Issue#401: duplicate docs for guitracer/0. Also updated docs
for trace/2. -
ENHANCED: Removed sinh and cosh functions from ifprolog emulation as
these are built in. -
DOC: Issue#379: absolute_file_name/3 on directories.
-
FIXED: Issue#516: library(progman) string compatibility. Paulo
Moura. Also reenables installing this library on Windows. -
FIXED: Issue#92:
[]
was ordered between ISO-latin-1 and wide atoms,
which could lead to inconsistent ordering. Now, the ordering
is blobs @< reserved symbols @< text atoms -
FIXED: check_config_files/0: old location of packs is
~/lib/swipl/pack. Paulo Moura. -
CONFIG: check_installation/0: check for config files. Added
update_config_files/0 to move config files to their new location. -
ENHANCED: Avoid creating config files and directories below directories
not owned by the process -
ADDED: ‘$my_file’/1 to check that the user running the current process
owns a given file. -
MODIFIED: Stop handling
lib
below the current directory as
a library directory. Loading from local files should be
considered a security risk. You can keep using this by adding
user:file_search_path(library, lib).to your project or (if you insist) your personal init file
-
BUILD: Use
-f none
for manual build steps to avoid dependencies on
the personal init file. -
PPA: Added eoan to list of distributions
Package http
- ADDED: http_reply_dirindex/3 and directory_index/2: option
name(Callable) to hook the name cell creation.
Package pldoc
- FIXED: issue#470: get source links for unqualified predicates from
the system’s main sources. Falco Nogatz.
Package xpce
- ENHANCED: Prevent creating a config dir below a directory not owned
by the process.