1
1
mirror of https://github.com/github/semantic.git synced 2024-12-22 22:31:36 +03:00
Commit Graph

625 Commits

Author SHA1 Message Date
Rob Rix
c626f372ed Stub in a module for declarations. 2017-03-26 17:31:10 -04:00
Rob Rix
8b2ac42788 Stub in a module for comment syntax. 2017-03-26 15:34:44 -04:00
Rob Rix
0d969f682c Stub in a module to hold types for literal syntax, e.g. array/string/object/hash/symbol/number literals. 2017-03-26 15:30:33 -04:00
Rob Rix
f480bd5ad7 Stub in a module for an n-ary union of type constructors. 2017-03-26 12:05:49 -04:00
Rob Rix
8a5a1dc178 Stub in a module for à la carte Syntax. 2017-03-26 12:02:40 -04:00
Rob Rix
e507750069 Merge branch 'master' into custom-setup-stanza 2017-03-24 14:26:25 -04:00
Timothy Clem
c66631cfa6 Add custom-setup stanza to fix build warnings 2017-03-24 10:43:23 -07:00
Rick Winfrey
3b8553f912 Trying to surface error 2017-03-23 17:05:57 -07:00
Rick Winfrey
f60f90045d Remove "\n" 2017-03-23 16:12:11 -07:00
Rob Rix
093f3b9508 Stub in a spec for Myers’ algorithm. 2017-03-20 11:25:58 -04:00
joshvera
132208d2c9 we just say TypeScript 2017-03-15 17:28:48 -04:00
joshvera
baf3fb3da2 Add typescript bindings 2017-03-15 17:20:46 -04:00
Rob Rix
93b9e285c2 SES.Myers
Stub in a module for Myers’ algorithm.
2017-03-09 10:10:13 -05:00
Timothy Clem
68d1f1cd97 Fix up tests to use ByteString too 2017-03-08 13:56:08 -08:00
Timothy Clem
32809f158a Merge remote-tracking branch 'origin/master' into gitmon-support 2017-03-06 07:32:05 -08:00
Rick Winfrey
0954699b12 Add happy path GitmonClient spec 2017-03-01 14:11:16 -08:00
Rob Rix
36e0d7f5d2 Merge branch 'master' into gitmon-support 2017-03-01 10:51:23 -05:00
Rob Rix
2cd497ae17 Merge branch 'master' into rework-io 2017-03-01 10:51:16 -05:00
Timothy Clem
fff9b6d3ef Refactor IO back out into Source and SemanticDiff 2017-02-28 15:45:38 -08:00
Timothy Clem
bfe1181acb Move Diff and Source Specs 2017-02-28 15:35:43 -08:00
Timothy Clem
4c3feecc77 Add ParseCommandSpec to validate parse output 2017-02-28 15:32:04 -08:00
Timothy Clem
1d9436bb14 Collapse all these tests into DiffCommandSpec 2017-02-28 15:00:56 -08:00
Timothy Clem
a478b10593 Test that all output formats do product output 2017-02-28 14:55:57 -08:00
Timothy Clem
dcfdcf78d3 Fold DiffSummary into Renderer.Summary 2017-02-28 14:09:57 -08:00
Timothy Clem
e3bdb6b95b Extract SemanticDiff.IO and clearly delineate program commands 2017-02-28 13:43:01 -08:00
Rick Winfrey
712687656d Merge branch 'master' into gitmon-support 2017-02-28 11:41:57 -08:00
Rob Rix
83dd3d5621 Merge branch 'master' into interpreter-decomposition 2017-02-27 15:22:38 -05:00
Rick Winfrey
024871b2f0 Merge branch 'master' into gitmon-support 2017-02-27 10:13:56 -08:00
Timothy Clem
763ab482cc 🔥 the integration-tests and generate-test-cases 2017-02-27 08:50:54 -08:00
Timothy Clem
9d28028fc6 Remove unordered-containers, swap to hiding for hspec import 2017-02-27 08:35:45 -08:00
Timothy Clem
2722cc8b67 Fill in sad path test cases 2017-02-27 08:31:27 -08:00
Timothy Clem
980b6c95bc First pass at full stack specs 2017-02-24 16:46:22 -08:00
Rob Rix
2f73758dfe Define Algorithm as the Freer monad of AlgorithmF. 2017-02-24 13:28:44 -05:00
Rick Winfrey
e02356b269 Add yaml to parse /proc/self/io as a Yaml file to calculate disk read / write stats 2017-02-23 14:03:01 -08:00
Rick Winfrey
40e3eddfa1 Add System.Clock and calculate realTime clock stats 2017-02-23 14:01:53 -08:00
Timothy Clem
378d4b3702 Merge branch 'master' into interpreter-decomposition 2017-02-23 13:03:06 -08:00
Timothy Clem
02c2a7aac9 Remove corpus specs and fixtures entirely 2017-02-23 09:19:30 -08:00
Rob Rix
fa42615dc7 Merge remote-tracking branch 'origin/master' into interpreter-decomposition 2017-02-23 12:00:57 -05:00
Timothy Clem
0cf38c583c Assert to summary json output 2017-02-22 20:05:48 -08:00
Timothy Clem
52e4dd435a Test expression output (based on corpus spec strategy) 2017-02-22 08:34:31 -08:00
Rob Rix
e31191f4fa Stub in a module for a generic Eq1 instance. 2017-02-21 16:00:36 -05:00
Rick Winfrey
76fe7eba61 Merge branch 'master' into gitmon-support 2017-02-17 16:11:41 -08:00
Timothy Clem
4e51665e50 Add .hspec for depths default, make sure hspec version supports 2017-02-17 08:27:51 -08:00
Timothy Clem
aa84bb40d6 Merge branch 'master' into hold-on-to-your-butts 2017-02-15 08:34:18 -08:00
Rick Winfrey
7e92856934 Add network and GitmonClient to cabal file 2017-02-14 17:42:49 -08:00
Timothy Clem
99ce07034b Merge branch 'master' into dedupe-added-removed-methods 2017-02-14 12:05:30 -08:00
Timothy Clem
1facca0b50 Add failing toc summary test and refactor removeDupes 2017-02-14 11:29:24 -08:00
Rob Rix
6edd2fbaf4 Print failed examples nicely. 2017-02-14 09:57:21 -05:00
Rob Rix
e63de49d12 Move generate-test-cases into its own package.
When building a component, `stack` also builds all of the executables in the same package. This means that profiling iterative changes to semantic-diff also involve compiling, linking, and copying generate-test-cases. By moving it to its own package, we’re able to avoid that penalty.
2017-02-13 16:22:16 -05:00
Rob Rix
5c17ab5149 Restore AlignmentSpec to its former “glory.” 2017-02-13 12:17:46 -05:00
Rob Rix
0f0e65043e Give up and disable AlignmentSpec. 2017-02-09 16:45:11 -05:00
Rob Rix
61c236b6ef Merge branch 'master' into feature-vector-optimizations 2017-02-06 12:18:14 -05:00
joshvera
0f2995a5bd Add -A4m and -n2m GC flags
Sets the allocation area size to 4Mb and divides the allocation areas into chunks of 2mb. During execution, when a process exhausts its current chunk, it is given another chunk from the pool until the pool is exhausted, at which point a collection is triggered. This allows the processors to make better use of available allocation area, even when cores allocate at different rates.
2017-02-03 17:45:57 -05:00
joshvera
9809e5a999 Revert "Add -A4M -n2m to rtsopts"
This reverts commit bd8a8efeadcfae3f098f97a1bf6c9357555f05cb.
2017-02-03 17:31:24 -05:00
joshvera
d8d732c1a2 Add -A4M -n2m to rtsopts 2017-02-03 17:06:59 -05:00
joshvera
f9400943a4 Move -fprof-auto to ghc-prof-options
Inserting cost centers can prevent inlining, so remove it from ghc-options
2017-02-03 16:53:16 -05:00
Rob Rix
466c39f920 🔥 the dependency on QuickCheck. 2017-02-03 16:23:49 -05:00
Rob Rix
7e1bd55c64 Generate an empty array. 2017-02-03 15:57:05 -05:00
Rob Rix
72a32ff289 Compute random numbers using the Mersenne twister. 2017-02-03 15:27:37 -05:00
Rob Rix
dda587e86d Represent feature vectors using boxed Arrays. 2017-02-03 13:32:52 -05:00
Rick Winfrey
eda990ad7b Remove tree-sitter-parsers; replace with language specific packages
- This allows us to migrate to haskell-tree-sitter, which provides an
open source git repository that contains no language bindings, but
provides the ffi for working with tree sitter.
- Additionally now semantic-diff uses language specific packages found
with the languages dir. Each language package contains a vendored
version of its associated tree-sitter project (i.e. language/ruby
contains tree-sitter-ruby). The implication is that generating a
language’s updated parser.c does not require a re-compilation of all
languages parser.c files.
2017-01-30 14:03:22 -08:00
Timothy Clem
02f87738c0 Plumb in cmd line option for new toc output format 2017-01-23 10:49:48 -08:00
Rob Rix
01347e4af9 Go back to QuickCheck’s RNG for RWS.
Changing the RNG changes the vectors which changes the similarities which changes the results which breaks the integration tests. See also #778.
2017-01-10 16:29:07 -05:00
Rob Rix
d2709f6cab First pass at generative testing using leancheck. 2017-01-09 16:12:25 -05:00
Rob Rix
89e1893462 🔥 semantic-diff’s linkage against QuickCheck. 2017-01-09 15:22:54 -05:00
Rob Rix
b4cd153a43 Generate random walks with mkStdGen. 2017-01-09 15:16:06 -05:00
Rob Rix
1ee9a60039 🔥 Arbitrary instances. 2017-01-09 14:59:04 -05:00
Rob Rix
21f0b8b152 🔥 {Term,Diff}.Arbitrary. 2017-01-09 14:46:47 -05:00
Rob Rix
a86db572f6 Integrate LeanCheck into Hspec. 2017-01-07 23:16:27 -05:00
Rob Rix
7154708015 Stub in an Hspec/LeanCheck integration module. 2017-01-05 16:41:23 -05:00
Rob Rix
c8da9c5f31 Define a module for a Listable instance over Text. 2017-01-05 15:35:01 -05:00
Rob Rix
22248f26bf Stub in a Listable module. 2017-01-05 14:34:45 -05:00
Rob Rix
c18217567e Depend on leancheck. 2017-01-05 14:32:20 -05:00
Timothy Clem
772265e0bb Rename s/test/sexpression 2016-12-09 11:42:32 -08:00
Timothy Clem
686b0dffff Add new sexp style test output for diffs 2016-12-09 08:31:13 -08:00
Rick Winfrey
bab0debf6d Merge branch 'master' into parser-option 2016-11-22 15:19:30 -06:00
Josh Vera
75daa6d42e Merge branch 'master' into go-parser 2016-11-22 14:07:33 -05:00
Rick Winfrey
bbdad9b2ae Add simple count example
- Shows how a fixed point functor works with a base functor in isolation
- Shows cata, ana, hylo and para examples
2016-11-21 10:47:02 -06:00
Rick Winfrey
255490d680 Add FDoc.RecursionSchemes to cabal file 2016-11-17 16:17:26 -06:00
Rick Winfrey
7efc0dad6d Add leafTermF documentation function
- Describe the shape of CofreeF
- Describe helper functions
2016-11-17 14:47:08 -06:00
joshvera
8dbac2c98a switch statements 2016-11-10 16:19:53 -05:00
Timothy Clem
b62deb19bf Show diffs in test cases. sha1, sha2 -> shas 2016-11-03 15:41:59 -07:00
Rick Winfrey
b928f94b05 🔥 Term.Instances 2016-11-03 16:49:41 -05:00
Rick Winfrey
a580fdcac0 Export Parse 2016-11-02 20:12:28 -05:00
Rick Winfrey
cfbbc27be7 Add aeson-pretty to build-depends for semantic-diff 2016-11-02 20:12:21 -05:00
joshvera
0d58e97070 Merge remote-tracking branch 'origin/master' into go-parser 2016-11-02 15:25:50 -04:00
Rick Winfrey
1cd998ff88 Merge branch 'master' into syntax-term-to-json 2016-11-01 17:58:15 -05:00
Rick Winfrey
4128798b34 Add Term.Instances to cabal file 2016-11-01 16:39:11 -05:00
joshvera
05f3929b6a Merge remote-tracking branch 'origin/master' into go-parser 2016-11-01 12:48:15 -04:00
Timothy Clem
6cac25d2a9 Merge remote-tracking branch 'origin/master' into ruby 2016-11-01 08:50:54 -07:00
Rick Winfrey
532a29aeec Rename SemanticGitDiffSpec.hs -> IntegrationFormatSpec.hs 2016-10-27 21:09:04 -05:00
Rick Winfrey
4ac2608749 Add HashMap 2016-10-27 20:23:31 -05:00
Rick Winfrey
203836fe74 Add effects to semantic-diff 2016-10-26 16:53:50 -05:00
Timothy Clem
c213e85e9c Allow running integration tests only for one language
The --test-arguments can be passed like this:

stack build :integration-test --test-arguments "--language=ruby"

--language is naively parsed right now just to avoid getting in the way
of hspec's option parsing.
2016-10-19 10:15:58 -07:00
Timothy Clem
4b42939bf3 Basics of Ruby termConstructor 2016-10-19 08:30:46 -07:00
joshvera
72b43a1a05 Add Language.Go module 2016-10-17 15:39:25 -04:00
joshvera
1c3fe8e944 Add StrictData to semantic-diff library 2016-10-12 18:28:46 -04:00
Timothy Clem
1bdd67e5fa Alphabetize while we're at it 2016-10-06 09:03:06 -07:00
Timothy Clem
e8e9dfdcd8 Minor version bump 2016-10-06 08:45:48 -07:00
Timothy Clem
068481b35b Merge remote-tracking branch 'origin/master' into project-reorg 2016-10-06 08:45:04 -07:00
Timothy Clem
56b59ac1f1 Prune build-depends 2016-10-05 18:47:47 -07:00
Timothy Clem
9a91bb0c88 Rename executable semantic-diff 2016-10-05 16:33:26 -07:00
Timothy Clem
6cbfa91475 Try out moving project around 2016-10-05 16:17:46 -07:00
Rob Rix
8cec95aad4 Merge branch 'master' into pretty-print-expectations
# Conflicts:
#	script/cibuild-semantic-diff
#	script/cibuild-semantic-diff-linux
#	test/RangeSpec.hs
#	test/Spec.hs
2016-09-20 05:56:12 +09:00
Rob Rix
38d6bbe644 Merge branch 'master' into ghc8 2016-09-17 20:45:58 -04:00
Rob Rix
7a0534eaaf 🔥 -threaded & -fprof-auto on the lib.
Because:

```
Warning: 'ghc-options: -threaded' has no effect for libraries. It
should only
be used for executables.
Warning: 'ghc-options: -with-rtsopts' has no effect for libraries. It
should
only be used for executables.
```
2016-09-14 19:15:52 -04:00
Rick Winfrey
2f2dd26fbc Add hspec-expectations-pretty-diff to semantic-diff 2016-09-14 16:44:46 -05:00
Rick Winfrey
91b12b71d0 Change semantic-diff-test -> test 2016-09-14 16:12:06 -05:00
Rob Rix
2e28d0d582 Data.These has its own Arbitrary instance these days. 2016-09-14 16:42:01 -04:00
Rob Rix
4a06d76054 Move cmarkParser to its own module. 2016-09-14 02:08:27 -04:00
Rob Rix
dcc164d09f Add a spec for Source. 2016-09-13 11:35:10 -04:00
Rob Rix
2b34916554 Build and run RangeSpec 😔 2016-09-13 11:18:38 -04:00
Rob Rix
b4e6e1dbb8 Merge branch 'master' into markdown 2016-09-13 10:35:28 -04:00
Timothy Clem
e862ffe86e Move to semver MAJOR.MINOR.PATCH 2016-09-08 13:28:43 -07:00
Timothy Clem
81651283ea Version change to validate --version output 2016-09-08 11:11:16 -07:00
Timothy Clem
ed08914d18 Show version for both tool and library 2016-09-08 11:09:24 -07:00
Rob Rix
38abf6b339 Merge branch 'master' into abstract-term-construction-out-of-parsing
# Conflicts:
#	src/Parser.hs
#
tools/semantic-git-diff/test/corpus/diff-summaries/javascript/switch-sta
tement.json
#
tools/semantic-git-diff/test/corpus/diff-summaries/javascript/throw-stat
ement.json
2016-09-08 09:52:01 -04:00
Rob Rix
cccd9e9cc6 Stub in a term constructor for C. 2016-09-07 15:10:49 -04:00
Rob Rix
64edd14b1d Stub in a module for JS-specific stuff. 2016-09-07 11:50:41 -04:00
Rick Winfrey
b07d4d2cdf Extract Arguments to its own module 2016-08-31 13:09:41 -05:00
Rob Rix
0ebb18da7e Add cmark to our dependencies. 2016-08-29 12:51:44 -04:00
Timothy Clem
24cb9f8d94 No more os(darwin) specific options 2016-08-25 15:54:55 -07:00
joshvera
39757eca55 Add pgml=script/g++ to bench targets and -O2 on semantic-git-diff target 2016-08-19 16:31:19 -04:00
Rob Rix
2477a40b6c Enable FlexibleContexts for the tests. 2016-08-11 12:29:17 -04:00
Rob Rix
47ea24e90a Merge branch 'master' into precompute-p,q-grams
# Conflicts:
#	test/CorpusSpec.hs
2016-08-10 10:24:07 -04:00
Rob Rix
b97b422cfb Revert "Enable FlexibleContexts for the tests."
This reverts commit 1c0007137862d4c263d75225c7ff579c574c48b1.
2016-08-10 09:44:55 -04:00
Rob Rix
959f15198c 🔥 Data.Vector.Arbitrary. 2016-08-10 09:44:02 -04:00
Rob Rix
f0466c0c43 Enable FlexibleContexts for the tests. 2016-08-10 09:15:42 -04:00
joshvera
46b1a7385e Include protolude for Unsafe in tests 2016-08-09 16:14:46 -04:00
Rob Rix
25f4d2e751 Merge branch 'master' into precompute-p,q-grams
# Conflicts:
#	src/Diffing.hs
#	src/Parser.hs
#	src/TreeSitter.hs
2016-08-05 13:13:36 -04:00
Rob Rix
a06dd1dc1e Move the Arbitrary instance over Vector into its own module. 2016-08-05 10:14:53 -04:00
Rob Rix
60c4effabe Diffing annotates terms with their feature vectors. 2016-08-04 20:43:10 -04:00
Rob Rix
ec548b56d4 Sort the test dependencies alphabetically. 2016-08-04 20:42:39 -04:00
Rob Rix
9a14248c08 🔥 Operation. 2016-08-03 18:12:58 -04:00
joshvera
8b0f496b90 Merge remote-tracking branch 'origin/master' into error-syntax 2016-07-27 19:00:27 -04:00
joshvera
ae4142ad7c Add SourceSpan module 2016-07-27 17:15:09 -04:00
Rob Rix
cfddd9ca75 Merge branch 'master' into sequenceable 2016-07-26 15:43:02 -04:00
Rob Rix
8f15a59282 Stub in a spec for the Mergeable stuff. 2016-07-26 03:56:52 -04:00
joshvera
1197d46d31 Remove megaparsec 2016-07-25 13:34:38 -04:00
Rob Rix
77969d5366 Merge branch 'master' into sequenceable
# Conflicts:
#	src/Diff.hs
#	src/Syntax.hs
2016-07-22 18:40:11 -04:00
Rob Rix
9ae7f52e8f Rename Sequenceable to Mergeable. 2016-07-22 17:38:10 -04:00
Rob Rix
808f15d40e Stub in a generic Sequenceable module. 2016-07-22 15:33:01 -04:00
Rob Rix
f53cf8f05e Stub in a Sequenceable typeclass. 2016-07-22 15:28:47 -04:00
joshvera
485fc884a4 Merge branch 'syntax-redux' into property-tests 2016-07-22 14:39:54 -04:00
joshvera
70f9329f1a Merge remote-tracking branch 'origin/master' into syntax-redux 2016-07-22 12:36:03 -04:00
joshvera
ad4d36f7fd Add a CoArbitrary instance to Category 2016-07-17 11:18:31 -04:00
Rob Rix
631b557823 🔥 DiffOutput.hs. 2016-07-15 16:01:43 -04:00
joshvera
27c338331f Merge remote-tracking branch 'origin/master' into syntax-redux 2016-07-14 15:22:46 -04:00
joshvera
453334d966 Use wl-pprint-text to pretty print diff summaries 2016-07-14 14:44:18 -04:00
joshvera
58ff433dd0 Merge remote-tracking branch 'origin/master' into pretty-print-summaries 2016-07-14 14:38:46 -04:00