Calvin Rose
746ced5501
Revert behavior of deep= on mutable keys.
...
Mutable keys are a minefield for comparisons, as resolving
equality require re-implementing a lot of the internal structures, as
well as dealing with multiple mutable keys that are in the same
equivalency class by deep=.
Simplifying the implementation to not resole mutable keys is much
simpler, faster, and has the benefit that deep= and deep-not= do not
need to allocate.
2024-12-21 09:03:01 -06:00
Calvin Rose
1b49934e4f
Allow table/to-struct to take a prototype.
...
Use this prototype struct in freeze.
2024-12-19 19:41:19 -06:00
Calvin Rose
682f0f584f
freeze with mutable keys should be determinsic help address #1535
2024-12-19 19:31:01 -06:00
Calvin Rose
611b2a6c3a
Add more test cases for #1535
2024-12-19 18:37:51 -06:00
Calvin Rose
8043caf581
Update CHANGELOG.
2024-12-19 18:31:05 -06:00
Calvin Rose
b2d2690eb9
Merge pull request #1534 from pyrmont/bugfix.windows-longstrings
...
Support dedenting long-strings with Windows EOLs
2024-12-19 16:24:21 -08:00
Calvin Rose
7f745a34c3
Allow for mutable keys correctly in deep=
2024-12-19 18:20:05 -06:00
Calvin Rose
b16cf17246
Merge pull request #1533 from pyrmont/feature.file-socket
...
Add `ev/to-file` for synchronous resource operations
2024-12-17 20:50:47 -08:00
Michael Camilleri
67e8518ba6
Support dedenting longstrings with Windows EOLs
2024-12-17 05:14:59 +09:00
Michael Camilleri
e94e8dc484
Remove special casing for MinGW
2024-12-16 08:12:14 +09:00
Michael Camilleri
1a24d4fc86
Raise error if using ev/to-file
on MinGW
2024-12-15 21:00:52 +09:00
Michael Camilleri
6ee05785d1
Disable buffering for files created with ev/to-file
2024-12-15 20:37:58 +09:00
Michael Camilleri
268ff666d2
Move <fcntl.h> header to general imports
2024-12-15 20:02:41 +09:00
Michael Camilleri
91bb34c3bf
Add missing <io.h> header for Windows
2024-12-15 19:17:48 +09:00
Michael Camilleri
17d5fb3210
Fix ev/to-file
on Windows
2024-12-15 18:56:35 +09:00
Michael Camilleri
687b987f7e
Add ev/to-file
for synchronous resource operations
2024-12-15 17:38:01 +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
Calvin Rose
a85eacadda
Merge pull request #1532 from strangepete/fstat-directory-test
...
file/open: check if directory
2024-12-14 06:00:41 -08: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.
v1.37.1
2024-12-05 20:18:16 -06:00
Calvin Rose
85cb35e68f
Prepare for 1.37.0 release.
v1.37.0
2024-12-05 17:51:06 -06:00
Ian Henry
952906279c
add (til) PEG special
...
(til sep subpattern) is a specialized (sub) that behaves like
(sub (to sep) subpattern), but advances over the input like (thru sep).
2024-12-04 21:17:10 -08:00
Calvin Rose
5b79b48ae0
Address #1524 - fix meson cross compilation linking.
...
In the cross compilation case, we need to resolve our
dependencies on libc twice, once for the build machine and once for the
target machine. This includes pthreads, -libc, and android-spawn.
2024-12-03 21:05:37 -06:00
Calvin Rose
7c44127bcb
Merge pull request #1526 from sogaiu/master
...
Additional tweak to address #1523
2024-12-02 05:46:00 -08: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
Calvin Rose
4396f01297
More work on drawing example and frontend changes.
2024-12-01 08:43:54 -06:00
Calvin Rose
046d299d77
More work on x86 backend.
2024-11-26 11:18:46 -06:00
Calvin Rose
9fa9286fca
Add more drawing examples.
2024-11-25 09:42:00 -06:00
Calvin Rose
c13ef02ea2
Add drawing2.janet so we can keep the working drawing example.
2024-11-25 08:51:40 -06:00
Calvin Rose
6535d72bd4
Merge pull request #1522 from sogaiu/remove-pstatus
...
Remove unused var pstatus
2024-11-25 06:15:43 -08:00
Calvin Rose
52cedbc4b4
More work on drawing example.
2024-11-25 07:33:31 -06:00
sogaiu
a7d424bc81
Remove unused var pstatus
2024-11-25 12:39:53 +09:00
Calvin Rose
d345e551f1
Correct pointer arith type checking.
2024-11-24 20:06:16 -06:00
Calvin Rose
0fb1773c19
Merge branch 'master' into compile-opt
2024-11-24 19:15:47 -06:00
Calvin Rose
2bceba4a7a
Assertf with no arguments does not make sense.
2024-11-24 19:14:18 -06:00
Calvin Rose
a6ea38a23b
More working on pointer arithmetic.
2024-11-24 18:44:26 -06:00
Calvin Rose
bc79489068
Begin working on drawing example.
2024-11-24 15:53:20 -06:00
Calvin Rose
b096babcbf
Merge branch 'master' into compile-opt
2024-11-23 10:29:14 -06:00
Calvin Rose
e3159bb0f5
Update CHANGELOG.md
2024-11-23 10:29:03 -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
Calvin Rose
bafa6bfff0
Merge pull request #1519 from ianthehenry/fix-string-equal-with-byteview
...
fix janet_string_equalconst
2024-11-17 07:33:47 -08: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
Calvin Rose
9f4497a5ae
Merge pull request #1518 from pyrmont/bugfix.s390x-workflow
...
Update Docker command to use `--platform` flag
2024-11-11 12:24:20 -08:00
Michael Camilleri
70de8bf092
Update Docker command to use --platform flag
2024-11-12 04:02:54 +09:00
Calvin Rose
e52575e23a
Merge pull request #1517 from sogaiu/add-assertf
...
Add assertf and use in boot.janet. Address #1516
2024-10-31 07:27:05 -07:00
sogaiu
10994cbc6a
Add some tests for assertf
2024-10-30 23:41:31 +09:00
sogaiu
abad9d7db9
Add assertf and use in boot.janet. Address #1516
2024-10-30 17:43:00 +09:00
Calvin Rose
5e443cd29d
Merge pull request #1514 from ArtSin/fix-formatb-int32_t-arg
...
Cast arguments to `int32_t` before passing to `janet_formatb` with `%d` format specifier
2024-10-25 05:36:08 -07:00