Max Brunsfeld
f52271352b
Merge branch 'master' into node-fields
2019-03-05 08:08:05 -08:00
Max Brunsfeld
4e059e18cb
0.14.5
2019-02-25 12:55:28 -08:00
Max Brunsfeld
18a13b457d
Get basic field API working
2019-02-08 15:16:56 -08:00
Max Brunsfeld
7f66d2406f
test script: Tell cargo which package has the tests
2019-02-08 15:16:56 -08:00
Max Brunsfeld
6d6e29f2dc
Add usage info to version script
2019-02-06 11:56:12 -08:00
Phil Turnbull
d102c473e8
Remove invalid characters from grammar names
2019-02-05 13:37:59 +00:00
Phil Turnbull
ce040e21e1
trace-pc-guard is unsupported in newer versions of clang
2019-02-05 13:35:30 +00:00
Max Brunsfeld
6ca1047bb0
Remove ci shell script
2019-02-01 20:19:38 -08:00
Max Brunsfeld
91da7206b7
Clean up environment variables after windows batch scripts
2019-02-01 15:54:34 -08:00
Max Brunsfeld
4cac85fec4
Add benchmark script
...
* Structure `cli` crate as both a library and an executable, so that
benchmarks can import code from the crate.
* Import macros in the Rust 2018 style.
2019-02-01 15:17:35 -08:00
Max Brunsfeld
8e198016d8
Try to make build-fuzzers script work w/ new structure & build process
2019-01-27 21:17:31 -08:00
Max Brunsfeld
5927e104c2
Check tree consistency in randomized tests
2019-01-26 22:22:29 -08:00
Max Brunsfeld
5a12fbd927
Verify changed ranges in randomized tests
2019-01-25 15:20:34 -08:00
Max Brunsfeld
233d616ebf
Add random mutation tests
2019-01-25 12:05:21 -08:00
Max Brunsfeld
71357afb2f
Add version script
2019-01-17 15:59:12 -08:00
Max Brunsfeld
a8292f4fe9
Load all fixture grammars dynamically
...
This way the build doesn't take forever any time a single grammar has
been regenerated.
2019-01-15 13:21:48 -08:00
Max Brunsfeld
5c3c1dd0bd
Get logging flags working properly with test script
2019-01-15 13:21:48 -08:00
Max Brunsfeld
b1fa49448d
Regenerate parsers on CI
2019-01-14 15:09:54 -08:00
Max Brunsfeld
fab4673c14
Get fixture grammars building for library unit tests
2019-01-10 15:48:13 -08:00
Max Brunsfeld
0f2347b318
Just call the C lib 'the library' everywhere, don't call it a 'runtime'
2019-01-10 15:22:39 -08:00
Max Brunsfeld
98807d2053
Add debug and debug-graph flags to parse and test commands
2019-01-08 21:03:51 -08:00
Max Brunsfeld
f059557a9d
Move parser generation code in to 'generate' module within CLI crate
2019-01-07 10:23:01 -08:00
Max Brunsfeld
dd416b0955
Update include paths to not reference 'runtime' directory
2019-01-04 17:33:34 -08:00
Max Brunsfeld
47607cecf4
Reorganize repo, add rust CLI and binding code,
2019-01-04 17:31:49 -08:00
Max Brunsfeld
d79203f58c
Add test script
2018-12-13 16:42:46 -08:00
mpsijm
e0bcb27943
Pipe output of which (hash) to /dev/null
2018-11-20 22:52:44 +01:00
mpsijm
01fef6d81f
Remove -s option from which in test script
...
When I tried running the tests with a debugger, the script failed with the following message:
Illegal option -s
Usage: /usr/bin/which [-a] args
Illegal option -s
Usage: /usr/bin/which [-a] args
No debugger found
In case this `-s` flag is needed for other OSes than Linux (I'm working with Ubuntu 18.04), this could be based on a `uname` check (like on line 44).
2018-11-20 10:33:48 +01:00
Max Brunsfeld
87c391f8af
Use hash instead of which
2018-11-13 15:56:03 -08:00
Max Brunsfeld
62ded2aa1d
Add c99 flag to build-runtime script
2018-11-13 15:46:39 -08:00
Max Brunsfeld
47918070f6
Add a single-source file way of building the runtime library
2018-11-13 15:36:21 -08:00
Max Brunsfeld
24d1e7ec7e
Included embedded-template parser in randomized tests
2018-11-03 23:18:24 -07:00
Max Brunsfeld
a8bcd2ce9e
Forward arguments to jekyll serve in the serve-docs script
2018-08-13 18:03:57 -07:00
Max Brunsfeld
e21b4505c8
Resume testing against master branch of fixture repos
2018-08-01 15:22:23 -07:00
Max Brunsfeld
68618f61a6
Test against immediate token branches of grammar repos
2018-08-01 14:23:52 -07:00
Max Brunsfeld
247848baf3
Return to using the master branch of tree-sitter-javascript for testing
2018-07-25 11:29:41 -07:00
Max Brunsfeld
9ecb20650b
Fix logic for checking out branches in fixture repos
2018-07-17 15:46:14 -07:00
Max Brunsfeld
483881ec6a
Use included range branch of javascript parser for testing on windows CI
...
Co-Authored-By: Ashi Krishnan <queerviolet@github.com>
2018-07-17 15:26:29 -07:00
Max Brunsfeld
d8a420cad1
Use included range branch of javascript parser for testing
2018-07-17 14:04:37 -07:00
Max Brunsfeld
71f7bf2fca
Fetch HTML grammar as a test fixture on windows too
2018-06-18 10:06:59 -07:00
Max Brunsfeld
b14951de9d
Included HTML parser in randomized test suite
2018-06-15 16:17:56 -07:00
Max Brunsfeld
10dcf050d6
Tweak docs styling, add serve-docs script
2018-06-12 17:58:38 -07:00
Max Brunsfeld
95fbc23fd6
Add support for running focused tests via windows test script
2018-05-21 14:09:42 -07:00
Max Brunsfeld
29c0cd3aa4
Add appveyor config
2018-05-18 09:58:34 -07:00
Max Brunsfeld
e61edf5398
Don't perform platform-specific name mangling on C functions for bindings
2018-05-18 09:30:00 -07:00
Max Brunsfeld
572a60183c
Suppress warnings associated w/ generated bindings
2018-05-17 17:41:44 -07:00
Max Brunsfeld
08217fff8d
Get basic parsing working, add some unit tests
2018-05-17 17:16:35 -07:00
Max Brunsfeld
6e4115548c
Initial commit
2018-05-17 14:30:03 -07:00
Max Brunsfeld
1eafcf0ba7
Make test script generate debug graphs even when assertions fail
2018-04-06 16:11:01 -07:00
Max Brunsfeld
fe29173d5f
Merge pull request #142 from tree-sitter/fuzz-halt-recover
...
Add 'halt' and 'recover' modes to fuzzer
2018-03-14 09:28:58 -07:00
Phil Turnbull
547a71899c
Allow extra libFuzzer arguments to script/reproduce
2018-03-12 12:54:06 -07:00
Max Brunsfeld
60eacbc7ff
Delete .dot file after successfully generating SVGs
2018-03-05 09:35:12 -08:00
Phil Turnbull
bc192d95ca
Build fuzzer in 'halt' and 'recover' modes
...
Build each language fuzzer in two modes (halt_on_error=true and
halt_on_error=false) and use different timeouts for each fuzzer.
Also merge the run-fuzzer and reproduce scripts so they use identical
values of ASAN_OPTIONS/UBSAN_OPTIONS/etc0
2018-03-02 10:13:13 -08:00
Max Brunsfeld
777aca25c8
Fix errors in test script
2017-12-28 15:49:34 -08:00
Max Brunsfeld
6304a3bcd1
Make it easier to run tests with debug graphs
2017-12-28 12:41:23 -08:00
Phil Turnbull
c57f8ae0a6
Allow fuzzer CFLAGS to be overridden by envrionment
2017-09-14 11:04:19 -04:00
Max Brunsfeld
05066e492e
Fetch fixture grammars on appveyor
2017-08-08 14:47:43 -07:00
Max Brunsfeld
37836f593a
Run tests on windows
2017-08-08 14:07:23 -07:00
Max Brunsfeld
b03e9a636f
Fix configure batch script and add test batch script
2017-08-07 15:36:14 -07:00
Max Brunsfeld
2854983342
Add windows configure script
2017-08-07 12:43:24 -07:00
Max Brunsfeld
e5c3bf742d
Update fixture grammars
2017-08-03 16:32:39 -07:00
Max Brunsfeld
09f4796f6b
Get tests passing w/ new alias API
2017-08-01 14:35:34 -07:00
Max Brunsfeld
0d6ab65a97
Use branches of grammar repos that use new scanner API
2017-07-17 17:35:30 -07:00
Max Brunsfeld
9a04231ab1
Remove length restriction in external scanner serialization API
2017-07-17 17:12:36 -07:00
Max Brunsfeld
34279257f9
Merge pull request #91 from tree-sitter/libFuzzer
...
Add support for fuzzing with libFuzzer
2017-07-17 11:43:01 -07:00
Phil Turnbull
153c2033df
Update list of test grammars
2017-07-14 13:50:42 -07:00
Phil Turnbull
798ef5e4dc
Add libFuzzer support
...
This adds support for fuzzing tree-sitter grammars with libFuzzer. This
currently only works on Linux because of linking issues on macOS. Breifly, the
AddressSanitizer library is dynamically linked into the fuzzer binary and
cannot be found at runtime if built with a compiler that wasn't provided by
Xcode(?). The runtime library is statically linked on Linux so this isn't a
problem.
2017-07-14 13:50:41 -07:00
Max Brunsfeld
21bc50377e
Run make with the right target when building benchmarks on CI
2017-07-06 12:36:57 -07:00
Max Brunsfeld
2b73a30fba
Build benchmarks in release mode
2017-07-06 11:49:32 -07:00
Max Brunsfeld
a64db98218
Rename lib.sh -> scan-build.sh
2017-07-06 10:32:41 -07:00
Max Brunsfeld
78333b70c0
Build benchmarks with scan-build on CI
2017-07-06 10:22:14 -07:00
Max Brunsfeld
c53f9bcbd9
Build benchmarks in Test mode for now
2017-07-05 17:27:50 -07:00
Max Brunsfeld
17bc3dfaf7
Add a benchmark command
...
This command measures the speed of parsing each grammar's examples.
It also uses each grammar to parse all of the *other* grammars' examples
in order to measure error recovery performance with fairly large files.
2017-07-05 14:14:38 -07:00
Max Brunsfeld
ca4db76bb1
Override LINK to call clang++ w/ -fsanitize=address in test script
...
Signed-off-by: Philip Turnbull <philipturnbull@github.com>
2017-06-27 15:44:58 -07:00
Max Brunsfeld
513edec7c1
Merge pull request #77 from philipturnbull/scan-build-fixes
...
Fix errors found by scan-build
2017-06-20 10:15:20 -07:00
Phil Turnbull
7bdb0917d3
Revert "Add standalone scan-build script"
...
This reverts commit 9135d14b81 .
2017-06-19 10:24:40 -04:00
Phil Turnbull
1b9e78add2
Fix formatting and use '-n'
2017-06-19 10:24:08 -04:00
Phil Turnbull
e9bf794cd9
Remove unneeded build step
2017-06-19 10:23:54 -04:00
Phil Turnbull
ee3caafe7b
Use -j2 on the CI boxes
...
The travis-ci trusty container has two cores.
2017-06-16 15:16:40 -04:00
Phil Turnbull
9135d14b81
Add standalone scan-build script
...
For running scan-build outside of CI, e.g. `./script/scan-build -j4`
2017-06-16 15:16:40 -04:00
Phil Turnbull
7171664eec
Disable DeadStores scan-build checker
...
This silences a true, but minor, bug in the external json-parser:
externals/json-parser/json.c:653:37: warning: Value stored to 'b' is never read
b = 0;
^ ~
2017-06-16 15:16:40 -04:00
Phil Turnbull
97cdd8b738
Run scan-build during CI
...
This bumps the travis-ci container image to Trusty so that we have a version of
clang that includes proper support for C++14.
2017-06-16 15:16:29 -04:00
Max Brunsfeld
97bcc86a3a
Use master version of all fixture grammars
2017-03-19 22:19:35 -07:00
Max Brunsfeld
24878277e9
Use new version of python grammar in tests
2017-03-17 17:05:02 -07:00
Max Brunsfeld
6dc0ff359d
Rename spec -> test
...
'Test' is a lot more straightforward of a name.
2017-03-09 20:40:01 -08:00
Max Brunsfeld
9b930748cf
Test against a specific version of the javascript grammar for now
2017-02-07 17:49:31 -08:00
Max Brunsfeld
5c72c1e28b
Fetch python grammar as part of CI
2016-12-20 13:06:16 -08:00
Max Brunsfeld
cfef576a9f
Remove google perftools dependency
2016-11-30 17:23:44 -08:00
Max Brunsfeld
c0fb0c12a8
Don't use boost regex lib on travis
2016-11-18 14:46:53 -08:00
Max Brunsfeld
7968da672f
Upgrade bandit test framework
2016-11-18 13:50:34 -08:00
Max Brunsfeld
4106ecda43
Remove logic for recovering from OOM
2016-11-04 09:18:38 -07:00
Max Brunsfeld
883a7c8266
In script/test, style SVG graphs for readability
2016-08-30 13:02:27 -07:00
Max Brunsfeld
04de7cc208
Make script/test -S flag work when there are assertion failures
2016-08-29 12:37:58 -07:00
Max Brunsfeld
607366a422
Add test script flag for piping stderr to dot to make an svg
2016-08-29 11:51:47 -07:00
Max Brunsfeld
e1a3a1daeb
Import error corpus entries from grammar repos
...
Now that error recovery requires no input for the grammar author, it shouldn't
be tested in the individual grammar repos.
2016-05-28 20:12:02 -07:00
Max Brunsfeld
8bfaa5ffc3
Add directory argument to format script
2016-04-11 23:11:37 -07:00
Max Brunsfeld
5a595d6e70
Clone fixture grammars from new tree-sitter org
2016-02-12 12:47:38 -08:00
Max Brunsfeld
a302ee822a
Add swift runtime memory memory leak to valgrind suppressions
2016-02-02 13:37:23 -08:00
Max Brunsfeld
2da716d659
Update help message for test script
2016-02-02 12:31:13 -08:00
Max Brunsfeld
b1f4b046f5
Test script - allow valgrind to be run w/o the leak check
2016-01-29 17:03:35 -08:00
Max Brunsfeld
ca6dfb81d9
Run valgrind with full leak check
2016-01-28 21:18:41 -08:00