Dear SWI-Prolog user,
SWI-Prolog 9.3.10 is ready for download. It is a rather quick release
that reverts the removed loading of files relative to CWD, restoring
the old behaviour as deprecated feature. It also fixes a couple of
serious bugs (affecting few users though). The (xpce) GUI has now
pretty extensive support for hi-res displays under X11 that should run
out-of-the-box on configurations that properly report the physical
layout using the Xrandr extension. Unfortunately that is not always
the case. Users can overrule the detected DPI in
~/.config/swi-prolog/xpce/Defaults
using a line (here telling the
display is 200DPI). The system uses some heuristics to see whether
the reported physical size makes sense and sets the dpi to 100
if
not.
display.dpi: 200
Enjoy --- Jan
SWI-Prolog Changelog since version 9.3.9
-
DEPRECATED: file search from a source file relative to CWD Searching
relative to CWD when loading a source file was supported up to
version 9.3.8. 9.3.9 disabled this, but the implications appear
too severe. This patch re-enables the old behaviour with a warning.
The Prolog flagsource_search_working_directory
can be set to
false
to disable searching the working directory. -
FIXED: possibly early GC of arguments for call_cleanup/2 Also affects
'$bags':cleanup_bag/2
. The early GC can happen if a signal arrives
when these predicates are being called and the signal handler calls GC. -
FIXED: use_module(M, [Pred as Alias]) for meta-predicates
Package clib
-
PORT: Added library(uuid) to WASM version
-
ADDED: is_uuid/1 to test that an atom is a valid UUID
Package http
-
FIXED: http_open/3 using keep-alive connections When multiple threads
are connecting to the same host, it may give the same connection to
multiple threads if a connection was already closed by the peer. -
FIXED: http_open/3 using Keep-alive This lead to errors if the number
of cached connections was exceeded (fixed). The library now defines
the cache parameters as settings, such that applications can change
them.
Package pengines
-
FIZED: pass SSL Options when destroying pengines
-
FIXED: pass SSL options (such as client certificate) to probe.
Needed to make pengines work in a 2-way SSL setup.
Package xpce
-
PORT: Be more critical on the reported physical dimensions of the
screen. -
SCALE: Scale stepper/combobox indicator for class
text_item
and related. -
SCALE: Properly scale caret in class
text
andtext_item
. -
SCALE: Several dimensions concerning widgets
-
SCALE: Make GUI tracer margin scale with bitmaps.
-
SCALE: Wrong default for
image.scale
Usingdisplay<-size
rather thandisplay<-dpi
-
ENHANCED: Use Xrandr extension to get DPI resolution of the display
This seems to provide more reliable results. -
SCALE: Specify default arrow dimensions in mm rather than px.
-
FIXED: Compute the GUI tracer stack layout based on the font.
-
FIXED: Compute thread-monitor dimensions based on the font
-
FIXED: Make sure
image<-size
of built-in images respect the scale -
FIXED: #34 Allow for @display?dpi if there is no display. This notably
allows for building xpce when there is no DISPLAY. -
MODIFIED: Default scale for fonts and images now depends on DPI This
implies that one should get a reasonable default if the X server
provides the right DPI value. If not, setting e.g.display.dpi: 200
in
Defaults
may be used. Subsequently, font.scale and/or image.scale
may be used to fine tune the sizes.