1
0
mirror of https://github.com/janet-lang/janet synced 2026-01-22 10:54:47 +00:00

4799 Commits

Author SHA1 Message Date
Calvin Rose
606a1fc11a Merge pull request #1696 from amano-kenji/master
Document empty? more clearly.
2026-01-20 07:59:00 -06:00
amano.kenji
a2db57b9dc Document empty? more clearly. 2026-01-20 12:31:28 +00:00
Calvin Rose
f021bb2839 janet-format boot.janet 2026-01-18 13:05:55 -06:00
Calvin Rose
979233dee5 Update changelog and spelling 2026-01-18 11:09:01 -06:00
Calvin Rose
78a785175a Allow redirecting :err to :out with os/execute, no just os/spawn. 2026-01-17 22:37:35 -06:00
Calvin Rose
268864b072 Don't use new flag on mingw test. 2026-01-17 22:15:03 -06:00
Calvin Rose
06f099d7f9 Make sure to run test with old flags as well. 2026-01-17 20:25:06 -06:00
Calvin Rose
6549903c51 Add option to explicity inherit handles rather than implicitly. 2026-01-17 20:07:12 -06:00
Calvin Rose
c1dff351d9 Improve stacktraces for macros that use defer.
Previously, they would show up as `defer` in stack traces.
2026-01-17 19:59:28 -06:00
Calvin Rose
4aa5615a37 On windows, streams created with os/open improved.
We now set bInheritHandles to true when creating them, which makes it
possible to pass them to subprocesses. Before, it would fail silently
in strange ways often simply losing data. Also added flags to disable
OVERLAPPED_IO on windows and O_NONBLOCK on posix.
2026-01-17 18:19:17 -06:00
Calvin Rose
67932bbaed On windows, make sure to use FILE_ATTRIBUTE_NORMAL by default. 2026-01-17 17:04:56 -06:00
Calvin Rose
4575cefb7e Add shorthand for os test. 2026-01-17 10:11:56 -06:00
Calvin Rose
d5a014baff Fix reference. 2026-01-17 07:43:43 -06:00
Calvin Rose
eb825772bb Add more information to process creation failure on windows. 2026-01-17 07:29:45 -06:00
Calvin Rose
ee2985f5e3 Merge pull request #1695 from nfgrusk/add-omitted-word-in-docstrings
Add omitted word "is" in docstrings
2026-01-16 21:29:34 -06:00
Nora Gruner
5819408715 Add omitted word "is" in docstrings. 2026-01-17 00:28:58 +01:00
Calvin Rose
8fe284b5eb Fix pathologically slow insertion pattern.
The correct resizing behavior for arrays and buffers was done for
`janet_putindex` but not for `janet_put`. This change copies the correct
behavior to `janet_put`.
2026-01-15 13:04:11 -06:00
Calvin Rose
19b5502f50 Simplify ev/gather and add ev/go-gather.
This allows using `ev/gather` semantics on a dynamic number of tasks and
not relying on the macro magic.
2026-01-14 17:33:10 -06:00
Calvin Rose
0a5ff208a8 Disable ipv6 for now in main test. 2026-01-12 08:00:11 -06:00
Calvin Rose
d35f189446 Turn strict linting back on. 2026-01-12 07:57:41 -06:00
Calvin Rose
216c9799f5 Some more work on socket testing and allow setting ipv4 vs. ipv6 on raw
sockets.
2026-01-12 07:41:14 -06:00
Peter Rippe
5966017232 use u_char for IP_MULTICAST_TTL sockopt on BSD 2026-01-12 06:06:27 -06:00
Calvin Rose
f80690e4c9 Version bump for wip 1.41.x 2026-01-10 15:40:04 -06:00
Calvin Rose
9bc308532f Make varfn correctly handle verbose metadata.
The macro would previously choke on `(varfn abc {:abc 123} ...)` due
to mishandling of structs and tables as metadata. This caused issues
when running `janet -d` with spork.
2026-01-10 14:04:48 -06:00
Calvin Rose
7a8d8444fe Simplify dynamic binding setup in cli-main.
Instead of manually putting bindings into environment tables, just use
`setdyn` to set the bindings based on the command line flags. This
results in easier to understand behavior and prevents "swallowing" of
options. For example, linting and debug flags should be set in the
root-env by default so that they are used in all loaded modules.
2026-01-10 13:37:42 -06:00
Calvin Rose
15cea60589 Revert "Reworking coloring logic for repl and CLI interface."
This reverts commit 10954fe0d7.
2026-01-10 13:20:02 -06:00
Calvin Rose
10954fe0d7 Reworking coloring logic for repl and CLI interface. 2026-01-10 13:15:46 -06:00
Calvin Rose
70fb13eb48 Fix -w flag with repl. 2026-01-10 12:35:41 -06:00
Calvin Rose
cb355815ee Turn on strict linting in test suite. 2026-01-10 08:37:09 -06:00
Calvin Rose
ddc7cc5ae4 Warn on unused bindings (strict lint).
This does create a lot of warnings, especially in the test suite, but
should improve code and point out real issues.

To disable individual messages, either disable linting, add the metadata :unused to a
binding, or add the prefix "_" to a symbol.
2026-01-10 07:59:11 -06:00
Calvin Rose
84ced08810 Add test case. 2026-01-09 08:15:18 -06:00
Calvin Rose
7b0b9f57e8 Make os/realpath error on windows if path does not exist. 2026-01-09 08:04:07 -06:00
Calvin Rose
80da028aeb Add linting to address #1688
Warn when defining macros on inner scopes, and also point out unused
metadata as well.
2026-01-04 08:19:18 -06:00
Calvin Rose
f881f4dba9 Merge pull request #1690 from pyrmont/bugfix.copyright-2026
Update year in copyright disclaimer to 2026
2026-01-03 10:47:57 -06:00
Michael Camilleri
6e4b0b9259 Update year in copyright disclaimer to 2026 2026-01-02 14:14:53 +09:00
Calvin Rose
d5a56caa33 Add fix for issue #1687 - destrucutre + splice
An optimization to ellude creation of intermediate tuples was
erroneously flagging a splice as invalid, even though it was valid.
Instead, if we see splice on the rhs, bail out of the optimization.
2025-12-22 07:40:29 -06:00
Calvin Rose
7d672f43fc Merge pull request #1686 from pyrmont/bugfix.windows-empty-env 2025-12-14 22:05:03 -06:00
Michael Camilleri
7810724ed2 Exclude MinGW on WINE from special case 2025-12-15 12:04:14 +09:00
Michael Camilleri
1e73fa7ec7 Add special case for expected error on MinGW 2025-12-15 11:27:46 +09:00
Michael Camilleri
9b1194b08a Use double-NULL byte for empty process environments on Windows 2025-12-15 10:00:03 +09:00
Calvin Rose
d3f5b541ee Merge pull request #1683 from llmII/fix-unix-sockets
Fix unix sockets issue on FreeBSD
2025-12-14 13:23:33 -06:00
Calvin Rose
3a3c0dec7a Merge pull request #1685 from sogaiu/tweak-int-max-min-docstrings
Fix math/int-{max,min} docstrings
2025-12-14 13:21:39 -06:00
Calvin Rose
bb3cf7d83b Add missing uinteger janet_opt* funcitons. 2025-12-14 11:46:57 -06:00
sogaiu
9bc47e766e Fix math/int-{max,min} docstrings 2025-12-14 13:41:00 +09:00
llmII
978c4e8b69 Fix unix sockets issue on FreeBSD
Sometimes a unix socket has a 0 status return which indicates the connection
immediately succeeded, at which point entering the event loop waiting on the
connection to complete actually breaks things.

It seems on FreeBSD with events being edge triggered, we're awaiting a
connection to signal it's writeable (to complete the connection) but that
never occurs (the event already took place before we registered for the
event). Going by status alone to determine if we should enter into the event
loop to await the complete connection seems sensible here.
2025-12-13 16:56:56 -06:00
Calvin Rose
2544c4ae1a Add os/cpu-count get defaults. 2025-12-13 06:20:50 -06:00
Calvin Rose
7f9d92a73b Formatting 2025-12-13 06:00:16 -06:00
Calvin Rose
898e93bc4a Merge pull request #1679 from pixelherodev/master
Take 2: 9front port, using 9front's Native Porting/Posix Environment
2025-12-13 05:57:17 -06:00
Noam Preil
715dd413cc plan9: support %r format to read errstr 2025-12-12 10:32:43 +00:00
Noam Preil
1971d7df0a plan9: use _Exit 2025-12-12 09:52:30 +00:00