Ian Shehadeh
938c5013c9
fix typo in janet_epoll_sync_callback
...
JANET_ASYNC_LISTEN_WRITE was checked instead of JANET_ASYNC_EVENT_READ.
This caused ev/read to hang if it was called on a normal fd.
2022-01-06 19:33:34 -05:00
sogaiu
1326ded048
Tweak match docstring
2021-12-25 16:56:10 +09:00
Michael Camilleri
97a8938407
Ensure value is of specified type or panic
2021-12-15 12:17:35 +09:00
Michael Camilleri
939d1dcae9
Only set :current-file in run-context if source is a path
2021-12-13 12:06:58 +09:00
Calvin Rose
9d5cc5c11f
Proper locking on select.
2021-12-09 18:59:59 -06:00
Calvin Rose
d998f24d26
Merge branch 'master' of github.com:janet-lang/janet
2021-12-09 18:47:36 -06:00
Calvin Rose
d543f8857b
Fix #892 - Remove racy ref counts for channels
...
Rather than manual reference counting for suspended fibers, we
automate the process by incrementing "extra_listeners" every time
we suspend a fiber in the event loop, and decrement when that fiber
is resumed. In this manner, we keep track of the number of suspending
fibers in a simpler, more correct way.
2021-12-09 18:44:55 -06:00
Michael Camilleri
bf29a54272
Clarify nested loop behaviour in loop macro
2021-12-09 10:41:56 +09:00
Calvin Rose
6d9286a202
Add some more changes to hashing to improve pointer hashing.
2021-12-07 08:36:08 -06:00
Calvin Rose
92fdd07ca3
Address #889 - Switch high and low bits of part of number hash (Knuth's multiplicative hash)
...
Also make sure we weren't throwing away 3 bits of entropy.
2021-12-07 08:24:04 -06:00
Calvin Rose
1c937ad960
Prepare for 1.19.2 release. Update CHANGELOG.md
2021-12-06 17:27:09 -06:00
Calvin Rose
f9891a5c04
More improvements to hashing for #889
2021-12-06 17:23:00 -06:00
Calvin Rose
e8ad311d84
Don't use janet_stacktrace anymore.
...
Behavior of janet_stacktrace_ext is more consistent.
2021-12-06 08:51:40 -06:00
Calvin Rose
545c09e202
Update hash mixing behavior - address #889
...
Try to have better behavior when mixing sub-hashes that are not uniform and
randomly distributed. Premultiply by a large prime before mixing to
"spread entropy" if it is concentrated in a certain subset of bits.
2021-12-05 16:34:26 -06:00
Calvin Rose
4dc281a05f
Prepare for 1.19.1 release.
2021-12-04 13:34:41 -06:00
Calvin Rose
d4c6643311
Merge branch 'master' of github.com:janet-lang/janet
2021-12-04 13:03:33 -06:00
Calvin Rose
e8c738002b
Add extra "prefix" parameter to debug/stacktrace.
2021-12-04 13:03:05 -06:00
Calvin Rose
309c3aaeb8
Merge pull request #867 from pyrmont/feature.custom-out-functions
...
Support sending output to a function
2021-12-04 11:17:58 -06:00
Calvin Rose
6f4af5fef8
Merge branch 'master' of github.com:janet-lang/janet
2021-12-04 10:28:16 -06:00
Calvin Rose
868cdb9f8b
Fix channel packing bug.
2021-12-04 10:28:00 -06:00
Grazfather
139bef2142
map: Fix indexing for 3+ data structures
2021-12-03 16:15:43 -05:00
Calvin Rose
8ba142bcf4
Merge branch 'master' of github.com:janet-lang/janet
2021-11-30 14:19:10 -06:00
Calvin Rose
c49e4966f6
Update to dev versions.
2021-11-30 14:19:03 -06:00
Michael Camilleri
6bf9f89429
Update location of current file in run-context
2021-11-29 10:05:04 +09:00
Calvin Rose
a0ddfcb109
Prepare for 1.19.0 release.
2021-11-27 10:00:36 -06:00
Calvin Rose
3df7921fdc
Don't call wait twice when closing or gcing.
2021-11-27 09:05:43 -06:00
Calvin Rose
6172a9ca2d
Merge branch 'master' of github.com:janet-lang/janet
2021-11-26 18:44:33 -06:00
Calvin Rose
4a40e57cf0
Fix leaking file descriptors to subprocess causing hangs.
2021-11-26 18:44:11 -06:00
Josef Pospíšil
e6babd84f7
Fix math/gamma and add math/log-gamma
2021-11-24 10:55:32 +01:00
Calvin Rose
e08394c870
Fix struct proto missing when making a struct with a nil value.
2021-11-23 23:16:06 -06:00
Calvin Rose
9e0f36e5a7
Fix unused variable warnings.
2021-11-18 20:35:41 -06:00
Calvin Rose
d481d079ba
Try bsd fix.
2021-11-18 20:30:06 -06:00
Calvin Rose
bc9ec7ac4a
Fix unitialized memory access in net/ module.
2021-11-18 20:10:10 -06:00
Calvin Rose
6f7e81067c
Address #876 Don't allow scheduling a fiber once it has been canceled already.
...
We were effectively cancelling the cancellation.
2021-11-18 20:06:29 -06:00
Calvin Rose
af946f398e
Turn off raw mode in shell on ctrl-C.
2021-11-18 19:58:52 -06:00
Calvin Rose
c7ca26e9c7
Merge branch 'master' of github.com:janet-lang/janet
2021-11-18 19:04:43 -06:00
Calvin Rose
ef7129f45d
Address #874 - Call waitpid on waiter thread with WNOWAIT.
...
This doesn't destory the pid until the original thread decides to
call waitpid again. Since the pid is exposed in the C API and now
in the Janet API, we don't want to destroy it until we are ready.
2021-11-18 19:03:08 -06:00
Andrew Chambers
2ef49a92cc
Use kill instead of raise for SIGINT.
...
Raise signals can only be handled by the current thread while
kill signals can be handled by background threads.
2021-11-15 20:38:23 +13:00
Michael Camilleri
4e263b8c39
Support using functions with :out dynamic binding
2021-11-13 01:42:44 +09:00
Calvin Rose
3cb604df02
Merge pull request #870 from andrewchambers/exposepid
...
Expose process :pid on unix like platforms.
2021-11-12 08:20:39 -06:00
Calvin Rose
af9dc7a69e
Merge pull request #869 from andrewchambers/typo2
...
Fix os/proc-kill doc typo.
2021-11-12 08:20:00 -06:00
Andrew Chambers
aab0e4315d
Expose process :pid on unix like platforms.
...
This at least means users can use something like jsys
or the kill command to signal processes when they want
to send unsupported signals (like SIGTERM).
2021-11-12 23:43:36 +13:00
Andrew Chambers
14f6517733
Fix os/proc-kill doc typo.
2021-11-12 23:29:13 +13:00
Andrew Chambers
5d75effb37
Allow C code to block SIGINT.
...
Previously the repl always exits on SIGINT, this change
means the repl will only exit on SIGINT if the SIGINT handler
causes it to exit.
2021-11-12 23:24:33 +13:00
Calvin Rose
425a0fcf07
Add quoted literal support in the match macro.
2021-11-08 15:33:11 -06:00
bakpakin
3067f4be3a
Address #815 - gc mark issue in windows accept state machine.
...
We were casting a pointer to the wrong type, which caused all sorts of
wonderful chaos, but only on windows and only when the garbage collector
ran after setting up a server in a specific configuration. We were
casting a closure pointer to an abstract type during the mark phase,
which resulted in memory corruption.
2021-11-06 17:50:54 -05:00
Calvin Rose
2833a983d8
Merge pull request #860 from sogaiu/short-fn-docstring-tweak
...
Tweak short-fn docstring
2021-11-04 19:39:55 -05:00
Calvin Rose
39c6be7cb7
Fix #861 - parser/produce caused state to be invalid for parser/state.
...
parser/produce was leaving a counter in the root state undecremented.
2021-11-04 19:38:37 -05:00
sogaiu
fdc94c1353
Tweak short-fn docstring
2021-11-04 18:11:53 +09:00
Calvin Rose
9cc4e48124
Update changelog and allow evaluating streams with dofile.
2021-10-30 14:43:06 -05:00