Did you know ... Search Documentation:
Title for pldoc(default)
Branch: stable (switch to development),
version to version

SWI-Prolog Changelog from version 7.4.0-rc2 to 7.4.1

[Mar 2 2017]

  • FIXED: Issue#207: _xos_fopen(): wrong overflow check (cannot harm Prolog code).
  • FIXED: Issue#206: additional ; after if () (mostly harmless)
  • FIXED: pack_search/1: provide message if search gives no result. By Nicos Angelopoulos.

[Feb 28 2017]

  • FIXED: Handle thread-creation exceptions.

[Feb 27 2017]

  • FIXED: Possible double cleanup of a detached thread through normal destruction and atom-gc of the thread reference. For detached threads we now keep the handle locked until the thread dies.

[Feb 26 2017]

  • FIXED: Avoid deadlock when terminating Prolog if there are streams blocked by filter streams.
  • ADDED: PL_release_stream_noeror(), needed to fix ws_property/2 in the websocket library.
  • DOC: wait_for_input/3 is det.
  • DOC: is_set/1 is semidet.

[Feb 25 2017]

  • FIXED: Possibility of dereferencing a NULL pointer

[Feb 19 2017]

  • FIXED: Avoid warning compiling set_breakpoint/5 in optimized mode.
  • TEST: setting protect_static_code during the test suite makes many tests fail. This test adds declaration to fix most issues and moves test that cannot work with this flag to a new test directory unprotected, which is executed first.

[Feb 17 2017]

  • FIXED: library(record) if protect_static_code is enabled. Raised by Paulo Moura.
  • FIXED: dynamic/1: raise a permission_error on an attempt to change a defined static predicate if protect_static_code is enabled.
  • ADDED: current_type/3 to get a supported interface for querying the types for library(error).

[Feb 13 2017]

  • FIXED: Included file registration if there are multiple levels of include.

Package http

[Feb 26 2017]

  • FIXED: library(http/hub): Deal with write errors on pending websockets and reuse of their identifier.
  • FIXED: ws_property/2 and ws_set/2: do not trigger I/O errors.

[Feb 18 2017]

  • ENHANCED: http_peer/2 to support Fastly CDN and nginx

Package libedit

[Feb 21 2017]

  • ENHANCED: Detect background writes and refresh the input when reading is continued. Ultimately we could do this automatically after background write silences for a specified time by sending the main thread a SIGWINCH. The downsite is that we do not know when background output is finished. Ideally we should probably remove the current reading status from the terminal, perform the backgound write and restore it. I doubt libedit can do that easily.

[Feb 13 2017]

  • FIXED: libedit (editline) behaviour on SIGWINCH (window resize). Just calling el_resize() doesn't do the job as it redisplays the prompt. In addition we now emit \r and REFRESH. Not very elegant, but it seems to work a lot better. Bug left: duplicates input line if it is wrapped.

Package ssl

[Feb 28 2017]

  • FIXED: AuthnRequestsSigned is an attribute of SPSSODescriptor, not of EntityDescriptor