Calvin Rose
8680aef42f
Merge pull request #1146 from zevv/os-clock
...
Add clock sources to os/clock (:realtime, :monotonic, :cputime)
2023-05-21 08:35:24 -05:00
Calvin Rose
c3fd71d643
Merge pull request #1142 from tionis/thaw
...
added thaw to complement freeze
2023-05-21 08:09:47 -05:00
Ico Doornekamp
30c47d685d
Fixed :cputime because msdn does not implement clock() properly
2023-05-21 07:29:27 +02:00
Ico Doornekamp
80db682109
Added tests for os/clock
2023-05-21 07:29:27 +02:00
Ico Doornekamp
e8e5f66f4c
Implement janet_gettime() for win32 and macos; need testing
2023-05-21 07:29:27 +02:00
Ico Doornekamp
aaf3d08bcd
Added 'source' argument to os/clock to select the clock source
2023-05-21 07:29:27 +02:00
Ico Doornekamp
61132d6c40
os/time and janet_gettime now use CLOCK_MONOTONIC instead of CLOCK_REALTIM, this matches the description from the documentation of os/clock. Fixes issue #1144
2023-05-21 07:29:27 +02:00
tionis
9cc0645a1e
added test for thaw and freeze
2023-05-20 17:35:25 +02:00
Calvin Rose
fc8c6a429e
Modulo should not be variadic.
2023-05-20 07:45:18 -05:00
Calvin Rose
2f966883d9
Fix #1145 - variadic imperative arith. macros.
...
Also update CHANGELOG
2023-05-20 07:42:50 -05:00
tionis
320ba80ca1
added support for tables/structs with prototypes in thaw
2023-05-20 14:00:33 +02:00
Calvin Rose
b621d4dd2e
Merge pull request #1139 from zevv/async-connect
...
changed net/connect to be non-blocking / asynchronous
2023-05-19 21:12:16 -05:00
tionis
56d927c72d
added thaw to complement freeze
2023-05-19 21:18:54 +02:00
Ico Doornekamp
89debac8f6
Fixed janet_loop1_impl stream use after dealloc
2023-05-19 20:00:59 +02:00
Calvin Rose
f2197fa2d8
Merge pull request #1141 from zevv/mingw-test
...
Add CI test for mingw/wine on linux
2023-05-19 07:25:47 -05:00
Ico Doornekamp
a6a097c111
Add CI test for mingw/wine on linux
2023-05-18 15:15:41 +02:00
Ico Doornekamp
c3e28bc924
added deferred closing of streams after async connect() fails
2023-05-18 14:10:22 +02:00
Ico Doornekamp
8d78fb1f6b
changed net/connect to be non-blocking / asynchronous
2023-05-18 10:55:48 +02:00
Calvin Rose
148917d4ca
Move -g to CFLAGS to make it easier to remove/customize
2023-05-16 21:10:18 -05:00
Calvin Rose
d8cf9bf942
Merge pull request #1140 from zevv/debug-symbols
...
Enable debug symbols in janet binary; strip target at 'make install'
2023-05-16 21:08:12 -05:00
Calvin Rose
d6f5a060ed
Squashed commit of the following:
...
commit 725b8749464895e21c761f1c5479692335282f62
Author: Calvin Rose <calsrose@gmail.com>
Date: Tue May 16 20:58:34 2023 -0500
Update header file.
commit 38bf2a5131
Author: Calvin Rose <calsrose@gmail.com>
Date: Tue May 16 19:43:22 2023 -0500
Run experiment on bsd.
2023-05-16 21:00:31 -05:00
Calvin Rose
692b6ef8ac
Merge pull request #1138 from zevv/setsockopt
...
add net/setsockopt
2023-05-16 19:29:25 -05:00
Ico Doornekamp
ac5f1fe1be
enable debug symbols in janet binary; strip target at 'make instal'
2023-05-16 19:48:18 +02:00
Ico Doornekamp
2a6c615bec
features.h: define _DARWIN_C_SOURCE for __APPLE__
2023-05-15 16:55:09 +02:00
Ico Doornekamp
ab8c5a0b5f
net/setsockopt optname symbols are now lower case
2023-05-15 15:25:09 +02:00
Ico Doornekamp
68c35feaea
Formatting
2023-05-15 12:33:37 +02:00
Ico Doornekamp
88d0c2ca0f
add net/setsockopt
2023-05-15 12:15:36 +02:00
Calvin Rose
398833ebe3
Enable FFI module unconditionally.
2023-05-14 09:18:54 -05:00
Calvin Rose
358f5a03bf
Version bump to 1.28.0
2023-05-13 09:59:55 -05:00
Calvin Rose
fba1fdabe4
Update short-fn to fix #1123
...
Symbols are renamed on expansion to avoid the issue.
2023-05-13 09:44:30 -05:00
Calvin Rose
d42afd21e5
Merge branch 'master' of github.com:janet-lang/janet
2023-05-12 19:08:35 -05:00
Calvin Rose
20ada86761
Fix NAN typo.
2023-05-12 19:08:26 -05:00
Calvin Rose
3b353f1855
Merge pull request #1133 from zevv/cross
...
Updated Makefile for better cross-compilation support.
2023-05-12 08:41:54 -05:00
Calvin Rose
1467ab4f93
Copy paste error.
2023-05-11 20:56:12 -05:00
Calvin Rose
7e65c2bdad
Fix #1130 - mod flipped for signed integers.
2023-05-11 18:15:37 -05:00
Calvin Rose
84a4e3e98a
Update CHANGELOG.
...
and format.
2023-05-11 18:03:38 -05:00
Calvin Rose
bcbeedb001
Merge pull request #1128 from zevv/master
...
Added os.strftime()
2023-05-11 18:01:39 -05:00
Calvin Rose
e04b103b5d
Merge pull request #1134 from CosmicToast/const_sourceline
...
Make JANET_FN_S* sourceline const
2023-05-11 17:59:27 -05:00
Chloe Kudryavtsev
ac75b94679
Make JANET_FN_S* sourceline const
...
Otherwise attempts to use it on some platforms cause the following error
`error: initializer element is not a compile-time constant`
when attempting to use the corresponding `JANET_REG`.
2023-05-11 16:07:34 -04:00
Ico Doornekamp
d3bb06cfd6
Updated Makefile for better cross-compilation support.
...
Building janet requires janet_boot to be run on the host at build time;
- $(UNAME) can now be overridden from the make cmdline
- Added $(RUN) variable to allow a emulator to be specified
- Added ".exe" extension to binaries when using MINGW
Examples:
Cross compiling for win32 and running under wine:
```
make test \
CC=i686-w64-mingw32-gcc \
LD=i686-w64-mingw32-gcc \
UNAME=MINGW \
RUN=wine
Janet 1.27.0-ad7c3bed mingw/x86/gcc - '(doc)' for help
```
Cross compiling for aarch64 and running under qemu:
```
make repl \
CC=aarch64-none-linux-gnu-gcc \
LD=aarch64-none-linux-gnu-gcc \
RUN="qemu-aarch64 -L /tmp/aarch64/"
Janet 1.27.0-ad7c3bed linux/aarch64/gcc - '(doc)' for help
```
2023-05-11 07:46:36 +02:00
Ico Doornekamp
5cd729c4c1
Added os.strftime()
2023-05-11 06:08:19 +02:00
Calvin Rose
c9fd2bdf39
Merge branch 'master' of github.com:janet-lang/janet
2023-05-10 18:46:42 -05:00
Calvin Rose
e4be5992b3
Address issue with #1131
2023-05-10 18:43:33 -05:00
Calvin Rose
2ac4988f1b
Merge pull request #1124 from sogaiu/tweak-ev-select-docstring
...
Tweak ev/select docstring
2023-05-08 04:17:25 -05:00
Calvin Rose
19f14adb9e
Update changelog.
2023-05-07 21:07:22 -05:00
Calvin Rose
86de039492
Merge branch 'master' of github.com:janet-lang/janet
2023-05-07 11:54:20 -05:00
Calvin Rose
2360164e4f
Address #1125 - fix ev/select to only take and release locks once.
...
By take and releasing locks twice per channel in the case where nothing
is reading, there was an opportunity for ev/select to hang in the
multithreaded case. Also silence valgrind/helgrind errors.
2023-05-07 11:54:06 -05:00
Calvin Rose
c93ddceadb
Merge pull request #1122 from CosmicToast/getcbytes
...
Add get/opt cbytes
2023-05-07 10:33:09 -05:00
sogaiu
cd19dec44a
Tweak ev/select docstring
2023-05-07 22:22:33 +09:00
Chloe Kudryavtsev
53ba9c800a
Add get/opt cbytes
...
Like getcstring, but operates on a byteview.
When writing bindings (i.e what capi.c is primarily used for), it's
common to want to accept a buffer *or* a string rather than just
a string.
For this, a byteview is perfect (and why not accept keywords while
you're at it?).
However, there's no built-in function for getting a cstring out of
a byteview, this adds one.
This also reformulates getcstring to be an edge-case of getcbytes
(simply adding an explicit check for stringness).
2023-05-06 22:13:53 -04:00