]>
Repositorios git - scryer-prolog.git/log
Mark Thom [Mon, 8 Apr 2024 00:10:54 +0000 (18:10 -0600)]
Merge pull request #2379 from aarroyoc/scryer-prolog-meetup-2024
website: add Scryer Prolog Meetup 2024 banner
Adrián Arroyo Calle [Sun, 7 Apr 2024 17:44:13 +0000 (19:44 +0200)]
website: add Scryer Prolog Meetup 2024 banner
Mark Thom [Fri, 5 Apr 2024 18:27:15 +0000 (12:27 -0600)]
add Scryer Prolog Meetup 2024 to README
Mark Thom [Fri, 5 Apr 2024 17:19:50 +0000 (11:19 -0600)]
Merge pull request #2376 from mthom/dependabot/cargo/h2-0.3.26
Bump h2 from 0.3.24 to 0.3.26
dependabot[bot] [Fri, 5 Apr 2024 16:18:08 +0000 (16:18 +0000)]
Bump h2 from 0.3.24 to 0.3.26
Bumps [h2](https://github.com/hyperium/h2) from 0.3.24 to 0.3.26.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/v0.3.26/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.24...v0.3.26)
---
updated-dependencies:
- dependency-name: h2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <[email protected] >
Mark Thom [Wed, 3 Apr 2024 21:29:29 +0000 (15:29 -0600)]
treat Utf8Error::valid_up_to as an offset form self.pos, which it is (#2374)
Mark Thom [Tue, 26 Mar 2024 21:21:37 +0000 (15:21 -0600)]
Merge pull request #2367 from triska/dcg_meta_predicates
ADDED: meta_predicate/1 declarations for (',')//2 and (;)//2
Mark [Mon, 25 Mar 2024 18:46:24 +0000 (12:46 -0600)]
correct offset retrieval in add_pstr_chars_and_step (#2370)
Markus Triska [Thu, 21 Mar 2024 21:14:23 +0000 (22:14 +0100)]
ADDED: meta_predicate/1 declarations for (',')//2 and (;)//2
This addresses #2366.
Mark Thom [Thu, 21 Mar 2024 00:52:08 +0000 (18:52 -0600)]
Merge pull request #2363 from triska/compile_format
ENHANCED: Partial evaluation of format_//2 and related constructs
Markus Triska [Wed, 20 Mar 2024 19:26:01 +0000 (20:26 +0100)]
ENHANCED: further partial evaluation for the common control sequence ~d
Markus Triska [Wed, 20 Mar 2024 18:48:33 +0000 (19:48 +0100)]
extend partial evaluation to computing lengths when statically possible
Markus Triska [Mon, 18 Mar 2024 20:43:30 +0000 (21:43 +0100)]
goal expansion for format/2 and format/3
In this way, we benefit from partial evaluation of format strings.
Markus Triska [Mon, 18 Mar 2024 20:35:12 +0000 (21:35 +0100)]
strengthen type check
Markus Triska [Mon, 18 Mar 2024 20:34:13 +0000 (21:34 +0100)]
ENHANCED: Partial evaluation of format_//2.
This moves analysis of the format string to compilation time when
possible, so that parsing it at run time is no longer necessary.
Mark [Tue, 19 Mar 2024 23:12:26 +0000 (17:12 -0600)]
expand_call_goals/3 should expand meta-predicate subgoals (#2361)
Mark Thom [Sun, 17 Mar 2024 01:56:49 +0000 (19:56 -0600)]
Merge pull request #2358 from triska/octet_documentation
Documentation improvements for encoding(octet) option in several predicates
Markus Triska [Sat, 16 Mar 2024 20:23:12 +0000 (21:23 +0100)]
indicate deprecated functionality
Markus Triska [Sat, 16 Mar 2024 19:30:46 +0000 (20:30 +0100)]
DOC: Un-document the ability to use bytes with encoding(octet).
This usage is now considered deprecated. Use strings instead for
greater efficiency and type consistency in your applications.
This functionality is a candidate for removal in a future commit.
Markus Triska [Sat, 16 Mar 2024 19:24:44 +0000 (20:24 +0100)]
DOC: Improve descriptions to make clear what encoding(octet) means.
In particular, octet does *not* mean that the input is a list of
Prolog bytes in the sense of "integers between 0..255", but that the
character codes are used directly as byte values.
Mark [Wed, 13 Mar 2024 00:36:53 +0000 (18:36 -0600)]
don't skip to end of pstr in CommaSeparatedCharList token variant (#2356)
Mark Thom [Tue, 12 Mar 2024 22:46:31 +0000 (16:46 -0600)]
Merge pull request #2357 from aarroyoc/update-website-0.9.4
Website: link release v0.9.4
Adrián Arroyo Calle [Tue, 12 Mar 2024 21:23:12 +0000 (22:23 +0100)]
Website: link release v0.9.4
Mark [Sat, 2 Mar 2024 01:56:52 +0000 (18:56 -0700)]
recompile original terms from compile_clause for term to term expansions (#2236)
Mark Thom [Fri, 1 Mar 2024 23:11:22 +0000 (16:11 -0700)]
Merge pull request #2354 from triska/side_channel
explain potential side-channel attacks due to compact string representation
Markus Triska [Sun, 25 Feb 2024 10:13:38 +0000 (11:13 +0100)]
explain potential side-channel attacks due to compact string representation
This legitimate concern was already raised by @infogulch in:
https://github.com/mthom/scryer-prolog/issues/1309#issuecomment-
1080028854
Thank you a lot!
Mark Thom [Fri, 1 Mar 2024 19:09:16 +0000 (12:09 -0700)]
Merge pull request #2353 from triska/hmac_verification
ENHANCED: Safe HMAC verification, using constant time string comparison.
Markus Triska [Sat, 24 Feb 2024 07:18:38 +0000 (08:18 +0100)]
ENHANCED: Safe HMAC verification, using constant time string comparison.
Without this provision, the expected HMAC can be gathered from timing
differences depending on the position where the strings first diverge,
and hence an attacker can forge an authenticated message by supplying
the gathered HMAC.
Test case, using exp(E) to succeed exactly 2^E times:
exp(E) :-
N is 2^E,
between(1, N, _).
yielding:
?- Options = [algorithm(sha512),hmac([1,2,3])],
Ds = "test",
crypto_data_hash(Ds, H, Options),
phrase((seq(As),seq(Bs)), H),
same_length(Bs, Cs),
maplist(=(a), Cs),
append(As, Cs, H1),
time((exp(10),crypto_data_hash(Ds, H1, Options),false)).
%@ % CPU time: 0.710s, 7_942_187 inferences
%@ % CPU time: 0.713s, 7_942_187 inferences
%@ % CPU time: 0.712s, 7_942_187 inferences
%@ % CPU time: 0.711s, 7_942_187 inferences
%@ % CPU time: 0.710s, 7_942_187 inferences
%@ % CPU time: 0.711s, 7_942_187 inferences
%@ % CPU time: 0.710s, 7_942_187 inferences
?- length(_, L), time((exp(10),crypto_data_hash("test", "3caebd1a0a2647930319a660b7d3642eb380fbd43202f9f6d08aabaa9ba50c39522a12ead10f0423f0af613cbc6fea74ad682ee11f563cc2e735722004fda2ba", [algorithm(sha512),hmac([0,L])]),false)).
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.734s, 7_878_699 inferences
%@ % CPU time: 0.732s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.733s, 7_878_699 inferences
%@ % CPU time: 0.515s, 5_525_404 inferences
%@ error('$interrupt_thrown',repl/0).
Mark Thom [Fri, 1 Mar 2024 00:09:47 +0000 (17:09 -0700)]
Merge pull request #2351 from infogulch/install-current-iai
Install version of iai-callgrind set in Cargo.toml
infogulch [Thu, 29 Feb 2024 23:20:01 +0000 (17:20 -0600)]
Install version of iai-callgrind set in Cargo.toml
Mark [Thu, 29 Feb 2024 23:15:28 +0000 (16:15 -0700)]
make indexer downcast Integers to Fixnums when possible, be slightly more judicious about allocating Integers instead of Fixnums (#2340)
Mark [Thu, 29 Feb 2024 22:12:58 +0000 (15:12 -0700)]
add #2341 test to lib_machine.rs
Mark [Thu, 29 Feb 2024 17:08:08 +0000 (10:08 -0700)]
use scryer-modular-bitfield on github, version bump
Mark [Thu, 29 Feb 2024 03:47:36 +0000 (20:47 -0700)]
fix misuse of TypeError trait while fixing #2345
Mark [Thu, 29 Feb 2024 03:35:38 +0000 (20:35 -0700)]
issue callable type error from dynamic_module_resolution if module is not an atom (#2345)
Mark Thom [Wed, 28 Feb 2024 21:34:54 +0000 (14:34 -0700)]
Merge pull request #2309 from coasys/library-use-case
Iron-out edge cases for library use-case, adding extensive real-world test assertions
Mark Thom [Sat, 24 Feb 2024 21:53:18 +0000 (14:53 -0700)]
Merge pull request #2342 from triska/curve_doc
DOC: Add DocLog comments for reasoning about elliptic curves.
Markus Triska [Sat, 24 Feb 2024 19:30:48 +0000 (20:30 +0100)]
DOC: Add DocLog comments for reasoning about elliptic curves.
Mark Thom [Thu, 22 Feb 2024 21:48:12 +0000 (14:48 -0700)]
Merge pull request #2338 from triska/hmac
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).
Markus Triska [Thu, 22 Feb 2024 19:17:20 +0000 (20:17 +0100)]
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).
Mark Thom [Sun, 18 Feb 2024 17:05:09 +0000 (10:05 -0700)]
Merge pull request #2337 from triska/master
link to newly available paper on analysis of dose-escalation protocols
Markus Triska [Sun, 18 Feb 2024 08:18:41 +0000 (09:18 +0100)]
link to newly available paper on analysis of dose-escalation protocols
Many thanks to @dcnorris for this great application and cooperation!
Bennet Bleßmann [Fri, 16 Feb 2024 23:15:03 +0000 (00:15 +0100)]
fix build of run_iai bench for wasm32
Bennet Bleßmann [Fri, 16 Feb 2024 23:01:10 +0000 (00:01 +0100)]
fix benchmarks being broken for every target except wam32
Bennet Bleßmann [Fri, 16 Feb 2024 22:43:22 +0000 (23:43 +0100)]
cfg out benches for wasm32
Bennet Bleßmann [Fri, 16 Feb 2024 22:18:21 +0000 (23:18 +0100)]
fix compilation of wasm32 test and skip to run wasm32 tests
Bennet Bleßmann [Fri, 16 Feb 2024 21:23:22 +0000 (22:23 +0100)]
undo `continue-on-error`
- currently `continue-on-error` is not shown in a usefull way on failiure see <https://github.com/orgs/community/discussions/15452>
Bennet Bleßmann [Fri, 16 Feb 2024 21:15:32 +0000 (22:15 +0100)]
bump ahash lock to 0.8.7
- fix nightly build
- not bumping to latest aka. 0.8.8 as that has a msrv of 1.72.0 and we are only at 1.70.0
Mark Thom [Mon, 12 Feb 2024 00:33:07 +0000 (17:33 -0700)]
Merge pull request #2327 from triska/char_type
FIXED: char_type/2 for unbound first argument.
Markus Triska [Sun, 11 Feb 2024 21:19:19 +0000 (22:19 +0100)]
FIXED: char_type/2 for unbound first argument.
Surrogate pairs form a gap in valid character codes, see:
https://github.com/mthom/scryer-prolog/issues/2326#issuecomment-
1937864665
Many thanks to @Skgland for the pointer, and to @librarianmage for the
question that spawned this!
This addresses #2326.
Nicolas Luck [Fri, 9 Feb 2024 12:48:45 +0000 (13:48 +0100)]
continue-on-error if target=wasm32 or rust=nightly
Nicolas Luck [Fri, 9 Feb 2024 12:44:37 +0000 (13:44 +0100)]
Reactivate nightly test job with continue-on-error set
Nicolas Luck [Fri, 9 Feb 2024 12:14:06 +0000 (13:14 +0100)]
Use stable Rust for style/report and deactivate nightly x86_64 target in CI
Nicolas Luck [Fri, 9 Feb 2024 11:41:01 +0000 (12:41 +0100)]
Merge branch 'master' into library-use-case
Mark Thom [Fri, 9 Feb 2024 00:38:01 +0000 (17:38 -0700)]
Update src/machine/parsed_results.rs
Co-authored-by: Bennet Bleßmann <[email protected] >
Mark [Thu, 8 Feb 2024 04:46:32 +0000 (21:46 -0700)]
fix tests broken by singleton
Mark Thom [Thu, 8 Feb 2024 01:49:13 +0000 (18:49 -0700)]
Merge pull request #2322 from triska/char_code
ENHANCED: Bi-directional char_code/2, addressing #2321.
Markus Triska [Wed, 7 Feb 2024 19:05:07 +0000 (20:05 +0100)]
ENHANCED: Bidirectional char_type/2, addressing #2321.
Suggested by @librarianmage, many thanks!
Mark Thom [Wed, 7 Feb 2024 01:11:40 +0000 (18:11 -0700)]
Merge pull request #2319 from triska/clpz_t
ADDED: clpz_t/2, generalizing support for use with library(reif)
Markus Triska [Tue, 6 Feb 2024 18:05:29 +0000 (19:05 +0100)]
ADDED: clpz_t/2, generalizing support for use with library(reif)
This was suggested and contributed by @librarianmage in:
https://github.com/mthom/scryer-prolog/issues/2225#issuecomment-
1890801923
Many thanks!
If anyone can find a better predicate name, please let us know any time!
Mark [Thu, 1 Feb 2024 16:31:04 +0000 (09:31 -0700)]
fmt
Mark Thom [Sun, 4 Feb 2024 22:09:13 +0000 (15:09 -0700)]
Merge pull request #2317 from aarroyoc/all-modules-test
Add all_mdoules test and fix library(csv)
Adrián Arroyo Calle [Sun, 4 Feb 2024 20:04:02 +0000 (21:04 +0100)]
Add all_mdoules test and fix library(csv)
Mark [Sat, 3 Feb 2024 18:49:26 +0000 (11:49 -0700)]
fix reverted tests, ensure files are loaded before goals (#2315)
Mark [Sat, 3 Feb 2024 00:04:47 +0000 (17:04 -0700)]
fix broken tests
Mark [Fri, 2 Feb 2024 22:35:00 +0000 (15:35 -0700)]
treat consultation of command line modules as regular goals (#2314)
Mark [Fri, 2 Feb 2024 18:49:02 +0000 (11:49 -0700)]
fmt
Mark [Fri, 2 Feb 2024 17:54:28 +0000 (10:54 -0700)]
load .scryerrc before files and goals (#1775, #2313)
Mark [Thu, 1 Feb 2024 16:26:58 +0000 (09:26 -0700)]
record stub choice point as block
Nicolas Luck [Thu, 1 Feb 2024 13:14:50 +0000 (14:14 +0100)]
Test show problem with nonexistent predicate
Nicolas Luck [Thu, 1 Feb 2024 12:53:21 +0000 (13:53 +0100)]
fmt
Nicolas Luck [Thu, 1 Feb 2024 12:51:37 +0000 (13:51 +0100)]
clippy
Nicolas Luck [Thu, 1 Feb 2024 12:43:51 +0000 (13:43 +0100)]
Fix all orderings in integration assertions
Nicolas Luck [Thu, 1 Feb 2024 12:00:49 +0000 (13:00 +0100)]
Remove test with long program literals, not needed
Nicolas Luck [Thu, 1 Feb 2024 11:59:10 +0000 (12:59 +0100)]
More ordering adjustments
Mark [Thu, 1 Feb 2024 00:32:32 +0000 (17:32 -0700)]
fix style errors
Mark [Thu, 1 Feb 2024 00:30:13 +0000 (17:30 -0700)]
index stub choice point correctly
Nicolas Luck [Wed, 31 Jan 2024 14:03:28 +0000 (15:03 +0100)]
Extract failing assertion as single test case
Nicolas Luck [Tue, 30 Jan 2024 11:54:12 +0000 (12:54 +0100)]
Adjust some first result orderings in integration assertions
Mark [Mon, 29 Jan 2024 22:06:56 +0000 (15:06 -0700)]
check for True or False Query Resolution unconditionally
Nicolas Luck [Mon, 29 Jan 2024 17:44:20 +0000 (18:44 +0100)]
fmt
Nicolas Luck [Mon, 29 Jan 2024 15:49:03 +0000 (16:49 +0100)]
Add more test cases to differentiate usage of discontiguous
Nicolas Luck [Mon, 29 Jan 2024 14:26:06 +0000 (15:26 +0100)]
Minimal reproduction of faulty behaviour seen in integration tests
Nicolas Luck [Fri, 26 Jan 2024 16:21:47 +0000 (17:21 +0100)]
Merge branch 'master' into library-use-case
Nicolas Luck [Fri, 26 Jan 2024 16:18:57 +0000 (17:18 +0100)]
Add expected results to integration test
Results are logs of what we get with old toplevel-based version of lib_machine. These are also congruent with what our tests logged out based on SWI.
Mark [Fri, 26 Jan 2024 06:59:54 +0000 (23:59 -0700)]
scan registers of instructions leading to verify_attributes interrupt to find the number of registers to save (#2307)
Mark [Fri, 26 Jan 2024 06:25:06 +0000 (23:25 -0700)]
add non chunk traversing cut family instructions to is_head_instr (#2307)
Mark Thom [Thu, 25 Jan 2024 21:17:18 +0000 (14:17 -0700)]
Merge pull request #2308 from triska/small_format_improvements
Small format improvements
Markus Triska [Thu, 25 Jan 2024 20:33:27 +0000 (21:33 +0100)]
update answers using latest toplevel output
Markus Triska [Thu, 25 Jan 2024 20:31:08 +0000 (21:31 +0100)]
rely on recently improved argument indexing for determinism
This is possible as of
4fd37335f576240c25dfbfe6e70441aff166c60e .
Mark [Thu, 25 Jan 2024 19:37:46 +0000 (12:37 -0700)]
move call_residue_vars/2 from atts.pl to iso_ext.pl
Mark [Thu, 25 Jan 2024 19:34:21 +0000 (12:34 -0700)]
don't mark temp variables as safe through argument_to_value (#2307)
Mark Thom [Tue, 23 Jan 2024 22:22:17 +0000 (15:22 -0700)]
Merge pull request #2306 from triska/dcg_representation
No longer use (->)//2 in library(clpb)
Mark Thom [Tue, 23 Jan 2024 20:50:17 +0000 (13:50 -0700)]
Merge pull request #2305 from mthom/dependabot/cargo/h2-0.3.24
Bump h2 from 0.3.22 to 0.3.24
Markus Triska [Tue, 23 Jan 2024 20:43:34 +0000 (21:43 +0100)]
improve error context
Source: https://github.com/mthom/scryer-prolog/issues/2304#issuecomment-
1906434756
Markus Triska [Tue, 23 Jan 2024 20:40:50 +0000 (21:40 +0100)]
no longer use (->)//2, since it is implementation defined
This addresses #2304.
dependabot[bot] [Tue, 23 Jan 2024 18:20:39 +0000 (18:20 +0000)]
Bump h2 from 0.3.22 to 0.3.24
Bumps [h2](https://github.com/hyperium/h2) from 0.3.22 to 0.3.24.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/v0.3.24/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.22...v0.3.24)
---
updated-dependencies:
- dependency-name: h2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <[email protected] >
Mark Thom [Tue, 23 Jan 2024 18:19:53 +0000 (11:19 -0700)]
Merge pull request #2303 from mthom/dependabot/cargo/shlex-1.3.0
Bump shlex from 1.2.0 to 1.3.0
dependabot[bot] [Mon, 22 Jan 2024 21:53:43 +0000 (21:53 +0000)]
Bump shlex from 1.2.0 to 1.3.0
Bumps [shlex](https://github.com/comex/rust-shlex) from 1.2.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)
---
updated-dependencies:
- dependency-name: shlex
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <[email protected] >
Mark Thom [Mon, 22 Jan 2024 07:26:23 +0000 (00:26 -0700)]
Merge pull request #2302 from triska/dcg_representation
Throw representation errors for unsupported DCG grammar control constructs