Commit Graph
120 Commits
Author SHA1 Message Date
Danil Platonov f8f7b3b7e2 allow to stop and start http server at will with SIGINT, stop the server on uncaught throws, display timing info for each request, use setup_call_cleanup in more places to avoid potential leaks, when handler for a path doesn't have a matching case, throw a detailed error instead of silently continuing 2026-05-30 15:47:50 -07:00
Skgland ac18aed5a7 use BTree{Map,Set} to ensure a stable order based on the key/entry even if filesystem enumeration order changes
this should help with reproducibility
2026-05-14 01:02:19 +02:00
Mark Thom c2e1ded852 remove variant_hashing.rs and related instructions 2026-01-14 20:39:48 -08:00
Mark Thom 6284aa3a3f add variant_hash and is_non_variant to fix setof/3, bagof/3 2026-01-14 20:39:48 -08:00
Mark Thom 29cd80510b replace compare_term_test with parallel iterator, add is_not_variant 2026-01-14 20:39:45 -08:00
Skgland b14e363d5e run rustfmt to fix formatting 2026-01-10 18:31:40 +01:00
Bennet Bleßmann 87f89545bb restore accidentally removed comment 2026-01-10 18:30:09 +01:00
Skgland 5064760b1e fix spelling 2026-01-10 18:13:59 +01:00
Skgland eca4262be6 fix clippy lints 2026-01-10 17:52:34 +01:00
Skgland 73c26bed2a extaract the static part of the instructions template directly into the instructions module
This way goto source doesn't end up in a generated file for those parts and they can be edited directly.
I have way too often accidentally edited the generated file.
2026-01-10 17:48:07 +01:00
Mark Thom 4bd16b8a2e revise InstallVerifyAttrs to remove need for predicate scanning (#3175) 2025-11-25 23:17:51 -08:00
Mark Thom f2e044e5b8 remove interms field from MachineState 2025-11-24 22:19:36 -08:00
Skgland 80bf276e09 run rustfmt 2025-08-24 19:57:54 +02:00
Skgland 20d52c093a add ffi:{allocate,read_ptr,deallocate} 2025-08-24 19:56:23 +02:00
Skgland 35d34231f2 don't fail the build script if we couldn't parse a file
this way we get to the actual compilation in which rustc shouldl fail with a more helpfull error message
2025-08-24 19:56:17 +02:00
Mark Thom ad29f0f180 further improvements to cyclic partial list printing (#2635) 2025-08-23 13:23:39 -07:00
Skgland 348c5029b3 reduce msrv back to 1.85 2025-08-18 20:52:15 +02:00
David C. Norris af3792f79a library(numerics), special funs from crate puruspe 2025-08-10 10:01:01 -04:00
Bennet Bleßmann dc08a4ab11 get process_create working and add tests 2025-08-01 20:47:22 +02:00
Bennet Bleßmann ca52c65902 don't remove the child on wait/kill
- important for wait with timout(0) as we may want to try again until the process has realy exited.

- make process_release release the process instead
2025-08-01 20:33:15 +02:00
Bennet Bleßmann 746d4fd106 make atom!() with a new value less annoying 2025-08-01 20:27:53 +02:00
Bennet Bleßmann 97e2e5d7f0 implement process_release/1, process_wait/2, process_wait/3, and process_kill/1 2025-08-01 20:27:27 +02:00
Bennet Bleßmann ae0baf4893 [WIP] add support to spawn new processes 2025-08-01 20:18:13 +02:00
Bennet Bleßmann 72631b3e0b fix clone on copy values 2025-07-31 21:28:39 +02:00
Bennet Bleßmann 8cc74b2af7 fix clippy::uninlined_format_args 2025-07-31 21:26:08 +02:00
Mark Thom 1332611f83 use OffsetTableImpl without synchronization by default 2025-07-07 22:39:47 -07:00
Mark Thom 1297a24469 ensure '\0' atom is static & never inlined (#2880) 2025-07-07 22:38:12 -07:00
Mark Thom 9e1e99f961 Revert "remove Term"
This reverts commit 3b5879841aedecba5057c70c71da0ba23e5cd84a.
2025-07-07 22:38:10 -07:00
Mark Thom ae4d12a123 remove pstr_vec 2025-07-07 22:02:27 -07:00
Mark Thom c0f72704ec introduce bespoke Heap type for in-heap partial strings 2025-07-07 21:59:50 -07:00
Mark Thom f7bbdfe73a variable revision 2025-07-07 21:54:08 -07:00
Mark Thom 1ef681bd21 remove Term 2025-07-07 21:54:08 -07:00
Mark Thom c59f54252c Merge pull request #2683 from ffortier/master
Support hermetic build environment
2024-12-13 21:39:12 -07:00
notoria 8cde3f8ce3 Add '$random_integer'/3 2024-12-08 20:00:00 +01:00
Francis Fortier cef45de74a build: resolve include_str path during the compilation of libraries.rs instead of during he build.rs execution to support different build tools (bazel in this case) 2024-12-05 09:10:52 -05:00
bakaq 16734ec7e4 Fix Clippy 2024-09-06 21:34:49 -03:00
bakaq d32f3ee2f3 Fix warnings 2024-09-06 18:42:31 -03:00
bakaq ada9ba98cc Make macros private 2024-09-06 17:17:04 -03:00
Bennet Bleßmann 6b50ec328c move the creation of the LIBRARIES IndexMap out of the generated file
- only leave the filling of the map in the generated code
2024-07-25 18:53:36 +02:00
Bennet Bleßmann e7fd408548 use include_str! for the build in libraries
instead of "copy-paste-ing" the prolog source into rust string literals in the generated files
2024-07-23 00:01:29 +02:00
Bennet Bleßmann 1d66f91a41 replace ref_thread_local::ref_thread_local! with std::thread_local!
removes `ref_thread_local` which was still at 0.0.0 released October 2018 while latest 0.1.1 was released mid November 2021

fixes libraries.rs UB
2024-07-06 17:18:26 +02:00
Bennet Bleßmann d2d451b182 adjust the generation of the LIBRARIES map
pre-genrate constants instaed of driectly genrating the literal for the insert
2024-07-06 03:53:22 +02:00
Mark Thom bcfa0219e2 detect External indices more generally in internalize_constant (#2395) 2024-04-29 14:23:14 -06: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
Markus Triska 27852eafd7 ADDED: Hash-based message authentication code (HMAC), using hmac(Key). 2024-02-22 20:53:27 +01:00
Mark 614850ab1d fmt 2024-02-05 18:34:57 -07:00
Mark 6fe8f64835 scan registers of instructions leading to verify_attributes interrupt to find the number of registers to save (#2307) 2024-01-25 23:59:54 -07:00
Mark 6111f72b24 add non chunk traversing cut family instructions to is_head_instr (#2307) 2024-01-25 23:25:06 -07:00
Adrián Arroyo Calle 47b5ae7984 Move argv/1 to library(os) 2024-01-02 13:16:11 +01:00
Markus Triska 47ec5eb6c6 ENHANCED: Use crrl for Ed25519 signing and signature verification.
The main motivation for this change is the introduction of the newly
available predicate ed25519_seed_keypair/2, allowing to generate a key
pair from a given seed. In this way, a key pair can be dynamically
generated from (for example) a password, using crypto_password_hash/3
in combination with crypto_data_hkdf/4 to generate the seed. The
advantage of this method is that the private key need not be stored at
all anywhere.

It is not possible to add a corresponding feature to ring, since it is
closed as "not planned": https://github.com/briansmith/ring/issues/1003

I also used this opportunity to move more of the logic to Prolog. We
now have total control of the key pair representation, and I also
changed the representation to conform to the PKCS#8 v2 standard,
something that only later ring versions do, while still being
backwards compatible with tools that produce a wrong representation
including earlier ring versions.

Another great advantage we get from this change is that the Ed25519
predicates now also run on the 32-bit and WASM versions of Scryer.
2023-12-26 07:33:44 +01:00