]>
Repositorios git - scryer-prolog.git/log
Javier Sagredo [Tue, 16 Jun 2026 22:26:41 +0000 (00:26 +0200)]
Merge branch 'js/pio-phrase-from-stream' into js/integration
Javier Sagredo [Tue, 16 Jun 2026 22:26:22 +0000 (00:26 +0200)]
Merge branch 'js/tls-process-docs' into js/integration
Javier Sagredo [Tue, 16 Jun 2026 21:49:12 +0000 (23:49 +0200)]
Proper backtracking on interrupted socket/http listeners
Javier Sagredo [Mon, 15 Jun 2026 21:43:40 +0000 (23:43 +0200)]
Better visuals for documentation in library(tls), library(process)
1. Trailing whitespaces makes Doclog not render lists as lists.
2. TLS module documentation was only visible in Prolog source code.
Javier Sagredo [Mon, 15 Jun 2026 21:14:18 +0000 (23:14 +0200)]
Allow using non-terminating streams in phrase_from_stream
Mark Thom [Thu, 11 Jun 2026 07:38:04 +0000 (00:38 -0700)]
Merge pull request #3331 from adri326/rawblock-safety
Prove safety of RawBlock and support multi-threaded usages
Mark Thom [Fri, 5 Jun 2026 20:55:21 +0000 (13:55 -0700)]
Merge pull request #3363 from Skgland/adjust-discussion-3359-test
adjust regression test for discussion 3359
Mark Thom [Fri, 5 Jun 2026 20:54:49 +0000 (13:54 -0700)]
Merge pull request #3364 from Skgland/finish-msrv-bump-cleanup
finish msrv bump cleanup
Skgland [Fri, 5 Jun 2026 18:47:20 +0000 (20:47 +0200)]
remove unecessary use of LayzLock
AtomicBool::new const
Skgland [Fri, 5 Jun 2026 18:45:18 +0000 (20:45 +0200)]
fix lint warnings
Skgland [Fri, 5 Jun 2026 18:44:38 +0000 (20:44 +0200)]
cleanup after msrv bump
Skgland [Fri, 5 Jun 2026 18:27:22 +0000 (20:27 +0200)]
adjust regression test for discussion 3359
- incorporate fix from https://github.com/mthom/scryer-prolog/commit/
3a2d57db33d49139d13c1e8cfba6eb3d79bcec19 #commitcomment-
187528793
- mark as should panic rather than ignored, this ensures that the test will be updated should this get fixed
Mark Thom [Thu, 4 Jun 2026 20:11:08 +0000 (13:11 -0700)]
Merge pull request #3299 from danilp-id/interrupt_test
Test: SIGINT should be able to interrupt non-terminating goals on linux
Danil Platonov [Thu, 4 Jun 2026 19:25:54 +0000 (12:25 -0700)]
fix merge
Danil Platonov [Thu, 4 Jun 2026 19:08:36 +0000 (12:08 -0700)]
Merge branch 'master' into interrupt_test
Mark Thom [Thu, 4 Jun 2026 17:56:09 +0000 (10:56 -0700)]
Merge pull request #3362 from danilp-id/socket_interrupt
Handle interrupts for socket_server_accept/4
Danil Platonov [Thu, 4 Jun 2026 09:41:11 +0000 (02:41 -0700)]
handle interrupts for tcp server
Mark Thom [Wed, 3 Jun 2026 20:36:21 +0000 (13:36 -0700)]
Merge pull request #3352 from danilp-id/http_interrupt
Interrupts support for http server + other improvements
Mark Thom [Wed, 3 Jun 2026 20:35:56 +0000 (13:35 -0700)]
Merge pull request #3360 from Skgland/fix-discussion-3359
Fix discussion 3359
Skgland [Wed, 3 Jun 2026 20:05:07 +0000 (22:05 +0200)]
ignore added test on i686-unknown-linux-gnu
appears to have been broken even before
d50d42509903dc3cc1841eb757a703753de84754
so has a different cause that needs to be investigated
Skgland [Wed, 3 Jun 2026 19:09:58 +0000 (21:09 +0200)]
fix discussion 3359
Skgland [Wed, 3 Jun 2026 19:09:39 +0000 (21:09 +0200)]
add regression test for discussion 3359
Mark Thom [Wed, 3 Jun 2026 05:19:21 +0000 (22:19 -0700)]
Merge pull request #3357 from Skgland/fix-issue3346
ensure ParallelHeapIter pushes its stack in pairs and fix 3346
Danil Platonov [Tue, 2 Jun 2026 07:49:00 +0000 (00:49 -0700)]
use Notify instead of Sender
Skgland [Mon, 1 Jun 2026 21:59:37 +0000 (23:59 +0200)]
fix parallel heap iter
Skgland [Mon, 1 Jun 2026 21:58:17 +0000 (23:58 +0200)]
use a pair for ParallelHeapIter
to ensure it is pushed popped in pairs
Danil Platonov [Sat, 30 May 2026 22:59:16 +0000 (15:59 -0700)]
unused code for unimplemented shutdown on timeout feature
Danil Platonov [Sat, 30 May 2026 22:56:18 +0000 (15:56 -0700)]
cargo fmt
Danil Platonov [Sat, 30 May 2026 22:47:50 +0000 (15:47 -0700)]
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
Danil Platonov [Sat, 30 May 2026 18:45:57 +0000 (11:45 -0700)]
Test that SIGINT interrupts non-terminating goals on unix.
Cleanup: use tokio::test instead of special test helpers
Added pty_exec.py helper script to run binaries with a pseudoterminal attached (bug won't trigger otherwise).
Tested CI to fail on all unixes (ubuntu+macos) with older rustyline, and pass with new one.
Mark Thom [Thu, 28 May 2026 23:34:52 +0000 (16:34 -0700)]
Merge pull request #3347 from drzv/im7-compat2
showterm.el: use new magick command by default, fallback to convert
Mark Thom [Tue, 26 May 2026 20:01:23 +0000 (14:01 -0600)]
Merge pull request #3272 from abmclin/windows_improve_notty_stdin_support
Windows improve notty stdin support to resolve issue 3264
drzv [Tue, 26 May 2026 12:14:54 +0000 (08:14 -0400)]
showterm.el: use new magick command by default, fallback to convert
drzv [Tue, 26 May 2026 01:55:01 +0000 (01:55 +0000)]
showterm.el: revert #3338
Alexander McLin [Mon, 25 May 2026 22:24:24 +0000 (18:24 -0400)]
Issue 3264: rebase and update dependencies
Alexander McLin [Tue, 14 Apr 2026 19:27:52 +0000 (15:27 -0400)]
Issue 3264 add rationale comment & `#[allow(...)]`
Explain why no multibyte UTF-8 encoding support
Disable `bytes()` clippy warning about performance penalty due to unbuffered bytes
Alexander McLin [Sun, 12 Apr 2026 12:42:15 +0000 (08:42 -0400)]
Issue 3264: refactor `supported_terminal`
Use better code style
Alexander McLin [Sat, 11 Apr 2026 01:57:23 +0000 (21:57 -0400)]
Issue 3264: reformat to conform to style guidelines
Alexander McLin [Mon, 30 Mar 2026 01:29:48 +0000 (21:29 -0400)]
Fixes issue 3264 by adding a fallback read mode when reading from non-tty stdin on Windows
Mark Thom [Mon, 25 May 2026 21:10:02 +0000 (15:10 -0600)]
Merge pull request #3342 from Skgland/pdl-pairs
ensure pdl is pushed/popped in pairs and reuse tabu_list allocation by moving it from a local variable into the machine state
Mark Thom [Mon, 25 May 2026 21:08:37 +0000 (15:08 -0600)]
Merge pull request #3310 from Skgland/process_wait-release
add `release(Bool)` option to `process_wait/3`
Mark Thom [Mon, 25 May 2026 20:36:04 +0000 (14:36 -0600)]
Merge pull request #3320 from Skgland/all-pure-rust
add a feature for enabling all features that don't pull in non pure rust dependencies
Mark Thom [Mon, 25 May 2026 20:03:31 +0000 (14:03 -0600)]
Merge pull request #3317 from Skgland/optimize-put_back_char
optimize put_back_char
Skgland [Mon, 25 May 2026 17:07:20 +0000 (19:07 +0200)]
merge crypto-impure feature into feature crypto-full
Skgland [Mon, 25 May 2026 14:39:37 +0000 (16:39 +0200)]
more spelling fixes
Skgland [Sun, 24 May 2026 21:55:19 +0000 (23:55 +0200)]
fix spelling
Skgland [Mon, 27 Apr 2026 20:54:36 +0000 (22:54 +0200)]
cleanup
- fix some warnings and mark others as expected
- make use of the msrv bump to 1.93.1 and cleanup compat and workarounds
Skgland [Mon, 27 Apr 2026 20:53:05 +0000 (22:53 +0200)]
check individual features in CI
Skgland [Sat, 25 Apr 2026 19:17:48 +0000 (21:17 +0200)]
make crypto depending on ring optional
Mark Thom [Sun, 24 May 2026 19:27:00 +0000 (13:27 -0600)]
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
Mark Thom [Sun, 24 May 2026 19:22:33 +0000 (13:22 -0600)]
Merge pull request #3338 from drzv/master
Use make-process to call imagemagick in showterm.el
Mark Thom [Sun, 24 May 2026 19:22:00 +0000 (13:22 -0600)]
Merge pull request #3312 from Skgland/big-endian-miri
run miri for a big-endian target
Skgland [Sun, 24 May 2026 17:02:59 +0000 (19:02 +0200)]
configure linker via env var insread of .cargo/config.toml
someone might already have a .cargo/config.toml
Skgland [Sun, 24 May 2026 17:02:23 +0000 (19:02 +0200)]
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
Skgland [Mon, 27 Apr 2026 19:33:08 +0000 (21:33 +0200)]
add a feature for things that are simple to cross-compile
Skgland [Sat, 25 Apr 2026 22:17:33 +0000 (00:17 +0200)]
fix miri not being passed the target
Skgland [Sat, 25 Apr 2026 19:41:59 +0000 (21:41 +0200)]
fix ci and setup cross-compilation
Skgland [Sat, 25 Apr 2026 19:27:03 +0000 (21:27 +0200)]
add miri CI for a big endian target
Skgland [Sun, 24 May 2026 08:30:30 +0000 (10:30 +0200)]
fix spelling again
Skgland [Sun, 24 May 2026 08:25:24 +0000 (10:25 +0200)]
remove out-dated comment and fix spelling/grammar
Mark Thom [Sun, 24 May 2026 00:27:50 +0000 (18:27 -0600)]
Merge pull request #3311 from Skgland/cleanup2
some cleanup and fixes
Mark Thom [Sat, 23 May 2026 15:51:22 +0000 (09:51 -0600)]
Merge pull request #3333 from 0nkery/lazy-lock
replace lazy_static macro with std::sync::LazyLock
Mark Thom [Sat, 23 May 2026 15:51:06 +0000 (09:51 -0600)]
Merge pull request #3345 from triska/meetups
link to Scryer Prolog Meetup 2026 page and its announcement
Skgland [Sat, 23 May 2026 09:28:45 +0000 (11:28 +0200)]
fix spelling
Markus Triska [Sat, 23 May 2026 08:14:15 +0000 (10:14 +0200)]
link to Scryer Prolog Meetup 2026 page and its announcement
Mark Thom [Sat, 23 May 2026 05:04:05 +0000 (23:04 -0600)]
Merge pull request #3336 from 0nkery/fix-between-doc
fix var mode in between/3 documentation
Mark Thom [Sat, 23 May 2026 04:56:13 +0000 (22:56 -0600)]
Merge pull request #3334 from Skgland/stable-order
use BTree{Map,Set} to ensure a stable order based on the key/entry
Mark Thom [Sat, 23 May 2026 04:53:49 +0000 (22:53 -0600)]
Merge pull request #3328 from Skgland/update-libffi
upgrade libffi dependency
Mark Thom [Sat, 23 May 2026 04:52:27 +0000 (22:52 -0600)]
Merge pull request #3316 from josd/master
Improve CharReader buffering
Mark Thom [Sat, 23 May 2026 04:45:39 +0000 (22:45 -0600)]
Merge pull request #3323 from triska/VATmiraal
add link to VATmiraal, https://vatmiraal.be
Skgland [Sun, 17 May 2026 18:50:37 +0000 (20:50 +0200)]
reuse tabu list
Skgland [Sun, 17 May 2026 17:45:55 +0000 (19:45 +0200)]
ensure pdl is pushed/popped in pairs
drzv [Thu, 14 May 2026 19:10:05 +0000 (19:10 +0000)]
Call ImageMagick with make-process. Redirect stderr to separate buffer
Dmitrii Shlagov [Thu, 14 May 2026 14:25:33 +0000 (16:25 +0200)]
fix var mode in between/3 documentation
Skgland [Wed, 13 May 2026 22:50:37 +0000 (00:50 +0200)]
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
Dmitrii Shlagov [Tue, 12 May 2026 15:14:19 +0000 (17:14 +0200)]
roll back gitignore changes
Dmitry Shlagoff [Tue, 12 May 2026 14:12:33 +0000 (16:12 +0200)]
remove redundant closure
Dmitry Shlagoff [Tue, 12 May 2026 13:39:35 +0000 (15:39 +0200)]
replace lazy_static macro with std::sync::LazyLock
Emilie Burgun [Sun, 10 May 2026 18:00:02 +0000 (20:00 +0200)]
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.
Emilie Burgun [Sun, 10 May 2026 17:21:36 +0000 (19:21 +0200)]
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`.
Emilie Burgun [Sun, 10 May 2026 13:07:08 +0000 (15:07 +0200)]
RawBlock: seal `base` and add Stack::index_dangling_or_frame
Direct accesses to `base` are replaced with dedicated methods with
explicit safety requirements.
Emilie Burgun [Sun, 10 May 2026 11:53:58 +0000 (13:53 +0200)]
RawBlock: seal most fields, replace `top` with a `capacity` field
Skgland [Fri, 8 May 2026 20:36:41 +0000 (22:36 +0200)]
upgrade libffi dependency
Alexander McLin [Tue, 5 May 2026 13:58:05 +0000 (09:58 -0400)]
Bump Cargo.toml `rust-version` to `1.93.1`
MSRV discussion settled on `1.93.1` to align with upcoming Debian stable releases
Markus Triska [Sun, 3 May 2026 09:00:14 +0000 (11:00 +0200)]
explanation of product
See posting by @constraintAutomaton at:
https://github.com/mthom/scryer-prolog/pull/3323#issuecomment-
4365798844
Many thanks!
Markus Triska [Sun, 3 May 2026 07:51:42 +0000 (09:51 +0200)]
add link to VATmiraal, https://vatmiraal.be
Skgland [Thu, 30 Apr 2026 17:54:39 +0000 (19:54 +0200)]
un-ignore lorem_ipsum tests as they are no longer slow
Skgland [Thu, 30 Apr 2026 17:44:31 +0000 (19:44 +0200)]
optimize CharReader
Skgland [Thu, 30 Apr 2026 17:02:27 +0000 (19:02 +0200)]
use a function rather than a closure
Skgland [Thu, 30 Apr 2026 17:01:34 +0000 (19:01 +0200)]
add a test with bad utf-8
Skgland [Sun, 26 Apr 2026 11:43:04 +0000 (13:43 +0200)]
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.
josd [Sun, 26 Apr 2026 11:42:41 +0000 (13:42 +0200)]
Improve CharReader buffering
Skgland [Sat, 25 Apr 2026 14:39:53 +0000 (16:39 +0200)]
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
Skgland [Wed, 22 Apr 2026 21:22:27 +0000 (23:22 +0200)]
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.
Skgland [Wed, 22 Apr 2026 20:42:35 +0000 (22:42 +0200)]
fix unused import warning on windows
Skgland [Fri, 17 Apr 2026 23:29:28 +0000 (01:29 +0200)]
fix large enum variant size difference warning of PermVarAllocation
by wrapping BranchNumber in an Arc.
PermVarAllocation::Done had size 208 and is now down to 32.
A Box rather than an Arc would be smaller, but it looks like BranchNumber/BranchDesignator are clones a bunch so I expect it to be beneficial to reduce allocations both of the Box itself as well as its content.
Skgland [Sat, 25 Apr 2026 13:19:41 +0000 (15:19 +0200)]
fix linux tests on 1.85
old rust versions didn't print the pid
Skgland [Sat, 25 Apr 2026 11:56:48 +0000 (13:56 +0200)]
adjust test expectations
Skgland [Sat, 25 Apr 2026 10:59:20 +0000 (12:59 +0200)]
add process_wait/3 release(Bool) option
make process_wait/3 release the Process by default
Skgland [Sat, 25 Apr 2026 10:49:14 +0000 (12:49 +0200)]
add tests