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
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
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
333ae7c4f8
Make amalgamtion the default when building.
...
This way we can support fewer build configurations. Also, remove
all undefined behavior due to use of memcpy with NULL pointers. GCC
was exploiting this to remove NULL checks in some builds.
2020-01-28 23:38:52 -06:00
Calvin Rose
a68ee7aac6
Update Copyright 2020.
2020-01-12 10:50:37 -06:00
Calvin Rose
0b0fb18c42
Can we fix NSIS?
2019-12-31 12:10:57 -05:00
Calvin Rose
bfb638cfc2
Try EnVar_plugin for updating path.
...
This should be more robust and not fail after upgrading.
2019-12-31 10:26:54 -05:00
Calvin Rose
3a47ad5d99
Remove some NSIS cruft to see if we can fix 3.05
2019-12-31 09:49:50 -05:00
Calvin Rose
e3c88295f2
Update to NSIS 3.05
...
Lock version in appveyor.yml
2019-12-31 09:40:36 -05:00
Calvin Rose
75bb8fbcd1
Amalg script included janet.h before test macros.
2019-12-30 22:08:12 -05:00
Andrew Chambers
0ac5b243c7
Add os/cryptorand.
2019-12-04 14:02:37 +13:00
Andrew Chambers
4acc63e325
Add afl fuzzing helpers.
2019-11-29 16:43:14 +13:00
Calvin Rose
c12eaa926a
Make sure $prefix/lib/janet is created
...
After we removed cook.janet, jpm didn't work well out of the box
with a meson install.
2019-11-08 18:43:53 -06:00
Calvin Rose
46e09e4c71
Fix tools/removecr.janet
2019-10-29 18:56:32 -05:00
Calvin Rose
427b2638e0
Fix startup environment.
2019-10-29 18:47:54 -05:00
Calvin Rose
99ef4c7510
Fix an issue with the removecr script
2019-10-19 19:11:13 -04:00
Calvin Rose
b9e05d06fe
Update amalg step.
2019-10-19 18:00:29 -05:00
Calvin Rose
9f48c3e2db
Remove :r from amalg.janet
2019-09-12 23:34:14 -05:00
Calvin Rose
e6306ea188
Add script for removing <CR> on windows.
...
This caused bad stuff to be generated on windows, specifically
the amalg file. We cause totally strip <CR> from files on windows
using this script.
2019-09-12 23:18:52 -05:00
Calvin Rose
0fce440455
See if we can use a different build of NSIS.
2019-08-07 22:19:49 -04:00
Calvin Rose
44e752d737
Add shorthand function literals to janet.
...
These are similar to the function literals from Clojure
(also Fennel), and should make short functions for maps, filters, etc.
easier to write.
2019-08-04 12:25:52 -05:00
Calvin Rose
8bbe518696
Executables linking to natives working on linux.
...
This involves a bunch of machinery in cook.janet
and even a little bit in the janet C API.
2019-07-28 13:27:20 -05:00
Calvin Rose
ec32d11b76
Update installer and make things build on windows.
...
We can now build windows executables with jpm.
2019-07-28 01:05:15 -04:00
Calvin Rose
7e97687c9e
Update windows installation and automation.
2019-07-27 21:44:44 -04:00
Calvin Rose
da5a64131f
Progress towards making windows work again.
2019-07-27 16:16:28 -04:00
Calvin Rose
b0b1024f8a
Try to fix some tests for CI.
2019-07-27 11:05:53 -05:00
Calvin Rose
dfe00fee94
Building standalone binaries on linux working.
...
Mostly changes to cook and jpm. Also some
code for file associations in the windows installer, and
adding the :linux value from os/which (instead of just :posix).
2019-07-26 22:43:54 -05:00
Barakat
95dbad6ec1
Remove amalg.janet dependency on os/date
...
When compiling Janet with `JANET_REDUCED_OS`, `os/date` will not be available which breaks the tool amalg.janet. One can check file modification time on the filesystem instead.
2019-07-09 13:49:37 +03:00
Calvin Rose
e8e4d637ef
Fix jpm.bat on a normal install
...
The path to jpm.janet will likely have spaces.
2019-07-08 19:54:14 -04:00
Krystian Rosiński
6099d2a45d
Fix typo in jpm.bat
2019-07-05 19:49:55 +02:00
Calvin Rose
1ceaceada4
Fix doc generation.
2019-06-19 09:48:33 -04:00
Calvin Rose
b082c8123e
Update tm_language_gen.
2019-06-05 11:07:08 -04:00
Calvin Rose
3d76d988c3
More work on installation and moving files around.
...
Move all installed libraries into auxlib.
Move all installed executable scripts into auxbin.
2019-06-01 10:38:28 -04:00
Calvin Rose
c8c6419013
Update installer again.
2019-05-29 19:48:31 -04:00
Calvin Rose
e8516c29e0
Update installer and jpm to work better on windows.
2019-05-29 19:01:12 -04:00
Calvin Rose
178d175bcf
Update options for jpm and path stuff.
2019-05-29 11:04:38 -04:00
Calvin Rose
6c897b1a37
Add default for bindir.
2019-05-28 22:41:47 -04:00
Calvin Rose
db55277b58
Work on windows installer.
...
We will probably shift to NSIS as the default
installation method for windows. Shipping around a
single binary just doesn't cut it if we want to be able
to reliably use tools like `jpm` to build things.
2019-05-28 20:45:39 -04:00
Calvin Rose
f12f896020
Change test-install
2019-05-28 12:59:21 -04:00
Calvin Rose
09ab391d13
Add import-rules to cook.
...
First steps to recursive rules. Just needs normalized paths
relative to the directory of the imported file.
2019-05-28 09:49:10 -04:00
Calvin Rose
7569930b0c
More work on cook and jpm.
2019-05-28 08:48:35 -04:00
Calvin Rose
e7189438dd
More work on jpm
...
Switch to rea dependency graph for a rake-like tool.
This model is more powerful for writing build scripts.
2019-05-27 22:14:24 -04:00
Calvin Rose
1696de233c
Add jpm tool, based on cook.
...
Modify cook as well.
2019-05-27 16:50:57 -04:00
Calvin Rose
f35b5765d6
Set module/*headerpath* during bootstrap
...
Cook also uses module/*headerpath* for finding headers
rather than using module/*syspath*.
2019-05-15 10:49:16 -04:00
Calvin Rose
52ab9fb475
Update cook tool and headers.
2019-05-09 17:37:46 -04:00
Calvin Rose
5a28d8d1fa
fix cook error.
2019-05-04 18:55:36 -04:00
Calvin Rose
ea25766374
fix cook.
2019-05-04 17:59:48 -04:00
Calvin Rose
03e3ecb0a1
Update cook tool.
2019-05-02 13:10:14 -04:00
Calvin Rose
2d7df6b78e
Many changes for adding dynamic (fiber-level) scope.
...
- Allow passing a table to fibers, which make fiber level scope easier.
- Add fiber/getenv, fiber/setenv, dyn, and setdyn
- Remove meta, *env*, and *doc-width*
- Some functions changed dignatures, and no longer take an env
2019-04-16 15:41:45 -04:00