Calvin Rose
596111c988
Merge branch 'master' into net
2020-04-17 15:08:26 -05:00
Calvin Rose
e202d30835
Use make format.
2020-04-17 13:39:23 -05:00
Calvin Rose
fbe903b277
Add janet_cfuns_prefix to janet.h
...
Makes adding functions to the current environment easier.
2020-04-17 13:37:52 -05:00
Calvin Rose
8a89e50c13
:octal-permissions -> :int-permissions ( #347 )
2020-04-16 19:05:00 -05:00
Calvin Rose
6cb0e0dcea
Merge branch 'master' of github.com:janet-lang/janet
2020-04-16 19:02:58 -05:00
Calvin Rose
a147ea3e80
Use JANET_PRETTY_DICT_LIMIT.
2020-04-16 19:01:49 -05:00
Calvin Rose
557988e530
Merge pull request #344 from DavidKorczynski/master
...
Added a fuzzer and integration with OSS-Fuzz.
2020-04-16 18:50:07 -05:00
Calvin Rose
67fb2c212f
Address #348
...
Remove extreneous data from lockfile.
2020-04-16 18:44:21 -05:00
Calvin Rose
3765b08cca
Merge branch 'master' of github.com:janet-lang/janet
2020-04-16 12:11:59 -05:00
Calvin Rose
3eb84fcb13
Fix some typos, make jpm repl work without a project.janet.
2020-04-16 12:11:17 -05:00
Calvin Rose
bea76e8e08
Merge pull request #345 from sogaiu/checks-after-allocs
...
Check some *alloc return values
2020-04-15 19:45:39 -05:00
Calvin Rose
f5433dcaa4
Fix core getline that doesn't use replacement.
2020-04-15 19:45:17 -05:00
Calvin Rose
ef3b953a42
Fix docstrings.
2020-04-14 21:32:50 -05:00
Calvin Rose
605a205008
Range errors for slice
-likes include negatives.
...
Makes for less confusing errors when calling something
like `(slice [] 0 -10)`.
2020-04-14 21:27:48 -05:00
Calvin Rose
058f63b440
Add sh-rule and sh-phony to jpm dialect.
...
Provides useful shorthand for writing rules that invoke
shell commands.
2020-04-14 20:43:53 -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
sogaiu
a3d29a15df
Check some *alloc return values
2020-04-14 10:22:45 +01:00
Calvin Rose
a09112404d
Add better error message on unexpected eos.
...
Show innermost open delimiter
2020-04-13 23:18:27 -05:00
Calvin Rose
93fc11ea21
Add edefer.
...
Also improve error messages from vm internal errors.
(Show bad value, not its type).
2020-04-13 20:24:11 -05:00
davkor
4faa129b8e
Added a first fuzzer.
2020-04-13 17:33:58 +01:00
Calvin Rose
6c4ed0409d
Add emscripten check to features.h.
2020-04-12 14:13:55 -05:00
Calvin Rose
ea2811f14f
Merge branch 'master' of github.com:janet-lang/janet
2020-04-11 13:42:34 -05:00
Calvin Rose
8bc2987a71
(struct ...) with duped keys will use last value.
2020-04-11 13:42:25 -05:00
Calvin Rose
1d13095d19
Merge pull request #340 from pepe/get-vs-in-last
...
Fix last for empty collection, add tests
2020-04-10 19:03:21 -05:00
Calvin Rose
5ed76f197a
Differentiate error from resume and error from resumed fiber.
2020-04-10 18:29:10 -05:00
Calvin Rose
e1f4cadf41
Add debugger to the core repl.
...
Debugger functions are prefixed by periods.
2020-04-10 17:20:23 -05:00
Calvin Rose
3b0e6357ad
Make Ctrl-G in repl show docstring for symbol.
...
Can be used to browse docs without poluting your repl session.
2020-04-10 11:36:23 -05:00
Calvin Rose
02f17bd4e4
Add sort-by and sorted-by.
2020-04-09 20:43:51 -05:00
Josef Pospíšil
b63a0796fd
Fix last for empty collection, add tests
2020-04-09 14:35:57 +02:00
Calvin Rose
e6d4e729fb
Keep reference alive so unmarshalled object not collected.
2020-04-06 17:24:52 -05:00
Calvin Rose
b75a22b753
Make JANET_FRAME_SIZE consistent across architectures.
...
This means unmarshalling fibers should work across arches.
2020-04-06 12:41:56 -05:00
Calvin Rose
72beeeeaaa
Move funcenv verification to runtime.
...
Lazy verification makes it easier to not leave funcenvs
in an invalid state, as well as be more precise with the validation.
We needed to verify the FuncEnvs actually pointed to a stack frame if
they were of the "on-stack" variant. There was some minor checking
before, but it was not enough to prevent func envs from pointing to
memory that was off of the fiber stack, overlapping stack frames, etc.
2020-04-06 10:58:47 -05:00
Calvin Rose
c3c42ef56f
Fix case for #336 .
...
Also consider ascii 127 (delete) non-printable for string escapes.
2020-04-06 00:11:22 -05:00
Calvin Rose
a3c55681b2
Address #336 case 6
2020-04-05 21:39:39 -05:00
Calvin Rose
cc70388846
Merge pull request #338 from andrewchambers/unmarshalfuzz2
...
Make unmarshal fuzzer exercise more code paths.
2020-04-05 20:36:30 -05:00
Calvin Rose
fcc610f539
Address #336 case 4
...
Set funcenv fields to NULL before any possible panics.
2020-04-05 19:18:59 -05:00
Calvin Rose
5bbd507858
Address #336 case 3
...
Fix error condition for bad abstract types - don't return NULL, panic.
2020-04-05 17:38:14 -05:00
Andrew Chambers
45156c0c47
Make unmarshal fuzzer exercise more code paths.
2020-04-06 09:59:00 +12:00
Calvin Rose
553e38ffd6
Merge pull request #337 from andrewchambers/fuzzunmarshal
...
Setup some simple fuzz helpers for unmarshal.
2020-04-05 08:17:42 -05:00
Calvin Rose
c4ca0490ee
Prevent unmarsal DOS in arrays,buffers,tables,and structs.
2020-04-05 08:16:40 -05:00
Calvin Rose
b145d47863
Address cases 1 and 2 of #336 .
...
Mainly related to not checking ints < 0.
2020-04-05 08:01:18 -05:00
Calvin Rose
095827a261
Update CHANGELOG.md
2020-04-05 07:12:00 -05:00
Calvin Rose
87ecdb8112
Change \UXXXXXXXX -> \UXXXXXX and check codepoint max.
...
No need to add two extra leading zeros, as the max unicode
codepoint is 0x10FFFF.
2020-04-05 07:09:53 -05:00
Andrew Chambers
98b2fa4d64
Setup some simple fuzz helpers for unmarshal.
2020-04-05 23:05:18 +12:00
Calvin Rose
810ef7401c
Update changelog and bump version to dev version.
2020-04-04 21:50:27 -05:00
Calvin Rose
ae70a03383
Address #306 - Add unicode escapes.
...
Unicode escapes have the same syntax as go - \uXXXX or \UXXXXXXXX.
2020-04-04 21:46:08 -05:00
Calvin Rose
081d132538
Address #321
...
Also improve docs for dofile and related functions.
2020-04-04 21:17:15 -05:00
Calvin Rose
bb5c478704
Switch to two digit sonames.
...
Janet's versioning scheme is not 'true' semantic versioning.
Minor versions can have and often do have breaking changes.
Although such breakages are mostly avoided, only limited effort is
made to prevent this, and no system is in place to verify this.
Thus, stricter version pinning is needed.
2020-04-04 18:30:18 -05:00
Calvin Rose
ff6601f29e
Add version and soversion to meson libjanet.
2020-04-04 18:04:22 -05:00
Calvin Rose
320c6c6f05
Increase NSIS installer verbosity.
2020-04-04 13:58:27 -05:00