Mark Thom
7b33eafbb0
Merge pull request #2358 from triska/octet_documentation
...
Documentation improvements for encoding(octet) option in several predicates
2024-03-16 19:56:49 -06:00
Markus Triska
ee60c463c8
indicate deprecated functionality
2024-03-16 21:23:12 +01:00
Markus Triska
e1a6b5eb03
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.
2024-03-16 20:37:06 +01:00
Markus Triska
4ebdd97ad3
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.
2024-03-16 20:36:22 +01:00
Mark
6f7f979c05
don't skip to end of pstr in CommaSeparatedCharList token variant ( #2356 )
2024-03-12 18:37:03 -06:00
Mark Thom
ca8e280b4c
Merge pull request #2357 from aarroyoc/update-website-0.9.4
...
Website: link release v0.9.4
2024-03-12 16:46:31 -06:00
Adrián Arroyo Calle
b26e8b0e34
Website: link release v0.9.4
2024-03-12 22:23:12 +01:00
Mark
df41eb1870
recompile original terms from compile_clause for term to term expansions ( #2236 )
2024-03-01 18:57:01 -07:00
Mark Thom
90c602f867
Merge pull request #2354 from triska/side_channel
...
explain potential side-channel attacks due to compact string representation
2024-03-01 16:11:22 -07:00
Markus Triska
6b8a679a51
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!
2024-03-01 22:03:57 +01:00
Mark Thom
8b16a0e1f6
Merge pull request #2353 from triska/hmac_verification
...
ENHANCED: Safe HMAC verification, using constant time string comparison.
2024-03-01 12:09:16 -07:00
Markus Triska
ec251b254c
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).
2024-03-01 18:59:48 +01:00
Mark Thom
e0c8163211
Merge pull request #2351 from infogulch/install-current-iai
...
Install version of iai-callgrind set in Cargo.toml
2024-02-29 17:09:47 -07:00
infogulch
01f757c940
Install version of iai-callgrind set in Cargo.toml
2024-02-29 17:32:44 -06:00
Mark
42f4827854
make indexer downcast Integers to Fixnums when possible, be slightly more judicious about allocating Integers instead of Fixnums ( #2340 )
2024-02-29 16:15:28 -07:00
Mark
f2d3779fa9
add #2341 test to lib_machine.rs
2024-02-29 15:12:58 -07:00
Mark
b70f121e46
use scryer-modular-bitfield on github, version bump
CI / build-test (ubuntu-22.04, true, stable, x86_64-unknown-linux-gnu) (push) Has been cancelled
CI / build-test (windows-latest, true, stable, x86_64-pc-windows-msvc) (push) Has been cancelled
CI / logtalk-test (push) Has been cancelled
CI / style (push) Has been cancelled
CI / build-test (--no-default-features, ubuntu-22.04, true, nightly, wasm32-unknown-unknown, --no-run --no-default-features) (push) Has been cancelled
CI / build-test (macos-11, true, stable, x86_64-apple-darwin) (push) Has been cancelled
CI / build-test (ubuntu-20.04, true, stable, x86_64-unknown-linux-gnu) (push) Has been cancelled
CI / build-test (ubuntu-22.04, 1.70, x86_64-unknown-linux-gnu) (push) Has been cancelled
CI / build-test (ubuntu-22.04, beta, x86_64-unknown-linux-gnu) (push) Has been cancelled
CI / build-test (ubuntu-22.04, nightly, x86_64-unknown-linux-gnu) (push) Has been cancelled
CI / build-test (ubuntu-22.04, true, stable, i686-unknown-linux-gnu) (push) Has been cancelled
CI / report (push) Has been cancelled
CI / release (push) Has been cancelled
Docker Publish / build (push) Has been cancelled
v0.9.4
2024-02-29 10:08:14 -07:00
Mark
641765858f
fix misuse of TypeError trait while fixing #2345
2024-02-28 20:47:36 -07:00
Mark
ba362e2fe0
issue callable type error from dynamic_module_resolution if module is not an atom ( #2345 )
2024-02-28 20:35:38 -07:00
Mark Thom
84d5ce0d1e
Merge pull request #2309 from coasys/library-use-case
...
Iron-out edge cases for library use-case, adding extensive real-world test assertions
2024-02-28 14:34:54 -07:00
Mark Thom
419623d158
Merge pull request #2342 from triska/curve_doc
...
DOC: Add DocLog comments for reasoning about elliptic curves.
2024-02-24 14:53:18 -07:00
Markus Triska
1dd0c599c6
DOC: Add DocLog comments for reasoning about elliptic curves.
2024-02-24 20:43:57 +01:00
Mark Thom
c7934ca246
Merge pull request #2338 from triska/hmac
...
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).
2024-02-22 14:48:12 -07:00
Markus Triska
27852eafd7
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).
2024-02-22 20:53:27 +01:00
Mark Thom
d4bde5008d
Merge pull request #2337 from triska/master
...
link to newly available paper on analysis of dose-escalation protocols
2024-02-18 10:05:09 -07:00
Markus Triska
74a525a672
link to newly available paper on analysis of dose-escalation protocols
...
Many thanks to @dcnorris for this great application and cooperation!
2024-02-18 09:25:29 +01:00
Bennet Bleßmann
e9982dc447
fix build of run_iai bench for wasm32
2024-02-17 00:15:03 +01:00
Bennet Bleßmann
7028baaf8f
fix benchmarks being broken for every target except wam32
2024-02-17 00:01:10 +01:00
Bennet Bleßmann
7837c76c74
cfg out benches for wasm32
2024-02-16 23:43:22 +01:00
Bennet Bleßmann
e5ad70c093
fix compilation of wasm32 test and skip to run wasm32 tests
2024-02-16 23:18:21 +01:00
Bennet Bleßmann
7fce688769
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 >
2024-02-16 22:23:22 +01:00
Bennet Bleßmann
90c874777c
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
2024-02-16 22:15:32 +01:00
Mark Thom
70795134af
Merge pull request #2327 from triska/char_type
...
FIXED: char_type/2 for unbound first argument.
2024-02-11 17:33:07 -07:00
Markus Triska
8f2e9c6b94
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 .
2024-02-11 22:19:19 +01:00
Nicolas Luck
ce34ca8f1f
continue-on-error if target=wasm32 or rust=nightly
2024-02-09 13:48:45 +01:00
Nicolas Luck
7c632cf165
Reactivate nightly test job with continue-on-error set
2024-02-09 13:44:37 +01:00
Nicolas Luck
b3c5a8db80
Use stable Rust for style/report and deactivate nightly x86_64 target in CI
2024-02-09 13:14:06 +01:00
Nicolas Luck
1d2961e047
Merge branch 'master' into library-use-case
2024-02-09 12:41:01 +01:00
Mark Thom
b43f0979d9
Update src/machine/parsed_results.rs
...
Co-authored-by: Bennet Bleßmann <bennet.blessmann+github@googlemail.com >
2024-02-08 19:10:29 -07:00
Mark
539a1aee2c
fix tests broken by singleton
2024-02-07 21:46:32 -07:00
Mark Thom
8e323b9dfa
Merge pull request #2322 from triska/char_code
...
ENHANCED: Bi-directional char_code/2, addressing #2321 .
2024-02-07 18:49:13 -07:00
Markus Triska
53b7d9eec9
ENHANCED: Bidirectional char_type/2, addressing #2321 .
...
Suggested by @librarianmage, many thanks!
2024-02-07 20:57:28 +01:00
Mark Thom
89d3451767
Merge pull request #2319 from triska/clpz_t
...
ADDED: clpz_t/2, generalizing support for use with library(reif)
2024-02-06 18:11:40 -07:00
Markus Triska
aa98a7e7d6
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!
2024-02-06 19:05:29 +01:00
Mark
614850ab1d
fmt
2024-02-05 18:34:57 -07:00
Mark Thom
140a15f9cb
Merge pull request #2317 from aarroyoc/all-modules-test
...
Add all_mdoules test and fix library(csv)
2024-02-04 15:09:13 -07:00
Adrián Arroyo Calle
ec4a8745e7
Add all_mdoules test and fix library(csv)
2024-02-04 21:34:01 +01:00
Mark
673329ddb7
fix reverted tests, ensure files are loaded before goals ( #2315 )
2024-02-03 11:49:26 -07:00
Mark
6a421dd8b0
fix broken tests
2024-02-02 17:04:47 -07:00
Mark
de6c460a51
treat consultation of command line modules as regular goals ( #2314 )
2024-02-02 15:35:00 -07:00