Michael Camilleri
4b5a2a14c0
Update year in copyright disclaimer to 2025
2025-03-04 11:24:09 +09:00
Calvin Rose
3894f4021a
Update copyright date.
2024-09-29 16:07:24 -05:00
Calvin Rose
634429cf61
Merge branch 'locales'
2024-05-19 17:05:49 -05:00
Calvin Rose
03166a745a
Disallow nan and inf in jdn.
2024-05-19 13:25:25 -05:00
Calvin Rose
2e2f8abfc0
Work on add locales.
...
Need to be careful not to mess with %j formatter, or
in some other places.
2024-05-18 13:23:33 -05:00
Calvin Rose
c747e8d16c
Address some compiler linter messages on openbsd
2024-05-15 18:20:20 -05:00
Calvin Rose
f18ad36b1b
Rework #1306 - better default for pretty printing numbers.
...
Not perfect for serialization, but a representation that
plays well with both safe integers (z where abs(z) < 2^54) and
non-integer floats.
2023-10-11 00:59:57 -05:00
Calvin Rose
741a5036e8
Add %D and %I for 64 bit formatting.
...
Instead of breaking old code with changing %i and %d.
2023-10-08 21:23:03 -05:00
Calvin Rose
6ae81058aa
Be more consistent with va_arg types.
2023-10-08 19:09:35 -05:00
Calvin Rose
9bc5bec9f1
More complete fix with some debugging tools.
2023-07-02 13:04:42 -05:00
Dmitry
d63379e777
Add parser escape sequences
2023-06-25 19:29:39 +04:00
Calvin Rose
d0aa7ef590
Add a few asserts to quiet some of the -fanalyze calls in gcc 13.
2023-06-01 10:52:34 -05:00
Ico Doornekamp
e64a0175b1
change janet_formatbv() to handle int/unsigned int instead of long/unsigned long on '%d' and '%u' format specifiers.
2023-05-29 19:50:14 +02:00
Ico Doornekamp
b4e3dbf331
Improved various error messages when handling unexpected types.
...
error: bad slot #1 , expected string|symbol|keyword|buffer, got ...
error: bad slot #1 , expected a string, symbol, keyword or buffer, got ...
bad s64 initializer: "donkey"
can not convert string "donkey" to s64
2023-05-23 06:57:12 +02:00
Chloe Kudryavtsev
0902a5a981
improve null format handling
...
there was a request to improve the error message, but the whole function
has non-informative errors. (both functions, actually, since the code is
duplicated)
as such, instead of catching it directly, address the assumption that
led to the SIGSEGV and let it be caught by the functions themselves,
thus reusing existing error messages (which can then be improved
separately).
2023-04-20 11:51:11 -04:00
Chloe Kudryavtsev
f3192303ab
check for NULL in get_fmt_mapping ( fixes #1105 )
...
When there is no format to be found after a %, get_fmt_mapping returns
NULL. It then gets called against strlen, which is a typical SEGV.
Check for NULL aginst mapping, which signals a null format being
specified.
2023-04-19 12:55:25 -04:00
Calvin Rose
9a76e77981
Update for undefined behavior sanitizer.
2023-03-24 18:49:21 -05:00
Calvin Rose
dacbe29771
Allow round-tripping more functions with disasm and asm.
...
Nested functions that captured with environments didn't
work well with asm.
2023-01-30 09:04:42 -06:00
Calvin Rose
a0f40042cb
Update copyright year.
2023-01-07 15:03:35 -06:00
Calvin Rose
8c31874eeb
Remove unused assert.h
2022-11-05 11:44:14 -05:00
Calvin Rose
ef7afeb2ea
Add 64 bit integer support to printf and other formatting functions.
2022-11-05 11:33:19 -05:00
Calvin Rose
9bde57854a
Add tabseq
macro.
2022-06-28 22:51:41 -05:00
Calvin Rose
62fc55fc74
Remove pthread.h from janet.h
...
Should make janet a bit easier to use. Also changes the
header to not expose the size of native mutexes and rwlocks, except
with janet_os_mutex_size and janet_os_rwlock_size.
2022-06-17 17:13:58 -05:00
Calvin Rose
3715d7a184
Auto update copyright date.
2022-03-21 18:22:59 -05:00
Calvin Rose
03f99752a7
Merge branch 'master' into struct-proto
2021-10-29 16:42:34 -05:00
Calvin Rose
6e38bf1578
Use more inclusive check for the %j formatter for valid symbols.
...
We did not allow arbitrary utf8 to be printed with %j, even though the parser
allows. Thos changes uses the existing built in utf8 detectiotion to
exclude only unprintable symbols from the docstring.
2021-10-29 11:08:53 -05:00
Calvin Rose
7e5f226480
Put source mapping info in stack traces.
2021-07-29 21:29:08 -05:00
Calvin Rose
1ef6db16ed
Add janet_vm_save and janet_vm_load.
...
This lets a user multiplex multiple Janet VMs on a single
thread or process if they are willing to implement context switching
themselves.
2021-07-16 20:59:03 -05:00
Calvin Rose
72c1d1c484
Fix some error condiditions to have the right number of arguments.
2021-07-10 14:09:59 -04:00
Calvin Rose
bbae43f259
Update copyright dates.
2021-05-31 13:46:02 -05:00
Calvin Rose
4d983e54b5
Initial struct prototype code.
...
Also add a number of cfunctions for manipulating structs
with prototypes.
2021-05-29 11:43:18 -05:00
Calvin Rose
7b7d742bec
Add declare-headers to jpm.
2021-04-25 13:38:24 -05:00
Calvin Rose
cde4a505cf
Fix #673 - check typed array index bounds as well as buffer count.
2021-03-30 21:14:42 -05:00
Calvin Rose
e70f64e23d
Sort keys initial.
2021-03-13 19:17:07 -06:00
Calvin Rose
6f605f8141
Update pretty printing default depth.
2021-03-13 17:43:19 -06:00
Calvin Rose
11067d7a56
Update module and rem operator for int types.
2021-01-09 14:47:43 -06:00
Calvin Rose
12f470ed10
Use :_name instead of :name for printing tagged tables.
2020-12-11 18:28:09 -06:00
Calvin Rose
b53890ddae
Make some changes for WASM build.
2020-09-07 16:08:43 -05:00
Calvin Rose
3c64596ea1
Add %t formatter to janet.
...
Was not present in printf and family.
2020-09-05 20:21:49 -05:00
Calvin Rose
7b31a87b3c
Update integer limits and printing.
2020-07-03 14:14:59 -05:00
Michael Camilleri
c4035b2273
Change string representation of nil to empty string
2020-06-21 17:54:06 +09:00
Calvin Rose
5c364e0f7c
Better roundtrip jdn.
...
Use the most precise format specifier, such that output jdn numbers
are more accurate.
2020-06-18 21:54:34 -05:00
Calvin Rose
125cd222bb
Pretty print tab characters as \t.
2020-05-05 00:03:12 -05:00
Calvin Rose
63e9790123
Fix flag check in pretty print.
2020-04-28 10:00:24 -05:00
Calvin Rose
3535efd977
Remove %u format specifiers.
2020-04-26 13:47:36 -05:00
Calvin Rose
f6bd41ada7
Add %M, %m, %N, and %n formatters.
...
These will not truncate long values.
2020-04-26 13:17:28 -05:00
Calvin Rose
a147ea3e80
Use JANET_PRETTY_DICT_LIMIT.
2020-04-16 19:01:49 -05:00
Calvin Rose
67fb2c212f
Address #348
...
Remove extreneous data from lockfile.
2020-04-16 18:44:21 -05:00
Calvin Rose
71882475d6
janet_formatb -> janet_formatbv, new janet_formatb
...
The old function was not very useable. In the likely
case that there is no external code using this
(not well documented/janet_formatc is more convenient), we
can change this.
2020-04-14 07:38:41 -05:00
Calvin Rose
a09112404d
Add better error message on unexpected eos.
...
Show innermost open delimiter
2020-04-13 23:18:27 -05:00