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

582 Commits

Author SHA1 Message Date
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
joshvera
59426b86f6 Add megaparsec to pretty print summaries 2016-07-13 14:32:53 -04:00
joshvera
7169a51265 Use wl-pprint-text to pretty print diff summaries 2016-07-13 11:58:43 -04:00
Rob Rix
4f967e0e1a 🔥 Data.OrderedMap. 2016-07-12 23:27:20 -04:00
Rick Winfrey
177af03bd3 Merge branch 'master' into syntax-redux 2016-07-12 17:03:35 -05:00
Rob Rix
6c16a071bb Stub in a generic align module. 2016-07-11 13:55:27 -04:00
Rob Rix
f97169b064 We no longer need syb. 2016-07-11 11:46:58 -04:00
Rob Rix
6c2948e317 Try to implement alignment over functors. Try, and fail miserably. 2016-07-08 17:59:54 -04:00
joshvera
1efd68d122 Merge remote-tracking branch 'origin/master' into syntax-redux 2016-07-06 16:22:25 -04:00
Rob Rix
4cfa993239 Move the Arbitrary gram functions into Data.RandomWalkSimilarity. 2016-07-05 09:18:53 -04:00
Rob Rix
28abcd1b38 Move Record’s Arbitrary instance into Data.Record. 2016-06-30 12:49:50 -04:00
Rob Rix
9611a27887 🔥 test/ArbitraryTerm.hs. 2016-06-27 15:03:04 -04:00
Rob Rix
b4107426de Stub in a spec for Diff. 2016-06-27 13:12:06 -04:00
Rob Rix
5724d2cbb3 Use k-d trees to look up the nearest neighbour. 2016-06-24 11:10:18 -04:00
Rob Rix
b604ddd446 FlexibleContexts all the things. 2016-06-23 16:19:51 -04:00
Rob Rix
011623e028 Correct the spec module import. 2016-06-23 09:51:47 -04:00
Rob Rix
4a8b7631bb Stub in a Data.Record.Arbitrary module. 2016-06-23 09:42:43 -04:00
Rob Rix
1170bfdcb2 Rename Data.Gram to Data.RandomWalkSimilarity. 2016-06-22 17:59:28 -04:00
Rob Rix
0bef12d722 Test that featureVector produces d-vectors. 2016-06-22 11:04:27 -04:00
Rob Rix
9a976869b2 Stub in a module for arbitrary grams. 2016-06-22 10:53:29 -04:00
Rob Rix
51392382ef Stub in a spec for Data.Gram. 2016-06-22 10:41:13 -04:00
Rob Rix
226be486c8 Add a Random instance over Ratios. 2016-06-21 18:48:44 -04:00
Rob Rix
ce838de9b4 Bags are DLists. 2016-06-21 17:49:34 -04:00
Rob Rix
2c9ef943b8 Depend on hashable. 2016-06-21 17:24:18 -04:00
joshvera
0a574871c9 Merge remote-tracking branch 'origin/master' into syntax-redux 2016-06-21 17:08:40 -04:00
Rob Rix
f8988adf3b Stub in a module for Grams. 2016-06-21 15:19:44 -04:00
Rob Rix
ba1fc277eb Rework the constructors and eliminators a bit to not use tagged. 2016-06-16 16:41:43 -04:00
Rob Rix
d596c02e74 :=> and field are shorthand for Tagged. 2016-06-16 11:40:43 -04:00
Rob Rix
3809f3ee43 Stub in a Data.Record module. 2016-06-16 11:30:11 -04:00
Rick Winfrey
a79d5c5bd0 Merge remote-tracking branch 'origin/master' into syntax-redux 2016-06-07 16:50:11 -05:00
joshvera
f61f9675ae Convert to function call 2016-06-06 14:56:28 -04:00
Rob Rix
29a725b125 Move ArbitraryDiff into semantic-diff proper. 2016-06-06 12:07:07 -04:00
Rob Rix
8780ea3f26 Move the Arbitrary instances for Join (,) and Join These into semantic-diff proper. 2016-06-06 11:50:45 -04:00
Rob Rix
4eb76ff3a3 Move the Arbitrary instance for Data.These into semantic-diff proper. 2016-06-06 11:46:30 -04:00
Rob Rix
378b577175 Move the Arbitrary instance for Patch into semantic-diff proper. 2016-06-06 11:43:38 -04:00
Rob Rix
a613fa0369 Merge branch 'push-benchmarks-to-graphite' into benchmark-alignment 2016-06-06 11:36:48 -04:00
Rob Rix
a571d9746d Add RecordWildCards and FlexibleInstances to our default extensions. 2016-06-03 15:59:58 -04:00
Rob Rix
69fbaf8337 semantic-diff depends on QuickCheck. 2016-06-01 09:18:31 -04:00
Rob Rix
3ada142796 Stub in a module for arbitrary Terms. 2016-06-01 09:03:15 -04:00
Rob Rix
dadaa6b420 Add an Arbitrary instance for ArbitraryDiff. 2016-05-31 20:24:49 -04:00
Rob Rix
444bdb8c50 Depend on bifunctors & these. 2016-05-31 10:58:39 -04:00
Rob Rix
7a3cfd3425 Add a function to produce generative benchmarks. 2016-05-31 10:37:34 -04:00
Rob Rix
275751b0c5 Specify the default language. 2016-05-31 10:37:14 -04:00
Rob Rix
a7bdcaa7c2 Stub in a benchmark component. 2016-05-31 09:25:00 -04:00