Version | Change log |
Logtalk 9.2.9.1 Apr 26, 2025 |
ADDED: Support attvars in trie_gen_compiled/2,3 This patch also fixes an issue in trie_gen_compiled/3 that caused unintended variable sharing between the key and value. FIXED: Allow building with installed .QLF files when the VM changes. A VM mismatch raised a fatal error during boot. This is now relaxed to a normal exception. ADDED: Partial support for attributed variables in tries. This first step deals with inserting and generating. Trie compilation is not yet supported (crashes on unexpected key in the trie). FIXED: swipl qlf app: report incompatible .qlf files BUILD: Provide additional .qlf dependencies. FIXED: swipl qlf app: dependency warnings and clean subcommand FIXED: trie_gen_compiled/3: crash if value is cyclic or contains attributes. INSTALL: Enable compiling .qlf files by default. ENHANCED: swipl qlf app - info: by default list all info - list: add -u (--update) to only list out-of-data .qlf files Produce machine format if output is not a terminal. ENHANCED: Add macro expansion dependencies to .qlf files. ADDED: swipl qlf info to accept multiple files. ENHANCED: source_file_property/2 performance Speedup source_file_property(File, load_context(...)). ENHANCED: Distinguish different file dependencies in .qlf files. ENHANCED: Record included files in .qlf files with path translation. FIXED: source_file_property/2 to work without sources. FIXED: qlf_make/0 for out-of-date computation for aggregate .qlf files. FIXED: Allow for discontiguous autoload/1 and autoload/2 directives. FIXED: dicts_to_compounds/4 if dicts have non-atom tags. DOC: Singleton section was outdated. After comment by Jan Burse. PORT: Deal with dropped support for partial literals in phrase/2,3 MODIFIED: ISO: phrase/2,3: do not allow for partial lists as terminal FIXED: WASM: Missing (chr) dependency caused build to fail. WASM: Added table for mapping HTML attribute names to DOM attributes. FIXED: prolog_load_context/2 for file to work correctly for .qlf. FIXED: Only emit hyperlinks if h |
Logtalk 3.91.0 Apr 8, 2025 |
Tools: FIXED: PowerShell script coding patterns that could trigger false positives when using some vendors security scanning tools. |
Logtalk 3.90.1 Mar 27, 2025 |
Tools: FIXED: PowerShell script coding patterns that could trigger false positives when using some vendors security scanning tools. |
Logtalk 9.2.9.1 Mar 12, 2025 |
WASM: Fixed abort handling. WASM: Fixed yieldable using Prolog.call() running in engine. ENHANCED: trap/1: stop trapping direct catch. Do not trap the debugger for catch(SytemPred, _, _). Such calls are very unlikely interesting to the debugger. |
Logtalk 3.89.1 Feb 18, 2025 |
ADDED: The README.md file for the portable Docker image to the image (available as ~/README.md). UPDATED: The portable Docker image README.md file with VSCode and VSCodium usage instructions. UPDATED: The portable Docker image to provide a SSH server (not running by default). UPDATED: The portable Docker image to include Tau Prolog 0.3.4. UPDATED: The publishing scripts for the Docker images to also push the README.md files. |
Logtalk 3.89.0 Feb 14, 2025 |
Documentation: ADDED: Glossary definitions for “before”, “after”, and “around” methods. ADDED: Alternative installation instructions for the developer tools Python dependencies. FIXED: Missing developer tools dependency requirements for Ubuntu. Tools IMPROVED: The packs tool describe/1-2 predicates now also inform if a pack archive is cached. IMPROVED: The packs tool to discard an existing pack archive and try to download it again in case of a checksum error while installing. UPDATED: The diagrams tool for the new d2 0.6.9 release, which is now the minimum version required. Examples: ADDED: New jupyter example illustrating how to write source files that can be interpreted as scripts and open as Jupyter notebooks using the Jupytext package. IMPROVED: Instructions on how to run the examples documentation as Jupyter notebooks. IMPROVED: The NOTES.md files of several examples for a better experience when open as notebooks. IMPROVED: The coinduction example to allow running with the XVM backend when the unify_applies_occurs_check flag is only set to true after startup. FIXED: Typos in the NOTES.md files of several examples that caused errors when open and run as notebooks. FIXED: Skip the interactive queries in the birds and lpa/faults examples if opening their documentation as notebooks. FIXED: The lambdas example benchmarks can also be run with Trealla Prolog and XVM. FIXED: The localizations example to not depend for its expected output on the report flag value. Installers and installation scripts: ADDED: Portable Docker image support for configuring the default Prolog backend to be used for Jupyter notebooks. IMPROVED: The Portable Docker image Dockerfile for smaller images. FIXED: Portable Docker image to install the Jupytext dependency required for opening examples documentation as Jupyter notebooks. FIXED: Portable Docker image to install d2 for use with the diagrams tool. FIXED: The Handbook and the release build scripts to work with both BSD and GNU |
Logtalk 9.2.9.1 Dec 20, 2024 | ADDED: trap/1: aliases for e.g. type_error -> type_error(_,_) So one does not need to remember the number of arguments. |
Logtalk 9.2.8.1 Dec 19, 2024 | BUILD: Add CMake option -DSWIPL_SO_VERSIONS to remove SOVERSION properties. |
Logtalk 3.86.0 Dec 18, 2024 |
Logtalk compiler and runtime: ADDED: Experimental logtalk::message_prefix_file/6 hook predicate to the message printing mechanism. FIXED: False left-recursion warning when compiling a grammar rule for a multifile non-terminal that calls a local non-terminal with the same indicator. Prolog adapter and integration files UPDATED: Ciao Prolog adapter file to pretend that modules are supported to allow loading libraries and examples that require file use_module/1 directives. Documentation: ADDED: Notes on encrypting applications using XVM. FIXED: Multiple Handbook grammar and spelling typos. FIXED: Multiple man pages grammar and spelling typos. Library: FIXED: The os::sleep/1 predicate for XSB to also accept floats. Tools: CHANGED: The lgtunit tool test compilation warning and error messages to include the file context for better integration with other developer tools. CHANGED: The diagrams tool now uses a Unicode glyph for the magnifying lens instead of a PNG image. CHANGED: The diagrams tool now uses a Graphviz box shape for Prolog modules instead of a tab, which is now only used for directories and libraries. REMOVED: Deprecated lgt2svg.js script from the diagrams tool. ADDED: Experimental diagrams tool support for the d2 graph language. UPDATED: The diagrams tool to support graph languages such as d2 where the node identifiers are not global. UPDATED: The diagrams tool to also support the PearAI, Windsurf, PyCharm, and IDEA text editors when generating diagrams with local file links. UPDATED: The tutor tool to also explain duplicated predicate/non-terminal reference linter warnings. UPDATED: The tutor tool to call the new logtalk::message_prefix_file/6 hook predicate to support VSCode displaying warnings and errors augmented with explanations. UPDATED: The help tool for the new logtalk::message_prefix_file/6 hook predicate. FIXED: The diagrams tool to also generate an instance/class caption for metaclasses. FIXED: Bug in the diagrams tool where repeated nodes could b |
Logtalk 9.2.8.1 Nov 18, 2024 |
FIXED: Handling return values in stack expansion. Introduce more bool to correctly distinguish functions returning true/false/*_OVERFLOW from those raising exceptions and only returning true/false. FIXED: prolog_trace_interception/4: setting up the hook good crash. |