Releases: janet-lang/janet
Releases · janet-lang/janet
Janet 1.36.0
What's Changed
- Add support for the AAPCS64 calling convention by @SyrupThinker in #1468
- Add ctrl + left/right arrow support to the REPL by @Darazaki in #1471
- Add default output path for --compile (-c) by @Andriamanitra in #1472
- Do not warn when loop body is empty by @sogaiu in #1476
- Fix fallback support in polymorphic compare by @pyrmont in #1480
- Prefix bin+sep to add-bin dest argument by @sogaiu in #1485
- Move bundle/add-bin changelog line to unreleased by @sogaiu in #1492
- Move other unreleased change out of v1.35.2 section by @pyrmont in #1494
- Don't try to copy janet.def by @sogaiu in #1498
New Contributors
- @SyrupThinker made their first contribution in #1468
- @Darazaki made their first contribution in #1471
Full Changelog: v1.35.2...v1.36.0
Janet 1.35.2
Patch release to fix some issues with 1.35.0
Janet 1.35.0
1.35.0 - 2024-06-15
- Add
:only
argument toimport
to allow for easier control over imported bindings. - Add extra optional
env
argument toeval
andeval-string
. - Allow naming function literals with a keyword. This allows better stacktraces for macros without
accidentally adding new bindings. - Add
bundle/
module for managing packages within Janet. This should replace the jpm packaging
format eventually and is much simpler and amenable to more complicated builds. - Add macros
ev/with-lock
,ev/with-rlock
, andev/with-wlock
for using mutexes and rwlocks. - Add
with-env
- Add
*module-make-env*
dynamic binding - Add buffer/format-at
- Add long form command line options for readable CLI usage
- Fix bug with
net/accept-loop
that would sometimes miss connections.
- Build janet with Cosmopolitan Libc by @ahgamut in #1440
- Add ffi/defbind-alias by @wishdev in #1445
- Add LoongArch64 support by @znley in #1448
- Fix buffer push uint max by @pnelson in #1457
New Contributors
Full Changelog: v1.34.0...v1.35.0
Janet 1.34.0
What's Changed
- add a new (split) PEG special by @ianthehenry in #1346
- Add buffer/push-* sized int and float by @pnelson in #1359
- Update CHANGELOG.md by @pepe in #1360
- Cosmetically tweak module/expand-path docstring by @sogaiu in #1364
- Address #1370 by @sogaiu in #1373
- Fix typo in destructuring by @pepe in #1371
- Tweak debug/stacktrace docstring (#1365) by @sogaiu in #1367
- Tweak fiber/last-value docstring by @sogaiu in #1389
- Add to propagate docstring (#1365) by @sogaiu in #1392
- Fix: make
proc_get_status
compliant to OS documentation. by @llmII in #1403 - Swap set / body order for each (#1400) by @sogaiu in #1402
- Improve documentation on subprocess API by @amano-kenji in #1394
- Fix documentation of peg/replace by @MaxGyver83 in #1414
- Doc tweaks for ev/deadline and ev/with-deadline by @sogaiu in #1410
- Prepare for 1.34.0 by @pepe in #1429
- Add exists test for dist directory on build command clean by @pepe in #1430
- Add additional format options for os/clock by @wishdev in #1432
New Contributors
- @pnelson made their first contribution in #1359
- @amano-kenji made their first contribution in #1394
- @MaxGyver83 made their first contribution in #1414
- @wishdev made their first contribution in #1432
Full Changelog: v1.33.0...v1.34.0
Janet 1.33.0
What's Changed
- Add more + and * keywords to default-peg-grammar by @sogaiu in #1313
- Use libc strlen in janet_buffer_push_cstring by @williewillus in #1314
- net/ev: Cleaned up unused NetStateConnect, fixed janet_async_end() ev refcount by @zevv in #1325
- fix (doc next) by @iacore in #1334
- Fix arity typo in peg by @pepe in #1336
- Cosmetically tweak string/format docstring by @sogaiu in #1340
- Add a new (sub) PEG special by @ianthehenry in #1344
- Prepare for 1.33.0 release by @pepe in #1351
New Contributors
- @williewillus made their first contribution in #1314
Full Changelog: v1.32.1...v1.33.0
Janet 1.32.1
Small fix over v1.32.0 that fixes wasm build.
Janet 1.32.0
- Fix return value from C function
janet_dobytes
when called on Janet functions that yield to event loop. - Change C API for event loop interaction - get rid of JanetListener and instead use
janet_async_start
andjanet_async_end
. - Rework event loop to make fewer system calls on kqueue and epoll.
- Expose atomic refcount abstraction in janet.h
- Add
array/weak
for weak references in arrays - Add support for weak tables via
table/weak
,table/weak-keys
, andtable/weak-values
. - Fix compiler bug with using the result of
(break x)
expression in some contexts. - Rework internal event loop code to be better behaved on Windows
- Update meson build to work better on windows
Janet 1.31.0
What's Changed
- Rework
keys
,values
,pairs
by @primo-ppcg in #1241 - Rework
reverse
by @primo-ppcg in #1242 - Move
bytes?
,indexed?
,dictionary?
to corelib by @primo-ppcg in #1244 - Speed up
compare
functions by @primo-ppcg in #1249 - Rework
reverse
, again by @primo-ppcg in #1252 - Use typedefs for strings, symbols, keywords, tuples, structs, and abstracts. by @wooosh in #1246
- Special case common
sort
usages by @primo-ppcg in #1255 - Add
buffer/from-bytes
by @primo-ppcg in #1259 - Update
each
keys before body by @primo-ppcg in #1258 - Update
any?
,every?
by @primo-ppcg in #1257 - Speed up
min
,max
by @primo-ppcg in #1266 - Optimize nil conditions for while and if by @primo-ppcg in #1269
- Allow one-term
:range
and:down
forms by @primo-ppcg in #1278 - Add
lengthable?
by @primo-ppcg in #1280 - Update
interleave
,interpose
by @primo-ppcg in #1281 - Update
partition
,mean
by @primo-ppcg in #1283 - Document array/push variadic argument by @pepe in #1287
- Add
:unless
loop modifier by @primo-ppcg in #1289 - Report line and col more in janet_dobytes by @sogaiu in #1288
New Contributors
Full Changelog: v1.30.0...v1.31.0
Janet 1.30.0
What's Changed
- Use vm_commit by @sogaiu in #1200
- Avoid prematurely closing file descriptors when redirecting IO by @pyrmont in #1201
- Add C escape sequences by @czkz in #1203
- Avoid removing too many symbols with strip on macOS by @pyrmont in #1209
- floor div, variadic mod by @primo-ppcg in #1207
- Add bnot for int types by @primo-ppcg in #1210
- Update and ascii-sort string escapes in peg by @sogaiu in #1216
- Add source view to .ppasm output by @sogaiu in #1213
array/remove
: update final array index to be -1 by @primo-ppcg in #1224- Add fopen reference to file/open docstring by @sogaiu in #1231
- Move
range
to corelib by @primo-ppcg in #1236
New Contributors
Full Changelog: v1.29.1...v1.30.0
Janet 1.29.1
What's Changed
- add net/setsockopt by @zevv in #1138
- Enable debug symbols in janet binary; strip target at 'make install' by @zevv in #1140
- Add CI test for mingw/wine on linux by @zevv in #1141
- changed net/connect to be non-blocking / asynchronous by @zevv in #1139
- added thaw to complement freeze by @tionis in #1142
- Add clock sources to os/clock (:realtime, :monotonic, :cputime) by @zevv in #1146
- improved error messages for special forms by @zevv in #1147
- os/proc-kill now accepts an optional signal to send by @tionis in #1137
- Fix warning in janet_gettime() by @zevv in #1153
- Improved various error messages when handling unexpected types. by @zevv in #1152
- Add docstring to string/format by @zevv in #1151
- Allow mapcat et al to accept multiple iterable arguments by @primo-ppcg in #1160
- Add file/lines iterator by @zevv in #1157
- More portable method of installing janet.h -> janet/janet.h symlink by @dressupgeekout in #1164
- Updated documentation for buffer/push-at by @zevv in #1169
- Fix janet_formatbv() type when handling %d %u int specifiers by @zevv in #1167
- Fixed net/connect binding address by @zevv in #1171
- fix for crash on windows in src/core/ev.c: initialze state->fromlen by @zevv in #1172
- Add
contains?
helper function to boot.janet by @Techcable in #1017 - added os/isatty, do not enable colors if stdout is not a tty by @zevv in #1177
- Reorganize tests by @sogaiu in #1162
- Ensure ev/gather fibers are fully canceled on error by @chris-chambers in #1181
- Added misc tests to increase test coverage by @zevv in #1179
- Added JANET_NO_AMALG flag to Makefile by @zevv in #1175
- Fix resumption values when closing a channel by @chris-chambers in #1182
- Make take and drop more symmetric by @primo-ppcg in #1183
- Simplify if-let logic by @primo-ppcg in #1188
- update if-let by @primo-ppcg in #1190
- Fix order in which macro-lints is set during expansion by @chris-chambers in #1185
- peg: add support for "true" and "false" primitives to always/never match by @CosmicToast in #1187
New Contributors
- @tionis made their first contribution in #1142
- @primo-ppcg made their first contribution in #1160
- @chris-chambers made their first contribution in #1181
Full Changelog: v1.28.0...v1.29.1