Michael Camilleri
67e8518ba6
Support dedenting longstrings with Windows EOLs
2024-12-17 05:14:59 +09:00
Calvin Rose
4daecc9a41
Prevent await inside janet_call - address #1531
...
This was partially implemented before, but not in the case where the
await or other signal itself was created by a C function. We have to
separate code paths for generating signals - one via normal returns in
janet_vm_continue, and the other via longjump. This adds handling for
the longjump case, as well as improved messaging.
2024-12-14 10:34:36 -06:00
peteee
ed63987fd1
use fileno()
...
Should use fileno() instead of direct
2024-12-14 07:17:28 -05:00
peteee
ff173047f4
file/open: check if directory
...
Adds fstat() directory test after fopen(), which can return non-NULL when passed a directory name on Linux
2024-12-13 00:20:44 -05:00
Calvin Rose
83e8aab289
Prepare for 1.37.1 release and fix CI.
2024-12-05 20:18:16 -06:00
Calvin Rose
85cb35e68f
Prepare for 1.37.0 release.
2024-12-05 17:51:06 -06:00
sogaiu
9338312103
Additional tweak to address #1523
2024-12-02 11:21:56 +09:00
Calvin Rose
a0eeb630e7
Correct documentation for issue #1523
...
net/* API documentation was not consistent with the implementation. The
`ev/*` module documentation was, however. On timeout, all networking
function calls raise an error and do not return nil. That was the old
behavior.
2024-12-01 09:04:03 -06:00
sogaiu
a7d424bc81
Remove unused var pstatus
2024-11-25 12:39:53 +09:00
Calvin Rose
2bceba4a7a
Assertf with no arguments does not make sense.
2024-11-24 19:14:18 -06:00
Calvin Rose
5d1bd8a932
Add an extra has mix round to string hashes.
...
This should improve hashing quality of strings.
2024-11-17 11:31:12 -06:00
Ian Henry
e2eb7ab4b2
fix janet_string_equalconst
...
Check string length before pointer equality, so that a string is not considered
equal to a prefix slice of itself.
2024-11-16 21:20:26 -08:00
sogaiu
abad9d7db9
Add assertf and use in boot.janet. Address #1516
2024-10-30 17:43:00 +09:00
ArtSin
ad77bc391c
Cast arguments to int32_t
before passing to janet_formatb
with %d
format specifier
...
`s->line` and `s->column` in `delim_error` are `size_t`, which is typically 64-bit, but `va_arg` in `janet_formatbv` reads `int32_t` for `%d`.
2024-10-20 12:03:40 +04:00
Calvin Rose
2b84fb14b4
Fix Issue #1512
2024-10-18 18:17:06 -05:00
Calvin Rose
07155ce657
Don't error on empty struct.
2024-10-18 17:53:21 -05:00
Calvin Rose
282f2671ea
Formatting.
2024-10-11 20:10:46 -05:00
Calvin Rose
3fc2be3e6e
Use _Exit since it is standard in c99
2024-10-11 20:10:04 -05:00
Calvin Rose
d10c1fe759
Use msvc compiler intrinsics for atomics.
...
This will let us use GCC atomics on mingw.
2024-10-11 20:03:06 -05:00
Calvin Rose
43a68dcd2a
Include windows.h for atomics always in capi.c
2024-10-10 20:32:28 -05:00
Calvin Rose
99f0af92bd
Fix bundle/install with :check true installation failure.
2024-10-05 12:34:10 -05:00
Calvin Rose
71d81b14a2
Setting a profile will mess with imports.
2024-10-05 12:13:44 -05:00
Calvin Rose
3894f4021a
Update copyright date.
2024-09-29 16:07:24 -05:00
Calvin Rose
2570e0f7a0
Add *repl-prompt*.
2024-09-21 08:58:04 -05:00
Calvin Rose
8084e4c728
Add support for multiple directories in JANET_PATH.
...
Use a colon ":" as the separator on posix, and semicolon ";" on
windows (and mingw).
2024-09-20 23:05:02 -05:00
sogaiu
906a982ace
Add some detail to signal docstring
2024-09-17 20:04:16 +09:00
Calvin Rose
88e60c309c
Add overflow check.
2024-09-12 17:28:53 -05:00
Calvin Rose
9694aee819
Add rules for nth and only-tags. Address #1503
...
These rules allow selecting from a number of sub-captures
while dropping the rest. `nth` is more succinct in many cases, but `only-tags` is
more general and corresponds to an internal mechanism already present.
2024-09-12 17:23:34 -05:00
Calvin Rose
c0d7a49b19
Prepare for 1.36.0 release.
2024-09-07 12:33:28 -05:00
Calvin Rose
f9a6f52d9c
Improve error messages even more for copyfile
.
2024-09-07 10:02:26 -05:00
Calvin Rose
1fcd47dd7b
Improve error messages in bundle/add if files are missing.
...
Instead of cryptic "error: unknown method :close invoked on nil" errors, let
user know file or path does not exist before failing to copy files.
2024-09-07 09:19:15 -05:00
Calvin Rose
9ffec43d2b
Fix endianess issues on s390x architecture.
...
Endianess code should use memcpy instead of unions. This apparently
is more correct on old, optimizing compilers. Technically, this is
compilers being really stupid but we work with what we got.
That said, this endianess code is more complicated than needed.
2024-09-06 10:23:31 -05:00
Calvin Rose
e4f4a42751
Add regression test for chat server issues. Address #1496
2024-09-06 08:05:56 -05:00
Calvin Rose
4f65c2707e
Undo workaround for unsetting reference from streams -> fibers after
...
async event completes. Moves this logic back into janet_async_end.
2024-09-06 00:20:50 -05:00
Calvin Rose
75bdea5155
Fix memory leak with weak table frees.
...
The backing buffer for weak arrays and tables was not freed upon
being garbage collected. This shows up in traces and valgrind. Verified
by running `make valtest` with changes.
2024-09-06 00:15:17 -05:00
Calvin Rose
f553c5da47
Update ev.c with workaround for failing chat server.
...
2 issues:
- With poll backend, we were polling for writes even after we finished
writing. Presents as wasting a lot of CPU.
- Fixes strange closing behavior of chat server.
2024-09-06 00:00:09 -05:00
Calvin Rose
828e0a07cd
Don't check for docstrings when explicitly disabled.
2024-08-31 17:23:28 -05:00
Calvin Rose
90018b35c0
Begin standardizing of event properties for filewatch.
...
- `:file-name` for the name of the file that triggered the event.
- `:dir-name` for the containing directory of the file
- `:type` for the event type.
2024-08-31 14:26:08 -05:00
Calvin Rose
5a199716cb
Save :source-form in environment when debugging is enabled.
2024-08-29 21:12:53 -05:00
Calvin Rose
43ecd4f2d8
Add fixes for marshalling weak containers - Fix #1488
...
Weak containers did not preserve their weakness when marshalled. This
fixes that for tables and arrays, as well as adds some tests for this.
Also exposes functions for creating weak tables in janet.h
2024-08-22 19:37:41 -05:00
Calvin Rose
ce528251d5
Fix mingw build warnings.
2024-08-20 18:06:57 -05:00
Calvin Rose
b63b3bef74
Add testing for Linux.
2024-08-18 15:44:59 -05:00
Calvin Rose
c56d6e8fc1
Add suite for testing filewatch.
...
Currently expects windows events.
2024-08-18 10:12:33 -07:00
Calvin Rose
33d2f9a522
More changes how we use WideCharToMutliByte
...
Handle case where there is no data pushed in.
2024-08-18 07:23:06 -07:00
Calvin Rose
e53d22fad2
Add unlisten for linux.
2024-08-18 06:25:25 -07:00
Calvin Rose
33f55dc32f
Go back to ReadDirectoryChangesExW since it is better.
2024-08-18 05:29:08 -07:00
Calvin Rose
7e6aad2221
filewatch/make -> filewatch/new
...
Add support for :recursive on windows.
2024-08-17 16:37:30 -07:00
Calvin Rose
3c0c22259c
ReadDirectoryChangesExW is only supported in recent windows.
...
Also break mingw builds it seems.
2024-08-17 13:33:39 -07:00
Calvin Rose
42f6af4bf1
First working version of filewatch on windows.
2024-08-17 12:37:58 -07:00
Calvin Rose
f274b02653
More changes for filewatch windows.
2024-08-17 10:26:43 -05:00