Commit Graph

4636 Commits

Author SHA1 Message Date
Skgland
6c7d5e8278 more spelling fixes 2026-05-25 16:39:37 +02:00
Skgland
61ebcdb56e fix spelling 2026-05-24 23:55:19 +02:00
Skgland
f2195c2362 cleanup
- fix some warnings and mark others as expected
- make use of the msrv bump to 1.93.1 and cleanup compat and workarounds
2026-05-24 23:29:23 +02:00
Skgland
6150ca90d3 check individual features in CI 2026-05-24 23:00:27 +02:00
Skgland
938f588769 make crypto depending on ring optional 2026-05-24 23:00:27 +02:00
Mark Thom
61d94dceae Merge pull request #3290 from abmclin/bump-rustyline-version-18
bump `Rust` version to 1.93.1 and bump `rustyline` to version 18.0.0
2026-05-24 13:27:00 -06:00
Mark Thom
1411417a44 Merge pull request #3338 from drzv/master
Use make-process to call imagemagick in showterm.el
2026-05-24 13:22:33 -06:00
Mark Thom
609514b4b8 Merge pull request #3312 from Skgland/big-endian-miri
run miri for a big-endian target
2026-05-24 13:22:00 -06:00
Skgland
1fd9246b16 configure linker via env var insread of .cargo/config.toml
someone might already have a .cargo/config.toml
2026-05-24 19:08:23 +02:00
Skgland
19974e580b fix missing description
Github documentation states that it is a required field and my linter complained

https://docs.github.com/en/actions/reference/workflows-and-actions/metadata-syntax#description
2026-05-24 19:02:23 +02:00
Skgland
550efb8416 add a feature for things that are simple to cross-compile 2026-05-24 10:39:20 +02:00
Skgland
e0c491e9f3 fix miri not being passed the target 2026-05-24 10:39:20 +02:00
Skgland
f16850e5f8 fix ci and setup cross-compilation 2026-05-24 10:39:20 +02:00
Skgland
ca0d4e9aac add miri CI for a big endian target 2026-05-24 10:39:20 +02:00
Skgland
6e50268efb fix spelling again 2026-05-24 10:30:30 +02:00
Skgland
54b3034905 remove out-dated comment and fix spelling/grammar 2026-05-24 10:25:24 +02:00
Mark Thom
cf9e667b50 Merge pull request #3311 from Skgland/cleanup2
some cleanup and fixes
2026-05-23 18:27:50 -06:00
Mark Thom
3f0b471227 Merge pull request #3333 from 0nkery/lazy-lock
replace lazy_static macro with std::sync::LazyLock
2026-05-23 09:51:22 -06:00
Mark Thom
bfca60aa86 Merge pull request #3345 from triska/meetups
link to Scryer Prolog Meetup 2026 page and its announcement
2026-05-23 09:51:06 -06:00
Skgland
6b9a291f4e fix spelling 2026-05-23 11:28:45 +02:00
Markus Triska
777637001f link to Scryer Prolog Meetup 2026 page and its announcement 2026-05-23 10:17:11 +02:00
Mark Thom
9fcd7776a9 Merge pull request #3336 from 0nkery/fix-between-doc
fix var mode in between/3 documentation
2026-05-22 23:04:05 -06:00
Mark Thom
4f166f50a8 Merge pull request #3334 from Skgland/stable-order
use BTree{Map,Set} to ensure a stable order based on the key/entry
2026-05-22 22:56:13 -06:00
Mark Thom
1547839c33 Merge pull request #3328 from Skgland/update-libffi
upgrade libffi dependency
2026-05-22 22:53:49 -06:00
Mark Thom
5a1423d0f0 Merge pull request #3316 from josd/master
Improve CharReader buffering
2026-05-22 22:52:27 -06:00
Mark Thom
3faa838ee2 Merge pull request #3323 from triska/VATmiraal
add link to VATmiraal, https://vatmiraal.be
2026-05-22 22:45:39 -06:00
Skgland
e4792429d3 reuse tabu list 2026-05-17 20:50:37 +02:00
Skgland
d50d425099 ensure pdl is pushed/popped in pairs 2026-05-17 19:48:52 +02:00
drzv
0df5f7e576 Call ImageMagick with make-process. Redirect stderr to separate buffer 2026-05-14 19:10:05 +00:00
Dmitrii Shlagov
b9f1443eb0 fix var mode in between/3 documentation 2026-05-14 16:25:33 +02: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
Dmitrii Shlagov
2c60e4183f roll back gitignore changes 2026-05-12 17:15:28 +02:00
Dmitry Shlagoff
2bbb6487ec remove redundant closure 2026-05-12 16:12:33 +02:00
Dmitry Shlagoff
095fa1227a replace lazy_static macro with std::sync::LazyLock 2026-05-12 15:40:38 +02:00
Emilie Burgun
f395d554a5 RawBlock: finish proof of safety and defragment after growing
After calling `grow()`, the new head would jump to `old_capacity` rather
than staying to the same offset.

In practice this only loses a few bytes at most.
2026-05-10 22:36:11 +02:00
Emilie Burgun
ad614b684c RawBlock: switch to Cell or AtomicPtr instead of UnsafeCell
This is the first step towards enabling multithreading on AtomTable.

For now RawBlock will default to using Cell, which yields a byte-
equivalent compiled output.

Also adds an `atomic` feature, which, when enabled, will make RawBlock
use an AtomicPtr instead, ensuring that it implements `Sync`.
2026-05-10 22:36:11 +02:00
Emilie Burgun
898b6b2b25 RawBlock: seal base and add Stack::index_dangling_or_frame
Direct accesses to `base` are replaced with dedicated methods with
explicit safety requirements.
2026-05-10 22:36:11 +02:00
Emilie Burgun
3c5818a040 RawBlock: seal most fields, replace top with a capacity field 2026-05-10 22:24:57 +02:00
Skgland
0c313a0849 upgrade libffi dependency 2026-05-08 22:36:41 +02:00
Alexander McLin
7c9075b4ee Bump Cargo.toml rust-version to 1.93.1
MSRV discussion settled on `1.93.1` to align with upcoming Debian stable releases
2026-05-05 09:58:05 -04:00
Markus Triska
4c14cbe39a explanation of product
See posting by @constraintAutomaton at:

    https://github.com/mthom/scryer-prolog/pull/3323#issuecomment-4365798844

Many thanks!
2026-05-03 11:00:38 +02:00
Markus Triska
afe744aa57 add link to VATmiraal, https://vatmiraal.be 2026-05-03 09:52:28 +02:00
Skgland
89dde3f370 un-ignore lorem_ipsum tests as they are no longer slow 2026-04-30 19:54:39 +02:00
Skgland
f8ddd78776 optimize CharReader 2026-04-30 19:46:40 +02:00
Skgland
327a677a7c use a function rather than a closure 2026-04-30 19:02:27 +02:00
Skgland
48a34aa2cc add a test with bad utf-8 2026-04-30 19:01:34 +02:00
Skgland
af54fb2aba optimize put_back_char
Always encode the char directly into the buffer.
Only shift the buffer content if there isn't enough room in the front.
2026-04-26 14:13:55 +02:00
josd
b2dad66270 Improve CharReader buffering 2026-04-26 13:42:41 +02:00
Skgland
eac7ff680c fix ArenaPtr payload offset logic
the old logic would be incorrect if the payload has higher alignment than the ArenaHeader i.e. when there is padding between the ArenaHeader and the Payload
2026-04-25 18:12:32 +02:00
Skgland
b4db85c8c3 don't erase ptr type early when construction a Cons HeapCellValue
rather than passing an address as usize pass the ArenaHeader pointer
similarly don't return a u8 ptr but use a ArenaHeader pointer instead

Don't convert the pointer to a ConsPtr by going through native endian
bytes in between.
We are exploiting the fact that the 3 least significant bytes are zero
for pointer to types of alignment 8 and we expect these to line up with
the f, m, and tag field at the end of the ConsPtr struct, but using
native endiannes for this would only work on big endian systems.
2026-04-25 18:12:31 +02:00