Bennet Bleßmann
dc495f10f8
change behaviour in supposedly unreachable cases
2025-08-01 20:46:31 +02:00
Bennet Bleßmann
d2ffd4f4bf
adjust error for duplicate options
2025-08-01 20:35:12 +02:00
Bennet Bleßmann
87dbad2294
fix rename pid to process
2025-08-01 20:35:01 +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
7f233da10c
fix timeout default value in process_wait/3
2025-08-01 20:28:17 +02:00
Bennet Bleßmann
ff546a0f9a
incorporate suggestion by triska
2025-08-01 20:28:07 +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
1ee4f7a55f
store child process in machine state
2025-08-01 20:21:36 +02:00
Bennet Bleßmann
43dd1587fb
handle some error cases and replace unwrap with expect
2025-08-01 20:21:23 +02:00
Bennet Bleßmann
8971809c83
adjust errors
2025-08-01 20:21:13 +02:00
Bennet Bleßmann
e321f29b9c
rename pid to process
2025-08-01 20:21:02 +02:00
Bennet Bleßmann
129c80bf16
undo changes to error.pl
2025-08-01 20:20:52 +02:00
Bennet Bleßmann
183761eba4
adjust default cwd
2025-08-01 20:20:41 +02:00
Bennet Bleßmann
6c7833b9c7
restructure option parsing
2025-08-01 20:20:31 +02:00
Bennet Bleßmann
82e989f631
add comments and try to fix binding the child process pid
2025-08-01 20:20:20 +02:00
Bennet Bleßmann
2b052bf8dd
fix more things
2025-08-01 20:20:09 +02:00
Bennet Bleßmann
003e9d4610
get it working
2025-08-01 20:19:54 +02:00
Bennet Bleßmann
d79ece2497
fix indices
2025-08-01 20:18:44 +02:00
Bennet Bleßmann
ae0baf4893
[WIP] add support to spawn new processes
2025-08-01 20:18:13 +02:00
Bennet Bleßmann
4f04d2dfca
replace .skip(n).next() with .nth(n)
2025-07-31 21:47:12 +02:00
Bennet Bleßmann
de89a78cbb
remove unecessary cast
2025-07-31 21:47:11 +02:00
Bennet Bleßmann
e7600884fb
remove unecessary into_iter
2025-07-31 21:47:11 +02:00
Bennet Bleßmann
3365cffa96
prefere for loop
2025-07-31 21:47:10 +02:00
Bennet Bleßmann
df3f1236f7
replace always erroring of_else with map_err
2025-07-31 21:47:09 +02:00
Bennet Bleßmann
8766851919
replace single non-wildcard pattern match with if let
2025-07-31 21:47:09 +02:00
Bennet Bleßmann
014d1b0095
remove already implied must_use
2025-07-31 21:47:08 +02:00
Bennet Bleßmann
c885d1a7e7
collaps els-if / if-if
2025-07-31 21:47:08 +02:00
Bennet Bleßmann
7593f88d5a
ingore nerver looping loop, but add a todo
2025-07-31 21:47:07 +02:00
Bennet Bleßmann
6885074006
fix clippy::unit_arg
2025-07-31 21:47:07 +02:00
Bennet Bleßmann
73cc872b50
check not empty instead of len > 0
2025-07-31 21:47:06 +02:00
Bennet Bleßmann
fae5e13bd5
impl From rather than Into
2025-07-31 21:47:05 +02:00
Bennet Bleßmann
6d7c217227
fix unecessary mut
2025-07-31 21:47:05 +02:00
Bennet Bleßmann
166ec02973
ignore clippy::unbuffered_bytes in test helper functions
2025-07-31 21:47:04 +02:00
Bennet Bleßmann
1d26f98688
fix legacy int constants
2025-07-31 21:47:04 +02:00
Bennet Bleßmann
58b9a6ad69
ignore wrong self convention
2025-07-31 21:47:03 +02:00
Bennet Bleßmann
a639fec153
fix match/if-let can be simplified to ?
2025-07-31 21:47:03 +02:00
Bennet Bleßmann
495bcd73f2
fix unecessary return
2025-07-31 21:46:52 +02:00
Bennet Bleßmann
ae3019d923
fix unecessary reference/dereference
2025-07-31 21:46:51 +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
Bennet Bleßmann
7199e9a2db
remove outdated comment
2025-07-31 20:07:57 +02:00
Bennet Bleßmann
edf21494d9
also run CI on rebis-dev
2025-07-31 20:07:07 +02:00
Bennet Bleßmann
725def07cd
fix crash when loading html
2025-07-07 22:39:47 -07:00
Bennet Bleßmann
cbdd0fbf15
make Fixnum::build_with harder to accidentally misuse
...
change trait bound order for better
2025-07-07 22:39:34 -07:00
Bennet Bleßmann
7a5a5bb795
fix spelling and grammar errors found by mthom
...
https://github.com/mthom/scryer-prolog/pull/2791#discussion_r1930025598
2025-01-27 20:40:12 +01:00
Bennet Bleßmann
b74c8139d1
fix ci and update all used actions
2025-01-23 19:53:59 +01:00
Bennet Bleßmann
6dd0ec0b98
fix miri
2024-10-04 20:25:02 +02:00
Bennet Bleßmann
e9f03c89a6
fix issue #2588
2024-10-04 19:25:34 +02:00
Bennet Bleßmann
8f41c1aa7e
Merge remote-tracking branch 'upstream/master' into issue-2588
2024-10-04 19:11:26 +02:00
Bennet Bleßmann
442636c131
add test for load_html
2024-10-04 19:09:35 +02:00
Bennet Bleßmann
c24a51b633
fix looping from issue 2467
2024-08-17 23:37:12 +02:00
Bennet Bleßmann
620bf385d1
include the type name for better pin-pointing of the error source
...
- only done here as all other places are non-generic and the panic already includes file and line info, only here are we in a generic context and might need more differentiation
2024-08-11 21:53:02 +02:00
Bennet Bleßmann
cc51b8150d
check whether (re-)allocation succeeded
...
fixes mthom/scryer-prolog#2449
2024-08-11 19:20:33 +02:00
Bennet Bleßmann
775b14c537
add detail to comment
2024-08-11 19:20:27 +02:00
Bennet Bleßmann
058b9c5e51
switch invalid term from type to domain error
2024-08-05 21:25:44 +02:00
Bennet Bleßmann
deed6fb984
fix remaining use of declaration instead of directive
2024-08-05 21:25:43 +02:00
Bennet Bleßmann
2d04c0dcf8
remove obsolete ExistenceError::Declaration
2024-08-05 21:25:43 +02:00
Bennet Bleßmann
5a0abd713e
change declaration to directive
2024-08-05 21:25:43 +02:00
Bennet Bleßmann
df33da111e
ajust/add devlaration errors to be more standard compliant
2024-08-05 21:25:43 +02:00
Bennet Bleßmann
17a816eff4
impl PartialEq<str> and PartialEq<&str> for Atom
2024-08-05 21:25:42 +02:00
Bennet Bleßmann
880e22d164
adjust errors to be more standard compliant
2024-08-05 21:25:42 +02:00
Bennet Bleßmann
c16d2d4147
fix compilation for 1.77
2024-08-05 21:25:42 +02:00
Bennet Bleßmann
59af900aaf
split up CompilationError::InconsistentEntry
2024-08-05 21:25:42 +02:00
Bennet Bleßmann
add03cb4ee
add test for declaration errors
2024-08-05 21:25:42 +02:00
Bennet Bleßmann
409f56ea37
use an enum for OpDesc spec
2024-08-05 21:25:36 +02:00
Bennet Bleßmann
4009b40029
replace derive_deref with derive_more
...
- the latter already used in our transitive dependencies
- derive_more appears better maintained
2024-08-04 02:40:26 +02:00
Bennet Bleßmann
260c52adec
replace select by scrape
...
- the latter appears better maintained and more up to date
- removes some dupplicate/outdated transitive deps
2024-08-04 02:35:36 +02:00
Bennet Bleßmann
b1f057b67d
resolve problems from deps upgrade
...
- downgrade reqwest to 0.11.27
- fixes problems with missmatched transitive dependencies between it and warp, mainly http
- replace deprecated ripemd160 with ripemd (as specified in the formers readme)
- indexmap: replace deprecated remove with functionally identical swap_remove
2024-08-04 01:57:25 +02:00
Bennet Bleßmann
177bc16255
update/upgrade dependencies
2024-08-04 01:41:03 +02:00
Bennet Bleßmann
9e8d8aa19e
prevent accidental double free by checking tag before drop
2024-08-03 19:36:05 +02:00
Bennet Bleßmann
4d3ceb387e
drop payload after resetting machine
...
- under some circumstances the payload is accessed durring reset which would cause a segfault if we drop the payload too early
2024-08-03 19:27:32 +02:00
Bennet Bleßmann
c29b76143c
fix copy-past error
2024-07-26 00:13:49 +02:00
Bennet Bleßmann
3ad4b05a97
add a features for gating things we can use once 1.80 is msrv
2024-07-25 23:09:17 +02:00
Bennet Bleßmann
0da313eb84
use a OnceLock static for LIBRARIES instead of thread_local! static
2024-07-25 18:58:29 +02: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
1eb6a883f6
run rustfmt
2024-07-23 00:01:58 +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
5d03be4b09
fix leak of slaps with dropped payload
2024-07-07 19:22:46 +02:00
Bennet Bleßmann
689632b51c
cleanup the slab types
...
- get rid of HeaderOrIdxPtr
- add IndexPtrSlab
- add UntypedArenaSlab
- add to_untyped for converting a typed slab into an unsyped slab
- remove TypedArenaPtr::new, as they shouldn't be created outside of this module
2024-07-07 17:12:52 +02:00
Bennet Bleßmann
1b19ae81d5
wrap Payloads that are dropped eraly in ManuallyDrop
2024-07-07 15:58:31 +02:00
Bennet Bleßmann
a0d790445d
check that we don't attempt to un-drop while evacuating
2024-07-07 14:37:41 +02:00
Bennet Bleßmann
213ee5ca45
add AllocateInArena as a Pivot for arena_alloc!
...
so that the value type passed to `arena_alloc!` can differ from the `ArenaAllocated::Payload` type
2024-07-07 14:36:53 +02:00
Bennet Bleßmann
74720d4d2e
remove unsafe impl From<UntypedArenaPtr> for CodeIndex
2024-07-07 14:18:50 +02:00
Bennet Bleßmann
496e4e9f56
fix clippy again
2024-07-07 11:31:36 +02:00
Bennet Bleßmann
89c1ea4232
fix leak of ArenaAllocated IndexPtr
2024-07-07 11:30:56 +02:00
Bennet Bleßmann
a2a50586aa
replace static Once and two mut statics with one static OnceLock
2024-07-07 11:30:56 +02:00
Bennet Bleßmann
0284a2092d
reduce span of unsafe block
2024-07-07 11:30:37 +02:00
Bennet Bleßmann
c414f75329
switch macos to latest as macos-11 has been removed
...
See https://github.com/actions/runner-images/issues/9255
2024-07-06 18:47:35 +02:00
Bennet Bleßmann
943dce566b
fix clippy
2024-07-06 18:26:34 +02:00
Bennet Bleßmann
b32498b37c
adjust ignore reason
2024-07-06 18:24:38 +02:00
Bennet Bleßmann
ea041a40f9
if UB un IndexPtr ArenaAllocated impl
2024-07-06 17:43:13 +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
fee7ba58b0
fix stack alignement
...
- adjust align() in RawBlockTraits impl for Stack
- ensure ptr is always aligned in RawBlock::allock
2024-07-06 16:21:59 +02:00
Bennet Bleßmann
8e53d12776
make components a comma seperated string instead of a list
2024-07-06 16:01:52 +02:00
Bennet Bleßmann
33793193cc
add miri to CI
2024-07-06 15:46:04 +02:00
Bennet Bleßmann
285f11ccdc
add associated Payload type to ArenaAllocated
2024-07-06 15:37:08 +02:00
Bennet Bleßmann
d87400afa0
switch Rcu to the arcu crate
...
The arcu crate is a more general implementation of the Rcu I implemented in here in scryer. It contains some bug-fixes regarding race-conditions in the Rcu update function, which could cause leaks and uses after free.
Source of the problem was the Relaxed load/strore/update of the reference count in side the Arc not being properly ordered with other load/stores.
2024-07-06 14:49:19 +02:00
Bennet Bleßmann
fcb41542c3
fix stream.rs UB
2024-07-06 14:30:03 +02:00
Bennet Bleßmann
87b4c9d736
somehow this was never marked as bad
2024-07-06 14:30:03 +02:00