| Did you know ... | Search Documentation: |
| Title for pldoc(default) |
[Jan 31 2024]
library(dom) (WASM version) bind/4: allow passing JavaScript
objects.:- include(File) The include
statements can come in more places, even in the middle of a predicate.
This changes the identifier from 'I' to 'L' to make the statement
unique in all contexts and defines handling the include statements.
Updates the qlf save vesion to 69. Old valid version 68 files can still be loaded.
[Jan 30 2024]
[Jan 29 2024]
[Jan 26 2024]
[Jan 29 2024]
[Jan 28 2024]
[Jan 29 2024]
[Jan 28 2024]
[Jan 26 2024]
oneof(Values) types.oneof(Values) types.[Jan 25 2024]
pack.[Jan 21 2024]
--installed option.[Jan 19 2024]
[Jan 24 2024]
remote(true).status(-Status)[Jan 19 2024]
rationals to claim rational number support.[Jan 18 2024]
[Jan 17 2024]
library(test_cover) from the plunit package.[Jan 16 2024]
refs/origin/HEAD.[Jan 14 2024]
'$pack_attach'/1 and '$pack_attach'/2.[Jan 13 2024]
type(term), keep(true)
If the initial type is not a term, the type must be set to term
and the value must be converted.[Jan 12 2024]
SWIPL_PACK_PATH This defines
the Prolog search path for packs at startup.path_sep. Provides access to OS path separator
(: or ; for Windows).replace(+Bool) option to attach_packs/2. Allows attach_packs/2
to clear the default package list.[Jan 11 2024]
[Jan 10 2024]
[Jan 8 2024]
[Jan 9 2024]
This notably fixes thread interaction for JPL.
[Jan 8 2024]
buildenv.sh on pack build directory.swipl_add_test() to home/cmake/swipl.cmake${swipl_module_dir} in home/cmake/swipl.cmake-DSTATIC_EXTENSIONS=ON[Jan 5 2024]
[Dec 29 2023]
It is a partial work around. There could be other side-effects. Should probably be considered experimental.
[Dec 28 2023]
For now, the ability to separate the two properties is reserved to the system.
[Dec 27 2023]
[Dec 22 2023]
[Dec 27 2023]
[Dec 21 2023]
[Dec 20 2023]
[Dec 19 2023]
size_t since recently.[Dec 18 2023]
#!.[Dec 15 2023]
library(pce).[Dec 14 2023]
[Dec 13 2023]
[Dec 12 2023]
opt_help(help(usage), Usage)
This allows to present multiple usage lines.qlf This app simplifies commandline driven management
of QLF files. Use `swipl qlf -h` for help. The command line syntax
is still unstable.[Dec 11 2023]
[Dec 9 2023]
[Dec 8 2023]
[Dec 6 2023]
[Dec 4 2023]
*.[Nov 30 2023]
[Nov 29 2023]
write_attributes as safe. This may call
portray, but local definitions are verified and global definitions
cannot be changed.[Nov 28 2023]
foreign
to library(shlib). This simplifies maintenance. The change also adds
swi(lib/Arch) for all platforms, although the default SWI-Prolog
for Windows installs the libraries in swi(bin). Possibly we can
change that too?[Nov 27 2023]
But, also some Windows installations such as MSYS2 and Conda (and probably Cygwin) want this. Therefore we added SWIPL_INSTALL_AS_LINK which, if OFF, compiles the relative path to the anticipated home into the binary such that we can install the .exe in a separate directory (for Windows along with the DLLs needed to run them).
[Nov 23 2023]
[Nov 21 2023]
:- if(...). :- include(...). :- elif(...). ...
[Nov 19 2023]
[Nov 18 2023]
[Aug 18 2023]
Upstream message:
Reject overflows of zip header fields in minizip.
This checks the lengths of the file name, extra field, and comment that would be put in the zip headers, and rejects them if they are too long. They are each limited to 65535 bytes in length by the zip format. This also avoids possible buffer overflows if the provided fields are too long.
[Nov 15 2023]
type(oneof(ListOfAtoms)) This patch
also cleans up the relation to create_prolog_flag/3 and existence of
a flag with some value. Adds test cases.[Nov 16 2023]
compound(atom-integer) to express a pair mapping an atom to
an integer. Also introduces constructed types such as (atom;integer)[Nov 15 2023]
-Dno-flagoptimise_apply,
which defaults to optimize, while the flag apply_macros_scope
defines whether the optimization applies to the files that import
this library or all files (default).optimise_debug flag library-only.clpfd_goal_expansion to
optimise_clpfd Improves consistencyDict.attr.[Nov 14 2023]
-O.[Nov 13 2023]
apply_macros controls when this library rewrites the
code. Values are true (old default), false (no-op), optimise
(only wwith -O) and imported (only apply to modules where it is
explicitly imported to).-Dname=value to set Prolog flags.S command to save the
current goal. Reported by Wolfram Diestel
(https://swi-prolog.discourse.group/t/stacktrace-after-hitting-t-s-u-while-browsing-through-query-solutions/6963/2)libswipl.ddl.a.[Nov 7 2023]
[Nov 6 2023]
[Nov 5 2023]
conda. Windows versions added %CONDA_PREFIX%\Library\bin and
%PREFIX%\Library\bin to dependent DLL search path. This extends
a similar work-around for MSYS2.[Nov 2 2023]
mpz_ui_pow_ui() Switch to using the 64
bit versions on all platforms. Requires some more 64 bit init/set
versions, but overflow checking intrinsic __umulh() for MSVC only
exists of 64 bit.mpz_ui_pow_ui() emulation on LibBF on systems with 32 bit long.
Breaks e.g. A is 2^65, succeeding with A = 0.[Nov 1 2023]
size_t argument (was int).size_t instead of
int)[Oct 29 2023]
swipl app-name [arg ...][Oct 31 2023]
insecure(true) to pack_install/2 to skip
the verification.[Oct 25 2023]
[Oct 24 2023]
float:right and dealing with multiple flush-right
elements in a block.[Oct 23 2023]
[Oct 18 2023]
[Oct 16 2023]
--no-signals, keep using the GC thread The
communication with the garbage collection thread is not based on
OS signals and thus there is no reason to stop using the dedicated
GC thread when not using signals. Using a separate thread improved
real-time behavior.[Oct 11 2023]
float_overflow to affect read_term/3.
With this flag setting, too large floats are read as infinity rather
than raising a syntax error.[Oct 9 2023]
[Oct 8 2023]
[Oct 5 2023]
[Oct 4 2023]
open_count to 1, causing
hthe attach/destroy cycle in the main thread to kill the main thread.[Oct 2 2023]
[Oct 1 2023]
[Sep 29 2023]
[Sep 28 2023]
Without this, notably services such as SWISH that allow users to run arbitrary Prolog goals become subject to DoS attacks.
[Sep 25 2023]
[Sep 18 2023]
[Sep 17 2023]
fillbuf() return with an error immediately and
(2) do not abort the main query loop if we get an abort request.[Sep 16 2023]
[Sep 12 2023]
evalExpression()[Sep 11 2023]
[Sep 10 2023]
clearNumber() Notably improves performance for
float arithmetic.[Sep 8 2023]
[Sep 7 2023]
<term.h> Reported
by Matthias Gondan after failing build for CRANCVT_INTEGER handling Broken
in 2ac1553770ac1a9d6753b8b6e72ac2028815a028[Sep 6 2023]
list_or_partial_list(Type)[Sep 5 2023]
toplevel_var_size
is 0[Sep 4 2023]
[Sep 1 2023]
trace(Head, Ports) Got getting location
of predicate wrong and ansi_hyperlink/3 printed the URL rather than
the label if the terminal does not support hyperlinks.[Aug 30 2023]
[Aug 29 2023]
src, but
using some backends there can be a configuration directory in between.[Aug 28 2023]
bf_set_ui(): uint32_t >> 32 is undefined.[Aug 27 2023]
pthreads for threading. - Port atomic operations
to use teh MSVC _Interlocked* intrinsics - Sync thread config for
swipl-win.exe with libswipl.dll.[Aug 26 2023]
[Aug 28 2023]
[Aug 20 2023]
free() for LibBF memory management. LibBF uses
realloc(ptr,0) rather than free, but this is not-portable and
flagged by the latests versions of valgrind.[Aug 22 2023]
[Aug 21 2023]
[Aug 16 2023]
[Aug 15 2023]
add_subdirectory(swipl)
in a larger project.
add_subdirectory(swipl)
in a larger project.
[Aug 11 2023]
-fvisibility=hiddeninstall_t This allows
compiling plugins with gcc -fvisibility=hidden, reducing the risc
for symbol conflicts and reducing load time.[Aug 9 2023]
[Aug 7 2023]
[Aug 3 2023]
[Aug 2 2023]
[Aug 1 2023]
[Jul 28 2023]
PL_S_NOT_INNER when acting on non-inner query
This return code may be generated by PL_next_solution(), PL_cut_query()
and PL_close_query(). This is a first step making the query interface
more robust against misuse.?- use_foreign_library(foreign(mylib), [visibility(global)]).
[Jul 26 2023]
[Jul 25 2023]
PL_BLOB_NOCOPY typed blob, calling the release() function
immediately.[Jul 23 2023]
[Jul 21 2023]
[Jul 18 2023]
strerror() These
strings are in the current locale and must thus be converted to
Unicode for generating the Prolog exeption.[Jul 17 2023]
[Jul 15 2023]
[Jul 12 2023]
[Jul 7 2023]
[Jul 5 2023]
term.h is not
provided Reported to happen on MacOS using clang-15. The status of
tgetent() that supports these predicates is rather unclear. Docs say
they might be discontinued, so more extensive checking that they are
really available seems justified.
This patch keeps tty_size/2 if possible (depends on ioctl()).
[Jul 3 2023]
iso property.[Jun 5 2023]
xref_defined(Src, Head, How) succeed (also) with How = dcg for DCG
grammar rules.[Jun 3 2023]
[May 31 2023]
[May 30 2023]
[May 25 2023]
library(macro).[May 24 2023]
[May 22 2023]
[May 20 2023]
[May 17 2023]
det and =>. Expandable.[May 16 2023]
top_sort/2 now returns vertices from the same layer in input order, i.e., in standard order of terms.
ugraph_layers(+UGraph, -Layers) returns the topogical sorted result
as a
list of layers. I.e., all legal toplogical sorts can be established by
creating permutations for the layers.
[May 15 2023]
[May 3 2023]
[May 2 2023]
[May 1 2023]
[Apr 26 2023]
directory and directory(+Access).[Apr 25 2023]
auto_indent_arguments(Int) With this option
(defaults to 4), dicts and compounds that are too wide ands whose
funtor is at least twice this width, have their arguments printed on
the next line.[Apr 21 2023]
-DSTATIC_EXTENSIONS=ON, drop usage of dlopen()
This is required for recent versions of Emscripten that give a runtime
error on the usage of dladdr().[Apr 20 2023]
[Apr 19 2023]
[Apr 18 2023]
[Apr 14 2023]
answer_write_options flag.[Apr 12 2023]
toplevel_residue_vars.clp(fd). Patch by @triska for Scryer Prolog.[Mar 26 2023]
Domain error: `foreign_return_value' expected, found `-1'.
Document that invalid names cause silent failure.[Mar 24 2023]
cputime and infereneces to include completed
"child threads". This patch causes threads to keep track of their
"creator" thread. If the creator still exists when a thread dies,
the time and inferences are recorded with the creator and reflected in
the statistics keys. The new keys self_cputime and self_inferences
provide the original.-DSTATIC_EXTENSIONS=ON, do not install the
libraries. This implies plugins are not installed as *.a files
and libswipl.a is not installed. Only bin/swipl and the Prolog
libraries and support files are installed.[Mar 23 2023]
[Mar 22 2023]
[Mar 16 2023]
[Mar 13 2023]
[Mar 10 2023]
dladdr() if not available.[Mar 9 2023]
sample_rate(+Rate) and ports(+Ports).[Mar 7 2023]
[Mar 5 2023]
throw(Exception) rather than exception(Exception). Compatibile
with e.g. call_time/3.-DMULTI_THREADED=OFF -DENGINES=ON This
provides engines without threads. This is merely a proof of concept.
It proofs that the code changes are quite minimal. A full version
requires more work:
This spreads a lot more #ifdef in the code. Luckily mostly
limited to pl-thread.h and pl-thread.c. Requires further cleanup
by moving more functions and declarations under the same conditonals
together and possibly split some stuff to a new file, e.g. move
mutexes and possibly later message queues and signals to their
own file.
[Mar 4 2023]
linger_always() and linger().[Mar 5 2023]
[Mar 4 2023]
sleep(0) just does sched_yield() if possible.[Mar 3 2023]
[Mar 1 2023]
<csymf><csym>*.[Feb 28 2023]
[Feb 27 2023]
[Feb 24 2023]
\ quoted without character_escapes
should not double the \. This bug was introduced
with cbe691f8af61ccaf466147868a316b96c110fedb to "fix"
term_to_atom('a\\b', A) to produce A = 'a\\b' (which is
quoted again by the toplevel to produce A = '\'a\\\\b\''.
The issue is that term_to_atom/2 using PL_write_term() with
PL_WRT_QUOTED, but not PL_WRT_CHARESCAPES. There is now
a new flag PL_WRT_NO_CHARESCAPES. If either flag is given, we
explicitly enable or disable character escapes. If none is given,
the behaviour depends on the global (module user) value of the
character_escapes flag.
This implies that e.g. term_to_atom('a\nb', A) used to produce a
quoted atom with a plain newline, while in the new version the newline
is escaped as \n.
Many foreign libraries using PL_write_term() or PL_get_chars() using CVT_WRITE did not use character escapes while they do now. As long as the output is read by Prolog the result is the same.
[Feb 26 2023]
debug flag. Note that we cannot ask for this flag as the
hook runs in "nodebug" mode. As the change is incompatible anyway,
we also move the hook to the prolog module where the modern system
hooks live. The new argument is used by library(prolog_stack) to make
catch/3 behave as catch_with_backtrace/3 when in debug mode if the
"guard" debug is defined (default). If this is not desired, use
:- use_module(library(prolog_stack)). :- retractall(prolog_stack:guard(debug)).
Code that use the old hook must rename the predicate and add the Debug argument. Code that wishes to be compatible with old and new Prolog can implement both hooks.
[Feb 23 2023]
throw(Error).[Feb 22 2023]
charset(openbsd), implementing the
OpenBSD alphabet for base64 encoding Needed for bcrypt implementation
in packages/ssl[Feb 21 2023]
[Feb 20 2023]
[Feb 19 2023]
[Feb 18 2023]
[Feb 13 2023]
usr/bin/swipl for the command.[Feb 12 2023]
[Feb 10 2023]
[Feb 9 2023]
halt(abort) really ignore halt cancellation.[Feb 8 2023]
[Feb 6 2023]
[Feb 1 2023]
mpz_rootrem() optimization Tripped over case
when rop same as OP in degenerate case. Also replace mpz_sub_ui with
mpz_add_si since argument op_sign is signed.[Jan 30 2023]
[Jan 27 2023]
tmp_dir from the predicates that
create temporary files.[Feb 14 2023]
[Feb 13 2023]
usr/bin/swipl for the command.[Feb 12 2023]
save function,
propagating a possible exception. Documented the save and load
functions. Joined work by Peter Ludemann and Jan Wielemaker.[Feb 10 2023]
[Feb 9 2023]
halt(abort) really ignore halt cancellation.[Feb 8 2023]
[Feb 6 2023]
[Feb 4 2023]
-DUSE_GMP=OFF -DUSE_LIBBF=OFF[Feb 1 2023]
mpz_rootrem() optimization Tripped over case
when rop same as OP in degenerate case. Also replace mpz_sub_ui with
mpz_add_si since argument op_sign is signed.[Jan 31 2023]
[Jan 30 2023]
[Jan 25 2023]
[Jan 30 2023]
[Jan 27 2023]
tmp_dir from the predicates that
create temporary files.y.[Jan 26 2023]
[Jan 23 2023]
float_undefined set to nan, 0/0 must return NaN.[Jan 8 2023]
[Jan 4 2023]
mpq_set_double (rationalize/1)[Jan 19 2023]
[Jan 20 2023]
t integer size specified
for ptrdiff_t.[Jan 17 2023]
-DCHECK_FORMAT. Introduces SdprintfX() and
similar functions that are not checked because they use one of the
extensions such as %Us or %Ws (UTF-8/wchar_t string).[Jan 19 2023]
[Jan 17 2023]
[Jan 16 2023]
[Jan 15 2023]
[Jan 14 2023]
[Jan 13 2023]
cmpFloatNumbers() for NaN.[Jan 12 2023]
[Jan 11 2023]
[Jan 10 2023]
[Jan 5 2023]
[Dec 28 2022]
[Dec 19 2022]
msys2 to detect the MSYS2 installation.[Nov 28 2023]
[Nov 26 2023]
[Nov 24 2023]
[Nov 22 2023]
[Nov 23 2023]
[Nov 22 2023]
[Nov 21 2023]
system(s), joining the data and generating the chart.
We now have a system in place to support pretty much every Prolog system, with or without modules. SWI, Yap and SICStus can do the job with the original sources. For e.g., Scryer we transform the sources and test beforehand which files Scryer can handle.
[Nov 22 2023]
[Nov 19 2023]
[Aug 7 2023]
[Aug 2 2023]
[Jul 31 2023]
swipl.rc This file is only installed
with xpce.[Apr 19 2023]
[Dec 21 2023]
[Dec 5 2023]
[Nov 14 2023]
[Jan 25 2024]
[Jan 12 2024]
[Dec 12 2023]
exec_program() with
execute_process()[Dec 10 2023]
'' to be the same as
/.''[Nov 21 2023]
[Nov 9 2023]
localhost on Windows.localhost, mapping it directly to the IP address 127.0.0.1.[Nov 6 2023]
[Nov 4 2023]
stream(S) work. This patch
fixes the options stdin(stream(S)), etc. when S denotes a file stream
by enabling inheritance for the handle before calling ProcessCreate().[Nov 3 2023]
user_input (file_no 0) for stream(S)[Aug 30 2023]
[Aug 29 2023]
[Aug 11 2023]
hashstream.so[Aug 6 2023]
[May 23 2023]
Set the two most significant bits (bits 6 and 7) of the clock_seq_hi_and_reserved to zero and one, respectively according to https://datatracker.ietf.org/doc/html/rfc4122#section-4.4
[Apr 3 2023]
[Feb 28 2023]
[Feb 26 2023]
[Feb 13 2023]
[Feb 7 2023]
[].[Feb 6 2023]
[Feb 5 2023]
[Feb 1 2023]
[Jan 29 2023]
[Jan 26 2023]
&=; in the query string.[Jan 17 2023]
[Dec 17 2023]
[Nov 2 2023]
check_rc(). Seems not all C++ compilers can deal
with this.[Oct 21 2023]
unwrap() method and PlUnwrapPtr()[Oct 19 2023]
[Oct 4 2023]
[Sep 17 2023]
[Sep 11 2023]
[Sep 7 2023]
[Sep 1 2023]
[Aug 18 2023]
[Aug 7 2023]
[Aug 2 2023]
[Jul 26 2023]
%p without leading 0x.[Jul 25 2023]
[Jul 16 2023]
[Jun 11 2023]
[Apr 29 2023]
[Apr 8 2023]
verify() methods removed from
PlAtom, PlTerm, etc. - the wrapper functions do the checking. Some
executable code has been moved to SWI-cpp2.cpp - can be inlined,
if desired. PlException is now a subclass of std::exception,
not a subclass of PlTerm. PlTypeError, PlDomainError, etc. are no
longer subclasses of PlTerm, but are functions for creating suitable
PlException objects. The string comparison operators are deprecated;
use as_string() and std::string comparison instead, which allows
specifying the encoding. Added PlRecord, PlRecordExternal, PlControl
(used by PREDICATE_NONDET), PlStream. Fixed numerous bugs and
misfeatures; added tests.[Mar 24 2023]
[Mar 10 2023]
[Mar 5 2023]
[Feb 8 2023]
[Jan 26 2024]
[Nov 26 2023]
DOCTYPE
and <html>.[Nov 9 2023]
[Oct 11 2023]
[Sep 6 2023]
[Aug 29 2023]
[Aug 1 2023]
[Jul 28 2023]
Used PlDoc markup
[Jun 20 2023]
[Jun 1 2023]
[May 31 2023]
[May 30 2023]
[May 19 2023]
[May 2 2023]
error(_,_) wrapper. With http handshake
we refer to sending and reading the header as well as, for https,
the TLS handshake.[Apr 25 2023]
application/json;
charset=UTF-8, reply_json_dict/2 used only application/json.
This is fine according to the standards, but some clients insist on
the charset. Ths patch makes all versions compatible.[Apr 24 2023]
[Mar 7 2023]
[Mar 2 2023]
This is because the spec allows extended characters to be encoded as a pair of 16-bit values, called a "surrogate pair".
From RFC 4627:
To escape an extended character that is not in the Basic Multilingual Plane, the character is represented as a twelve-character sequence, encoding the UTF-16 surrogate pair. So, for example, a string containing only the G clef character (U+1D11E) may be represented as "\uD834\uDD1E".
This commit fixes the JSON parser to handle such surrogate pairs.
[Feb 28 2023]
[Feb 25 2023]
[Feb 10 2023]
headers(-Reply) option to add
status_code(Code) to the headers.[Feb 9 2023]
[Feb 7 2023]
[Jan 27 2023]
-> 1.0Inf` syntax.[Jan 23 2023]
[Sep 1 2023]
[Dec 12 2023]
exec_program() with
execute_process()[Nov 5 2023]
[Oct 16 2023]
gc_thread to false SWI-Prolog used to
disable the garbage collection thread on `--no-signals`. This was
for JPL and is removed in version 9.1.18. It is unclear why using
a separate GC thread causes the prolog_in_java test to hang.
This patch sets the GC thread explicitly.
[Sep 25 2023]
[Dec 8 2023]
[Sep 30 2023]
[Aug 29 2023]
[Aug 14 2023]
[Dec 8 2023]
swipl mqi [option ...]
[Aug 17 2023]
[Aug 16 2023]
[Mar 4 2023]
[Aug 29 2023]
[Oct 18 2023]
'TEXT' to longvarchar(Length).[Aug 31 2023]
[Jan 29 2023]
[Aug 30 2023]
[Jul 31 2023]
[Mar 12 2023]
[Feb 7 2023]
set_prolog_flag(re_compile, true).[Dec 10 2023]
[Nov 26 2023]
[Nov 22 2023]
chunk=false
we avoids the usage of findnsols (and the effects on global variables
associated with its backtracking). Initially, this was motivated by
the fact that I wanted the pengine top-level (which is recursive
in nature) to respect the chr store, but I also think it's a more
principled thing to do.[Sep 6 2023]
[Dec 15 2023]
library(pce) Allows running the
documentation tools without library(pce)[Dec 12 2023]
[Dec 10 2023]
include_reexported(Bool) option.[Nov 26 2023]
[Oct 18 2023]
qualified(always) This is used by help/1
on the commandline to show documented private predicates when found
in some module.[Oct 17 2023]
[Jul 12 2023]
[May 9 2023]
[Feb 28 2023]
\url{} must escape #.[Jan 17 2024]
library(test_cover). This library is moved to the
core as library(prolog_coverage) because it has no dependencies on
the unit testing and serves more purposes.[Jan 16 2024]
library(test_cover): allow to save and restore coverage data.
This patch is a major improvement to the coverage analysis tool.
It modifies the API, although the old show_coverage/2 is still working
as it used to.
It improves the report and, most importantly, allows for combining coverage data from multiple Prolog invocations.
set_tests_options([run(make(all))]).[Jan 12 2024]
[Dec 14 2023]
[Nov 14 2023]
[Oct 13 2023]
--on-error=status, printing an error message that does not cause
a test to fail silently ignores the message while Prolog exits with
status 1. That is hard to debug. Now, if these flags are present,
tests that emit warnings or errors are considered failed and thus
the test is printed.[Jul 26 2023]
print_message(silent, plunit(begin(Unit))) and
print_message(silent, plunit(end(Unit, Summary))).[May 1 2023]
[Mar 5 2023]
[Feb 18 2023]
[Feb 13 2023]
forall(Generator) tests that failed on an assertion considered
all subsequent generated tests to fail as well.[Feb 12 2023]
concurrent(true), keeping only jobs(Count). At
unit level, the option is maintained, but currently prints a message
that it is not supported.[Feb 10 2023]
[Feb 2 2023]
[Feb 1 2023]
plunit_<option>, e.g.
?- set_prolog_flag(plunit_format, log).
is the same as
?- set_tests_options([fomat(log)]).
Added option show_blocked(+Boolean) to list names of blocked tests and
their reason only on demand.
[Jan 31 2023]
[Jan 30 2023]
[Jan 26 2023]
[Jan 25 2023]
jobs(Jobs) option. - Added output(on_failure) (default)
to only emit console output
of a test when it failed. - Added two output formats:
tty, which is the default it the output is a tty reuses the
current output line on success, only displaying failed tests.log, which maintains all output. - Removed the sto(Mode)
options, replaced by an occurs_check(+Mode)
option at the global, unit and test level.
A lot of internal restructuring.
[Jan 20 2023]
[Dec 8 2022]
output(+Mode) to suppress output or emit
it only after the test fails.[Dec 7 2022]
[Dec 12 2023]
exec_program() with
execute_process()[Aug 30 2023]
[Jun 1 2023]
[Nov 30 2023]
[Sep 6 2023]
[Sep 1 2023]
[Apr 29 2023]
[Mar 7 2023]
[Feb 26 2023]
[Jan 29 2023]
[Jan 17 2023]
[Jan 28 2024]
[Aug 29 2023]
[Aug 11 2023]
entities(_37838)'[Apr 16 2023]
atom transformation to the attribute value in xpath.
The content attributes provided with load_structure/3 can be atoms
or strings depending on the attribute_value/1 option. So adding
a transformation of attribute values to an atom in xpath/3 should
be a useful feature, such as string transflation.[Feb 26 2023]
[Nov 7 2023]
[Nov 6 2023]
[Oct 13 2023]
[Sep 27 2023]
[Aug 29 2023]
[Feb 22 2023]
algorithm(bcrypt) Uses the
Openwall implementation of BCrypt, a public-domain, widely-used
C implementation.
Requires openbsd support from library(base64), added Feb 22 2023.
[Nov 16 2023]
[Oct 22 2023]
completion.
[Oct 7 2023]
[Sep 20 2023]
[Sep 14 2023]
[Sep 8 2023]
[Sep 1 2023]
[Aug 11 2023]
[Jun 23 2023]
Thanks to Stefan Monnier for suggesting this approach for simplifying Sweep's code and making it more conformant with Emacs conventions.
[Jun 20 2023]
[Jun 18 2023]
[Jun 14 2023]
[Jun 11 2023]
[Jun 8 2023]
[Jun 6 2023]
[Jun 1 2023]
[May 30 2023]
[May 26 2023]
macro(String)'
terms. * sweeprolog.el (sweeprolog-macro):
New face. (sweeprolog-analyze-fragment-to-faces)
(sweeprolog-analyze-fragment-help-echo): Handle 'macro' fragments.[May 24 2023]
[May 20 2023]
[Feb 16 2023]
[Feb 13 2023]
[Feb 7 2023]
foo(Bar, Baz) :- Baz = Bar. ^ read as fullstop
to:
foo(Bar, Baz) :- Baz = Bar.foo. ^ read as dict dot
[Feb 4 2023]
[Feb 1 2023]
[Jan 29 2023]
[Jan 28 2023]
[Jan 26 2023]
[Aug 30 2023]
[Aug 25 2023]
[Jan 28 2024]
[Dec 18 2023]
[Dec 11 2023]
library(pce_prolog_xref)[Dec 9 2023]
[Nov 13 2023]
[Sep 2 2023]
[Aug 31 2023]
file(GLOB) - Suppress compiler warnings on data loss and
signed/unsigned types - Small typing cleanup. - Avoid RedrawWindow()
(renamed to pceRedrawWindow()) - Fix SendFunc casting - Avoid conflict
over "small"!?[Aug 28 2023]
[Aug 16 2023]
swipl-rc to home/xpce/prolog This is the only file
that required running the binary without installation that was in
the source. By copying it to the binary pre-stage home dir we can
greatly simplify build_home.pl[Aug 11 2023]
[Jul 15 2023]
[May 13 2023]
[Apr 1 2023]
[Mar 26 2023]
[Mar 9 2023]
[Feb 26 2023]
[Feb 14 2023]
[Feb 13 2023]
PRIdPTR from <inttypes.h>for printing intptr_t
rather than our own creation.[Jan 27 2023]
newline_and_indent. This is not exactly
the same as Emacs does, but in most cases close.[Aug 30 2023]
[May 4 2023]
[Sep 6 2023]