873 Commits (b70a0f0b650649340e3f3c7ccf2c1a6bebfea6ec)

Author SHA1 Message Date
Jules Villard bd74512c1a [cli] support all the analyzer forms in the filtering options
7 years ago
Jules Villard 06dec8177a [cli] make checkers the default when no analyzer is specified
7 years ago
Jules Villard 588142c908 [checkers] enable biabduction by default + docs and logs improvements
7 years ago
Dino Distefano f87447ba52 Uninitialized value/variable checker
7 years ago
Jules Villard e56af27b38 [driver] add a way to force infer to use a particular integration
7 years ago
Jeremy Dubreil 171ee61df0 [infer][checkers] fix the filtering mechanism based on the analyzer name
7 years ago
Jules Villard 9a21404ace [cli] introduce `-a biabduction` and make `-a infer` an alias to it
7 years ago
Jules Villard 3790ca5487 [checkers] declare --resource-leak with the other checkers
7 years ago
Jules Villard b95f29c8d1 various minor improvements
7 years ago
Jeremy Dubreil 03cb052ad9 [infer][checkers] run the Java biabduction tests using the checkers framework
7 years ago
Jeremy Dubreil 923a15fa60 [infer][clang] initial version of a nullable checker for Clang languages
7 years ago
Jeremy Dubreil 5741dbf2a5 [infer][java] remove unused list of dynamic dispatch policies
7 years ago
Jules Villard 485ece7ef1 [sql] bump busy timeout from 1s to 10s
7 years ago
Jules Villard 2d644b36af [clang] do not translate dependent types
7 years ago
Mehdi Bouaziz eff7bb5bdf [inferbo] Replace buckets with issue types
7 years ago
Sam Blackshear c3564c94be [cleanup] Remove L.progress printing of creating results database
7 years ago
Jules Villard 65a53a0c63 [cli] do not regenerate report.json when printing specs to stdout
7 years ago
Jules Villard f3d98eb807 [time] do not rely on gettimeofday for measuring time
7 years ago
Jules Villard 97efcd426f [sql] clean up temp files after running
7 years ago
Jules Villard 8012d61b0f [sql] do not generate the source file for attribute store if they are no-op
7 years ago
Jules Villard ee1b688e6d [sql] let sqlite handle the attributes update logic
7 years ago
Jules Villard b00451d23e [sql] Cache key blobs
7 years ago
Jules Villard 40c44b0378 [sql] reuse prepared statements
7 years ago
Jules Villard 993ee56fa1 [sql] disable compaction while merge results
7 years ago
Jules Villard 2adf654950 [sql] add proc attributes DB
7 years ago
Mehdi Bouaziz f37339bd38 Use SymOp.try_finally to avoid swallowing timeouts
7 years ago
Mehdi Bouaziz e8ca44c808 Ensures retry is tailrec
7 years ago
Jeremy Dubreil 3c09ae953d [infer][objc] Run the biabduction test using the checkers analyzer
7 years ago
Jeremy Dubreil 243fd57eb7 [infer] Add an option to specify the name of the nullable annotation
7 years ago
Mehdi Bouaziz bb15aba766 [log] Even better exception reraising
7 years ago
Jeremy Dubreil 7b8c46a04e [infer][biabduction] remove the flag to trigger on/off the angelic mode in the backend
7 years ago
Sam Blackshear b3e8e972d6 [thread-safety] separate warning type for interfaces called in non-threadsafe context
7 years ago
Jules Villard d2b4f3c8da [config] add option to force deletion of results dir
7 years ago
Jules Villard 72b1ac4b5a Turn off --keep-going by default
7 years ago
Martino Luca 35ad7dd8bf [AL] Use Parmap to schedule parallel processes on compilation-database-based analyses
7 years ago
Daiva Naudziuniene ac33bf6e66 [destructors] Injecting destructor calls of virtual bases inside destructor bodies
7 years ago
Dulma Churchill 59be79a81e [linters] Improve the linters-doc-url flag, by splitting the url from the left, so we allow urls with colons
7 years ago
Jules Villard 2fff3b0733 [clang] distinguish genuine internal failures from unimplemented features
7 years ago
Jules Villard d7057ece2b [log] disable --keep-going in strict mode
7 years ago
Jules Villard 0cc371d0a2 [driver] remove infer-clang fake command
7 years ago
Dulma Churchill 5f176f40e3 [linters] Add linters_doc_url flag for custom doc_urls for linters
7 years ago
Jules Villard b740533945 [pp] refactor Pp functions and make them more flexible
7 years ago
Jules Villard c07cd81392 [log] better exception reraising
7 years ago
Jules Villard 24a9e44dd1 [log] log to toplevel log file in infer subprocesses
7 years ago
Martino Luca 740e9973d6 Replace existing calls to `exit` with InferExit exceptions to better control flow of executions
7 years ago
Jules Villard b5ff17825f [log] print sensible backtrace and message on `Logging.die`
7 years ago
Sam Blackshear 81c68a34cd [infer] python integration: parser, cfg support
7 years ago
Sam Blackshear 9ab89025a8 [utils] only make copies of strings that need to be escaped
7 years ago
Jules Villard 62853bbd72 [config] make --<checker>-only actually work
7 years ago
Sam Blackshear b4c0ddcff3 [cleanup] kill `Config.frontend_debug`
7 years ago
Jeremy Dubreil 32d462b778 [infer][java] add an option to only translate the signature of the methods and skip the body
7 years ago
Jules Villard 1c375a17ac [log] die more appropriately
7 years ago
Jules Villard c16884b97f [jbuilder] turn I{Std,List} and atd-generated files into libraries
7 years ago
Martino Luca e8a0599850 [AL] add `--linters-validate-syntax-only` to check whether there are any syntax errors in AL files
7 years ago
Jules Villard a34fcebc59 [models] avoid race conditions when building and installing the models
7 years ago
Dulma Churchill 673f2b6917 [linters] Add option to specify iphone sdk version by path
7 years ago
Jules Villard 8fd9d40ca8 [cleanup] use constant strings in `Config` for dir names
7 years ago
Jules Villard 69299ba675 [filtering] improve issue type filtering CLI
7 years ago
Dulma Churchill 3589773bf7 [buck integration] Add a dependency depth option
7 years ago
Jules Villard ebbc202342 [help] in infer --help, show in which manual each option can be found
7 years ago
Jules Villard 52746fd9eb [checkers] add --<checker>-only options
7 years ago
Jules Villard 6505fa694d [help] add --long-reset for list and optional options
7 years ago
Dulma Churchill 931d4442c8 [buck integration] Add buck flavor option to use for getting dependencies
7 years ago
Sam Blackshear 1157364a09 [preanalysis] kill copy-propagation code
7 years ago
Dulma Churchill c435ba2c76 [linters] Add a reset option for linters-def-folder
7 years ago
Jules Villard 679b125ac4 [trace] infer subcommand for inferTraceBugs
7 years ago
Jules Villard 6a4e4d4b6a [diff] support for --gen-previous-build-command-script
7 years ago
Jeremy Dubreil 34d10fdede [infer][cleanup] remove some left-over use of the Eradicate analyzer entry
7 years ago
Jeremy Dubreil 99b412e165 [infer][checkers] remove the Eradicate analyzer option
7 years ago
Jules Villard 6f3cdd462d [report] make --report-hook show up in `infer --help`
7 years ago
Jeremy Dubreil a292620a69 [infer][backend] No longer swallow the process failures unless --keep-going is passed from the command line
7 years ago
Jeremy Dubreil 7680c83f45 [infer][build] enable the OCaml compiler unused value declaration warning
7 years ago
Jules Villard 854b8f30bd [CLI] always pass --issues-txt to the report hook script
7 years ago
Jules Villard 833b093174 [diff] make use of --changed-file-index
7 years ago
Jules Villard a5393e9a37 [diff] set reactive when `infer-diff` is invoked
7 years ago
Jeremy Dubreil e0ad3a9d75 [infer][differential] remove the option to prevent the conflicts between Eradicate and Biabduction
7 years ago
Sam Blackshear 8fde27014a [absint] add widening threshold to crash hard in the face of likely divergence
7 years ago
Jia Chen f658690846 Whitelist more iterator-related functions and classes
7 years ago
Jeremy Dubreil bf11a27158 [infer] merge --failures-allowed and --keep-going
7 years ago
Jia Chen c4f153947b Removed unused option `allow_missing_index_in_proc_call`
7 years ago
Jeremy Dubreil f49d292c3b [infer][backend] remove the bi-abduction based code for taint analysis
7 years ago
Jeremy Dubreil fd4fbe163c [infer] make sure we never swallow the failures when analyzing the models
7 years ago
Sam Blackshear 73f3eee9cd [checkers] use liveness analysis to create dead store checker
7 years ago
Jules Villard fb9cad4ea7 [utils] `Utils.dir_is_empty` was always returning `false`
7 years ago
Sam Blackshear 58a7cc48c1 [java integration] use argfile when trying to store a lot of data in the environment
7 years ago
Jia Chen 217363f5d6 Whitelist comparison operators and their equivalent functors in <functional>
7 years ago
Jia Chen 6c874957d0 Turn the analysis on for std::pair
7 years ago
Mehdi Bouaziz e828b0bf8a [pp] hv box for printing collections
7 years ago
Sam Blackshear 52577c0a69 [CLI] don't allow the Java buck integration to store too much data in an environment var
7 years ago
Sam Blackshear 29f686d245 [buck] include hash of .inferconfig in cache key
7 years ago
Jules Villard 297254d15e [buck] create log files erase at the end of the run
7 years ago
Jules Villard d07c8a0403 introduce new "diff" command
7 years ago
Jules Villard b0c2cfd7d4 [config] kill --bugs-json option
7 years ago
Josh Berdine 6bbb186ce2 [format] Attach docstrings to be warning 50 clean, other doc fixes
7 years ago
Jules Villard 36b6ab1779 [log] die in a proper fashion
7 years ago
Jeremy Dubreil ad54126dab [infer][ondemand] add a `--keep-going` command line option to specify when to catch the exceptions raised during the analysis
7 years ago
Josh Berdine bab3d81cb0 Convert Reason to OCaml, and auto-format OCaml
8 years ago
Josh Berdine f07de2d9c9 Replace long structured string literals with 'quoted strings'
8 years ago
Jules Villard e79f3837c3 [CLOpt] allow to override the subcommand in infer sub-processes
8 years ago
Jia Chen c1905b87b1 Making the report blacklist configurable through command line
8 years ago
Josh Berdine a98f5ab244 unbreak build
8 years ago
Josh Berdine b83ab88b65 [multilinks] do not warn when the multilink does not exist
8 years ago
Jia Chen b5b9c28a02 Add --write-html-regex-whitelist option that prints out debugging html only for selected source files
8 years ago
Radu Grigore 8c98bee660 [infer][PR] Make --java-jar-compiler visible in `infer capture --help`.
8 years ago
Josh Berdine e04dd37df3 update opam deps
8 years ago
Jules Villard 068622ce1b [-notest] goodnight, sweet prince
8 years ago
Jules Villard 2f569e2b97 [driver] move things around
8 years ago
Jules Villard 83148a71aa [rundiff] thread the changed files list through the code instead of using the Config-time value
8 years ago
Jules Villard f38462407e [utils] make `read_file` return a `Result.t`
8 years ago
Jia Chen 1edcbce35b Whitelist std::swap in C++ analyses
8 years ago
Dulma Churchill 45a8e48e00 [linters] Adapt the debugger and linters-developer-mode to the new logs
8 years ago
Martino Luca 20a6131ccf Compute differential of certain files only, if desired
8 years ago
Jules Villard a84df4673a [flock] truncate locked files explicitly to prevent race conditions
8 years ago
Martino Luca acb7cf8dfe Remove unused `--filter-report-paths` argument
8 years ago
Dulma Churchill 99a0f894b6 [linters] Add option to blacklist the unavailable api check for some files
8 years ago
Martino Luca f2728f5592 Suppress warnings on SourceFile creation, if desired
8 years ago
Martino Luca b7d0c3d45b Limit creation of TV links
8 years ago
Andrzej Kotulski cf8d5483db [C++] Add option to exclude header models from compilation
8 years ago
Jules Villard d1ef5ae27f [log] fix issue with --print-logs
8 years ago
Jules Villard b449b8c735 [wibble] refactor error output
8 years ago
Jules Villard 7a1f1d93ad [log] --stats sets debug level to 1
8 years ago
Jules Villard 93cc3266e8 [log] log to a single file with different categories and debug levels
8 years ago
Jules Villard 03bd3f1df1 [log] append ERROR in front of `failwith` toplevel messages
8 years ago
Jules Villard b50f9f2695 [police] open IStd everywhere
8 years ago
Jules Villard a121e4bb01 [oops] do not report in analysis sub-processes
8 years ago
Jules Villard 6f0911c157 [CLI] do not generate --command options by default
8 years ago
Jules Villard 5fae8ca712 [CLI] deprecate `-a capture/compile` and `-- analyze`
8 years ago
Jules Villard 2608ec67c3 [CLOpt] add option `f` argument to a bunch more `mk_*` functions
8 years ago
Jules Villard 0404641ab3 [utils] move parts of utils into their own submodules to avoid future dependency cycle
8 years ago
Mehdi Bouaziz 5bed343280 [commandline] Fix error option '' expects one of
8 years ago
Martino Luca 2e8e5733f6 [AL] Load AL files from a directory
8 years ago
Jules Villard f9c146ced1 [log] pardon my french
8 years ago
Sam Blackshear 4ef487928c [quandary] make passthroughs optional
8 years ago
Sam Blackshear 38d3946c71 [quandary] support for basic return value sanitizers
8 years ago
Jia Chen 07c6fbef81 Added an initial implementation of a checker that suggest the use of @Nullable
8 years ago
Dulma Churchill 43d7428e8f [linters] Linters options in the help
8 years ago
Sam Blackshear 927b08346e [SRI summer school] skeleton code for lab
8 years ago
Martino Luca d5fbb298eb Skip compilation of certain source files, if desired
8 years ago
Jules Villard 71f20908a1 [logging] revert to using `assert false` since we catch `Assert_failure` in some places
8 years ago
Jeremy Dubreil 16b87a3675 [infer] more cleanup for the tracing mode options
8 years ago
Martino Luca 34a0efd626 Add optional field in serialized output
8 years ago
Jules Villard 741e527826 [console] print progress-like messages on stderr
8 years ago
Jules Villard b964f6ab74 [CLI] options to unset default checkers and to print active checkers
8 years ago
Jeremy Dubreil 441bf7131a [infer][CLI] remove the Tracing analyzer option and only rely on the --tracing option for the biabduction analysis
8 years ago
Sam Blackshear 32ead76a3b [absint] make Set and Map functors take an ordered type
8 years ago
Jeremy Dubreil 11ebad7cea [infer][checkers] finaly remove the unecessary 'checkers' flag
8 years ago
Jeremy Dubreil 73e9963b76 Revert "[infer][checkers] remove the unecessary 'checkers' flag"
8 years ago
Jeremy Dubreil 7d0375d9ee [infer][checkers] add missing command line flags to enable/disable the checkers enabled by default
8 years ago
Jeremy Dubreil 5773a903c6 [infer][checkers] remove the unecessary 'checkers' flag
8 years ago
Jeremy Dubreil f43e18b7b6 [infer][checkers] add an option to enable the Fragment View Checker
8 years ago
Jeremy Dubreil 3b9aa9ad15 [infer][checkers] filter out the experimental issues instead of using a whitelist
8 years ago
Jules Villard 801c605c26 [CLI] switch to infer-<command> (symlinks) executables
8 years ago
Jules Villard 81177dc711 [CLI] skip anon args for `infer clang ...`
8 years ago
Jules Villard 5881b676a2 [CLI] parse contents of @argfiles
8 years ago
Jules Villard 6c3845257f [manual] list all supported options in `infer --help` and `infer --help-full`
8 years ago
Jules Villard d508b0880d [manual] add --help-format option
8 years ago
Jules Villard 709376945f [config] migrate help to use man pages
8 years ago
Jeremy Dubreil 7e12885f98 [infer][checkers] remove the quandary analyzer option and rely on the --quandary flag only
8 years ago
Sam Blackshear 9157f42b7c [test] diagnose invalid source file issue
8 years ago
Jules Villard 29f7967f26 [build] remove unused values
8 years ago
Mehdi Bouaziz 5a57be9003 [infer][checkers] remove the bufferoverrun analyzer option and rely on the --bufferoverrun flag only
8 years ago
Jeremy Dubreil 8064ac2614 [infer][checkers] remove the siof analyzer option and rely on the --siof flag only
8 years ago
Jeremy Dubreil 62be37f163 [infer] parse the classpath information from the javac command line
8 years ago
Sam Blackshear 6f33fa4089 [cli] parse classpath from argfiles
8 years ago
Jeremy Dubreil ef354e6e2b [infer][checkers] remove the threadsafey as analyzer option and rely on the --threadsafety flag only
8 years ago
Jeremy Dubreil 0097d8a5cb [infer] First step to the biabduction analysis using the checkers framework
8 years ago
Sam Blackshear 78a7865f2a [CLI] parse argfile contents into Config vars
8 years ago
Martino Luca 233d6a53c0 [Infer] Emit potential exception lines into qualifier's message
8 years ago
Sam Blackshear 3c0cf115b3 [quandary] add option for parsing endpoints from inferconfig
8 years ago
Dulma Churchill 69afe434a9 [clang] Add a flag to get around missing files in the buck integration
8 years ago
Jules Villard 15b8f80e18 [build] record last modified date of --help data inside ./configure
8 years ago
Jules Villard 6f264a30fa [build] remove c stubs and ctypes dependency
8 years ago
Jules Villard 3325306c58 [config] rename --report and -report to --stats-report
8 years ago
Jules Villard f3d2bd7c08 [subcommands] support subcommands without leading --
8 years ago
Jules Villard 31a6aba3c2 [siof] enable SIOF checker only when new --siof option is passed
8 years ago
Martino Luca 46c7aa378c Drop XML reports in InferPrint
8 years ago
Andrzej Kotulski 6d360fb84a [C++] Replace clang_include_to_override with regex
8 years ago
Josh Berdine ebf9acf6a2 Use tail recursive infix list append
8 years ago
Jules Villard e8a6c2e68d [CLOpt] replace uses of Str with Core.String
8 years ago
Jules Villard 68d6f73142 ocaml 4.04.0
8 years ago
Jules Villard 857eae7c6b [build] address warnings 52 and 57
8 years ago
Jules Villard dd2c56da06 be more careful about handling invalid source files
8 years ago
Jules Villard 724a592c34 [toplevel] do not read inferconfig location from the command line
8 years ago
Dulma Churchill 07c9e71399 [linters] Improve linter developer mode
8 years ago
Jules Villard b349fb147c [build] upgrade Reason to 1.13.3
8 years ago
Andrzej Kotulski 3cdb0e04f5 [SourceFile] Move append_crc_cutoff to DB module
8 years ago
Dulma Churchill 830b185e6a [driver] Improvements to buck compilation database mode
8 years ago
Dulma Churchill 9a9dec4d96 [linters] Disable hard_coded linters in linters developer mode
8 years ago
Jules Villard cccefd6434 [driver] better user error messages
8 years ago
Dulma Churchill 15ede90c44 [driver] Add warning about nothing captured
8 years ago
Jeremy Dubreil 54547c9fd7 [infer][checkers] simplify the logic to invoke the repeated call checker
8 years ago
Josh Berdine 6d2a88ed64 Add --chunk to set per-procedure-parallelism chunk size
8 years ago
Dulma Churchill f4bc0db2b4 [clang] Make capture with simple clang command be a method call
8 years ago
Jeremy Dubreil 1cd4b4cc38 [infer][checkers] Do not run the reapeted call checker by default
8 years ago
Andrzej Kotulski 5cfde325fd [C++] Fix matching of qualified cpp names
8 years ago
Andrzej Kotulski d4e9f0de64 [Makefile] Print duplicate symbols to separate file, not stderr
8 years ago
Martino Luca a7b947f971 Add support to format reports natively
8 years ago
Jules Villard 0b4f4953a5 [build] move to ctypes stubs
8 years ago
Jules Villard 0548b7bd5e [buck-db] add flavour more robustly
8 years ago
Matthew Haughton 2e1fe6836a [infer][PR] display additional options in help text
8 years ago
Jeremy Dubreil c5b30b4c05 [infer][backend] remove the perf stats from the summaries
8 years ago
Jules Villard 7d02d59540 Revert "[infer][java] add an option to disable the creation of the human readable list of issues found"
8 years ago
Jules Villard 1a8e99963c [build] delete tp/fts
8 years ago
Andrzej Kotulski 8d5be14e9c [backend] Escape URLs to fix html output
8 years ago
Jules Villard dba740632c [cli] deprecate multiletter short options
8 years ago
Martino Luca 8ab1adf40d Better help message for `filter-report-paths` argument
8 years ago
Cristiano Calcagno d53160dee7 [backend][serialization] Fix flushing of temp file in serialization write
8 years ago
Cristiano Calcagno ec6a3cf6bb [backend] Add support for command-line option --per-procedure-parallelism
8 years ago
Martino Luca 6e84a4b3cb Add `--filter-report-paths` argument to restrict results to a given list of paths
8 years ago
Cristiano Calcagno 125fe4f21a [backend] Fix read-write race in serialization, using lock + rename.
8 years ago
Jeremy Dubreil 8bd8d5093c [infer][java] add an option to disable the creation of the human readable list of issues found
8 years ago
Andrzej Kotulski 8168d07240 [backend] Print timeout information into stdout in debug mode
8 years ago
Jules Villard 6125632af3 [subcommands] read subcommand args from .inferconfig and the env
8 years ago
Dulma Churchill 674cfe4c83 [linters] Create a linters developers mode
8 years ago
Jules Villard a8ba910c69 [subcommands] support --help in subcommands
8 years ago
Sam Blackshear 5134ea36ed [thread-safety] enable defining aliases of @ThreadSafe in .inferconfig
8 years ago
Martino Luca f8a65e698c Add differential and filtering functionalities to Infer, to compare two analyses
8 years ago
Martino Luca 3eecb243e6 Customize tests output via InferPrint's command-line
8 years ago
Cristiano Calcagno 9147e071f3 Serialization: lock files before writing
8 years ago
Jeremy Dubreil 9c52e8ee68 [infer][backend] remove the concept of timestamp in summaries and use the summary status instead
8 years ago
Cristiano Calcagno 6d6d6f6efa [backend] Cleanup Serialization module
8 years ago
Cristiano Calcagno 9a06a859e2 Deprecate IList part 3.
8 years ago
Cristiano Calcagno b1b5460529 Deprecate further IList functions
8 years ago
Cristiano Calcagno 41c5be9bad Deprecate more IList functions
8 years ago
Cristiano Calcagno 731dead406 More IList deprecation: fold functions
8 years ago
Jules Villard a469e97987 [siof] add --siof-safe-methods whitelisting option
8 years ago
Jules Villard a8be4f1f4f [clang] options rename: --compilation-database -> --buck-compilation-database, --clang-compilation-db-files -> --compilation-database
8 years ago
Jules Villard 528f05430b [clang] rename --skip-clang-analysis-in-path to --skip-analysis-in-path
8 years ago
Jules Villard f796ba6bb8 [driver] crash early if infer was not compiled for the requested build mode
8 years ago
Jeremy Dubreil 4ed185e557 [infer][java] for the buck integration, remove the files that are invalidating the Buck cache
8 years ago
Jules Villard cfd3770a8b [clangdb] support shell-escaped compilation databases
8 years ago
Sam Blackshear 5cdee51ed5 [checkers] allow custom sources and sinks in annotation reachability
8 years ago
Cristiano Calcagno 60916922c6 Deprecate more IList functions and use Core List instead
8 years ago
Jules Villard 3f3b0e5fe1 [help] update help sections
8 years ago
Sam Blackshear a4efc7bba7 [cleanup] Simplify PrettyPrintable.Make functors
8 years ago
Jules Villard 93f33d07b8 [cli] do not export the contents of .inferconfig to INFER_ARGS
8 years ago
Jules Villard 4584bf9a4c move CLOpt.exe to Config and restrict its API, remove Interactive fake exe
8 years ago
Jules Villard 744edc10ec add support for subcommands not after --
8 years ago
Jules Villard 6faccb1490 [utils] catch exceptions in epilogues to allow all of them to run
8 years ago
Cristiano Calcagno 5c12d98d37 Deprecate IList module in favour of Core List
8 years ago
Dulma Churchill ffd82c01a7 [clang] Fail when compilations fails in the capture, linters mode
8 years ago
Kihong Heo cef2f0e055 Inferbo
8 years ago
Jeremy Dubreil 5322c71063 [infer][backend] find a better trade-off for the value of the SymOps timeout
8 years ago
Sam Blackshear f372b6cb2f [quandary] allow sinks to be specified in inferconfig
8 years ago
Sam Blackshear 5bddb1e548 [quandary] allow sources to be specified in inferconfig
8 years ago
Cristiano Calcagno b1421bc27f [BetterEngineering] Remove remaining uses of polymorphic equality
8 years ago
Jules Villard 4b45d5d8a0 [CLOpt] remove `accept_unknown` optional argument of `parse`
8 years ago
Andrzej Kotulski ebc4c6fd53 [config] Fail on unknown options from .inferconfig when in strict mode
8 years ago
Cristiano Calcagno f91b3128d3 [BetterEngineering] Replace uses of polymorphic equality
8 years ago
Andrzej Kotulski cceffddd78 [Config] Warn about deprecated args only from Driver exe
8 years ago
Jules Villard f9ab3aa1ac run epilogues register with `at_exit` upon receiving SIGINT as well
8 years ago
Jules Villard 2e96caac42 [mvn] new integration
8 years ago
Jules Villard 69f8140655 [cli] do not accept unknown arguments in OCaml
8 years ago
Jules Villard 988145dea0 [cli] remove support for INFERCLANG_ARGS
8 years ago
Jules Villard ca784cdb41 [cli] warn about deprecated options, clean up infer repo
8 years ago
Jules Villard cb1e241411 [CLOpt] isolate the subset of Arg.spec used
8 years ago
Cristiano Calcagno 1eaaf84a90 [checkers] Add support for html output in checkers, starting with Eradicate
8 years ago
Andrzej Kotulski 153ed5e5d9 [Config] Rename Toplevel to Driver
8 years ago
Jules Villard c10126d0fd [DB] return resolved path when path cannot be made relative
8 years ago
Jules Villard e01cab6d19 [java] more verbose debug output, fix for non-Buck integrations
8 years ago
Josh Berdine 915282105d Expose whether filename_to_relative was successful
8 years ago
Dino Distefano 45cf368ab9 Using checkers defined in linter.al and removed hard-coded checkers.
8 years ago
Sam Blackshear 61bfd1e579 [cleanup] kill useless filter_buckets option
8 years ago
Josh Berdine 4ec3af4a7f Call java frontend directly instead of using fork
8 years ago
Josh Berdine 8c42cfb364 Add root dir argument to Utils.filename_to_absolute
8 years ago
Josh Berdine c88fe26071 Reimplement Utils.filename_to_absolute
8 years ago
Josh Berdine fb9fed3441 Reimplement Utils.filename_to_relative
8 years ago
Josh Berdine 9f30059397 Remove redundant code computing initial working directory
8 years ago
Jules Villard d01d0b81e9 [log] add option to print all logs to the console
8 years ago
Jules Villard f3190bc1f0 [log] no dummy init, no leaked channels
8 years ago
Jules Villard 24e6ae9ade [log] re-use log file names
8 years ago
Jeremy Dubreil d7f112a640 [infer][java] choose the dynamic dispatch handling mode from the command line
8 years ago
Josh Berdine 8d9f70ad47 Minor redistribution of driver functionality, and debugging improvements
8 years ago
Jeremy Dubreil 4a3573b60e [infer][java] Use lazy dynamic dispatch by default
8 years ago
Jeremy Dubreil a1c1b236a8 [infer][backend] cleanup the summary origin that is no longer useful
8 years ago
Sam Blackshear f3bd314c22 [preanalysis] expose separate functions for different preanalyes (liveness, dynamic dispatch, abstraction)
8 years ago
Jules Villard 4b77b07be5 [buck] add flavors automatically to buck targets
8 years ago
Andrzej Kotulski 96ba74d18e [C++] whitelist C++ std::vector iterator implementation
8 years ago
Andrzej Kotulski acdc081100 [C++] Make C++ whitelist matching more strict
8 years ago
Dulma Churchill 9f153dbafa [linters] Add linter for checking api compatibility
8 years ago
Josh Berdine cccfad2445 Directly handle javac -version option in build command
8 years ago
Josh Berdine 3dfaa9ed7b Remove support for SuppressWarnings annotations
8 years ago
Sam Blackshear a99e0f8b63 [cleanup] delete optimistic_cast option
8 years ago
Jules Villard 4d34efe71d [toplevel] fix double-printing of infer options in --help
8 years ago
Josh Berdine fb34f30350 Directly handle javac -classpath option in build command
8 years ago
Josh Berdine a9253d8996 Directly handle javac -classes_out option in build command
8 years ago
Jules Villard 475f37ea03 [java] do not leak file descriptors when redirecting stderr to /dev/null
8 years ago
Andrzej Kotulski 1bb6401d15 [command line] Fix json deserialization of mk_path_list
8 years ago
Josh Berdine 178451e117 Disable timeouts during model analysis
8 years ago
Jules Villard bbf7df2f53 [base] remove C stubs for ioctl in favour of Ctypes
8 years ago
Jules Villard a07e16871c [java] silence javalib warnings on stderr when loading class with Java8 Code
8 years ago
Josh Berdine 6051a3e34c Fix build time regression
8 years ago
Josh Berdine 1a97b918ca Construct inferconfig patterns in Inferconfig not Config
8 years ago
Josh Berdine f3fab1e9b6 Support parsing build command arguments
8 years ago
Josh Berdine 733e2531b3 Protect against use of Core functions that add exception handlers that exit
8 years ago
Josh Berdine fc976bc3ef Core.Std.( ^/ )
8 years ago
Josh Berdine 7834c95bc8 Silence deprecation warnings
8 years ago
Josh Berdine 2e66dcfac4 Open Core.Std by default, still use Caml Hashtbl, Map, Set
8 years ago
Josh Berdine e438314776 Divide Utils into Utils, Pp, and IStd
8 years ago
Josh Berdine 23cda11fda Core.Std.Int.Set
8 years ago
Josh Berdine 900da595b1 Core.Std.String.Table
8 years ago
Josh Berdine 78ec954ae2 Core.Std.String.Map
8 years ago
Josh Berdine e00c4cd2dd Core.Std.String.Set and remove unused StringPPSet
8 years ago
Josh Berdine 76f8450203 Move proc_flags from Utils to ProcAttributes
8 years ago
Josh Berdine f86fc2ce2d Core.Std.Stack
8 years ago
Josh Berdine 7e6278baeb Core.Std.Printexc
8 years ago
Josh Berdine e4618541dc Core.Std.Int64
8 years ago
Josh Berdine 8a3707825c Core.Std.Gc
8 years ago
Josh Berdine e5b41a67d0 Core.Std.Char
8 years ago
Josh Berdine c2abce7e3a Core.Std.Array
8 years ago
Josh Berdine de2e6c9d88 Core.Std.Option
8 years ago
Josh Berdine 4ea3410b47 Core.Std.Sys
8 years ago
Josh Berdine 9d1b495f57 Core.Std.Unix
8 years ago
Josh Berdine c094287428 Convert Process.create_process_and_wait to Core.Std.Unix
8 years ago
Josh Berdine 81d616a50b Convert Process.run_jobs_in_parallel to Core.Std.Unix
8 years ago
Josh Berdine 53c170ca0a More uniform and explicit treatment of program and arguments
8 years ago
Josh Berdine 0467c9cde1 Convert DB module to Core.Std.Unix
8 years ago
Josh Berdine 7d57469d2f Core.Std.Filename
8 years ago
Josh Berdine 782e9d69f6 Core.Std.Bool
8 years ago
Josh Berdine e415b73786 Core.Std.String
8 years ago
Josh Berdine a2930b7007 Core.Std.Int
8 years ago
Andrzej Kotulski 56f8757337 [SourceFile] Move DB.SourceFile into separate file
8 years ago
Andrzej Kotulski 69b39dacb0 [DB] Create module for SourceFile
8 years ago
Andrzej Kotulski e4a93d5e13 [c++] s/cxx_experimental/cxx
8 years ago
Andrzej Kotulski 5310b617fe [c++] turn on c++ analysis by default
8 years ago
Andrzej Kotulski 0479720c91 [C++] Don't ignore header files passed in --changed-files-index
8 years ago
Andrzej Kotulski bd0f0cc7fc [DB] Don't fail hard when realpath fails
8 years ago
Andrzej Kotulski bd843b277e [DB] Remove source_file_from_string, source_file_to_string no longer returns real path
8 years ago
Andrzej Kotulski b8908282f8 [DB] Remove many callsites of DB.source_file_to_string
8 years ago
Cristiano Calcagno 827d7c3d9c [backend][perf] Address top performance bottleneck from profiling the backend.
8 years ago
Josh Berdine 198bc00df7 Remove Utils compare and equal functions
8 years ago
Josh Berdine 0cf71c74ef Sort nodes when printing cfg to dot file
8 years ago
Josh Berdine 1ca67fbfa6 ppx_compare DB
8 years ago
Josh Berdine 63d105d54b ppx_compare IList
8 years ago
Jeremy Dubreil e269f2a3fd [infer][java] basic support to run Infer using Buck genrules
8 years ago
Andrzej Kotulski d4c634e50f [DB] Cleanup code related to --changed-files-index
8 years ago
Andrzej Kotulski 6192cb98b4 [DB] Use realpath when calling source_file_from_abs_path
8 years ago
Andrzej Kotulski 3d9e5821ef [DB] Move header -> source function to DB.
8 years ago
Andrzej Kotulski a8b0871660 [reactive capture] Pass compilation db files to InferAnalyze, use absolute fnames
8 years ago
Andrzej Kotulski 7a5e53262a [DB] kill abs_source_file_from_path
8 years ago
Andrzej Kotulski 7a0a89e567 [DB.source_file] Explicitly specify what path is relative to, keep cpp model paths relative
8 years ago
Ryan Rhee ccb51912e1 [componentkit] Compute line count for main file
8 years ago
Cristiano Calcagno 31e6f19ab2 [debug] Don't keep a copy of source files in the results directory
8 years ago
Ryan Rhee 661de290e7 [componentkit] Gate analytics behind flag
8 years ago
Andrzej Kotulski cd6e9e8b21 [InferPrint] Kill --source-file-copy option
8 years ago
Josh Berdine 34739522c0 [utils] Add CTypes binding of fts and implement remove_directory_tree
8 years ago
Josh Berdine cb412826c3 [driver] Make `infer -- analyze` almost python-clean
8 years ago
Jules Villard 15d80e04df [tests] record summary of bug traces
8 years ago
Andrzej Kotulski 4512fcd8ef [tests] Create integration tests for clang translation logic
8 years ago
Andrzej Kotulski 90f3712555 add reactive capture flag
8 years ago
Josh Berdine a739931c92 [config] Remove unnecessary -classpath option
8 years ago
Peter O'Hearn 171d1d6d43 [threadsafety] run thread safety checker on its own
8 years ago
Dulma Churchill b792d04fbd [clang] Integration with xcpretty and compilation database
8 years ago
Andrzej Kotulski 1a4d165d44 [utils] Cache results of realpath
8 years ago
Josh Berdine 25c9d8ae49 [logging] Delay re-creation of log dir until log files created
8 years ago
Andrzej Kotulski 9fb8931990 don't create infer-out/build_output directory
8 years ago
Josh Berdine 3021394a10 [config] Remove unnecessary --models
8 years ago
Josh Berdine b2680d72d0 [config] Make Config.analyzer non-optional, with None = Some Infer
8 years ago
Josh Berdine f22d03903a [logging] Delay creation of log files until they are used
8 years ago
Josh Berdine 426f29fb3c [make] Silence expected warnings and other spew from tests
8 years ago
Cristiano Calcagno 7e4710004e [perf] Use load average limit only during buck analysis
8 years ago
Andrzej Kotulski 459ec32081 kill Location.nLOC
8 years ago
Andrzej Kotulski 1cbc812502 System calls to filesystem are expensive, call them with care
8 years ago
Peter O'Hearn be977e7318 Turn GuardedBy Reporting on by default
8 years ago
Dulma Churchill bf14034289 [clang] Do compilation database capture in OCaml directly
8 years ago
Jules Villard e757d92e72 [print] print tests results from result.json, not the specs
8 years ago
Jules Villard 2f5d132734 [config] normalize all paths options
8 years ago
Josh Berdine 3ae2b41241 [refactor] Call StatsAggregator from Infer instead of from python
8 years ago
Josh Berdine 3af3ed3dfd [config] Remove unused --absolute-paths
8 years ago
Josh Berdine e9654ca51d [refactor] Separate InferPrint initialization code into separate Exe module
8 years ago
Josh Berdine bf40ff99e7 [reporting] Create report files from InferPrint not Config
8 years ago
Josh Berdine cf657b0e53 [config] Pass classpath via CLOpt.args_env_var
8 years ago
Josh Berdine a11910d535 [config] Remove unused --objc-arc option
8 years ago
Josh Berdine 4869715168 [config] Remove unnecessary --java option
8 years ago
Josh Berdine 2ce94632d2 [config] Default project_root to initial working dir
8 years ago
Josh Berdine ea696ff96d [config] Set checkers flags based on analyzer in Config
8 years ago
Josh Berdine c8a77b0ae2 [config] Set debug child options in Config
8 years ago
Josh Berdine 6aca954e72 [config] Do not pass --inferconfig-home from python
8 years ago
Josh Berdine c729d26386 [config] Default to --allow-specs-cleanup
8 years ago
Josh Berdine 1bd6615abc [config] Treat default models_jar in ZipLib instead of analyze.py
8 years ago
Josh Berdine 4422893bbd [RFC] Remove CSV and JSON munging python code
8 years ago
Josh Berdine 849799246b [config] Clean up spec library options
8 years ago
Josh Berdine eee940b2a1 [config] Convert FCP env vars to Config options
8 years ago
Andrzej Kotulski ed29bfef52 [logging] Provide binary type to logging module
8 years ago
Jules Villard f21db5dab5 [clang] compare file paths in a more principled way
8 years ago
Josh Berdine af2e9ae5c1 [config] Dynamic dispatch methods are mutually exclusive
8 years ago
Jeremy Dubreil 6ae0ebe489 [infer][java] Store the procedure descriptions in the summary to run the analyis with lazy dynamic dispatch across modules
8 years ago
Jeremy Dubreil 31d886bede [infer][java] only cache the classname of translated classes when running Infer with the --dependencies option
8 years ago
Cristiano Calcagno 47c623ff51 [Merge] Use multilink files to speed up merge with buck projects.
8 years ago
Josh Berdine a9192cffd6 [config] Eliminate ad hoc environment variables
8 years ago
Jeremy Dubreil ea2428e3da [infer][config] fix resolution of symbolic links
8 years ago
Dulma Churchill 2605ef8d6f [clang] Adding support for capture/linting based on a compilation database json
8 years ago
Jeremy Dubreil a7d2eb1d02 [infer][java] Remove the code adding a special treatment for static final fields
8 years ago
Jeremy Dubreil d891303bb6 [infer][java] Minor cleanup of the Java frontend
8 years ago
Josh Berdine a7c1105147 [config] Combine analyze_models into models_mode
8 years ago
Jules Villard 5d4e3fa267 [clang] store args into files for Buck compilation db too
8 years ago
Cristiano Calcagno 1327de0321 Fix issue with timestamps leading to files not analyzed in -reactive mode when the capture takes less than 1 second
8 years ago
Jules Villard fa53fc6efb [buck compilation db] use -- to pass buck command to BuckCompilationDatabase
8 years ago
Cristiano Calcagno 0572410ac0 [backend] Clean up the forward tabulation algorithm for the intraprocedural analysis.
8 years ago
Jeremy Dubreil dc8ab3240e [infer][java] Fix resolution of symbolic links on the project root for the Java analysis
8 years ago
Jules Villard 9535c4d89e [clang] convert filter_args_and_run_fcp_clang to OCaml
8 years ago
Jules Villard 62bfde8b5a [clang] translate global var initializers
8 years ago
Jules Villard 343556e0b2 [base] resolve links when guessing which executable we are running, move infer into bin/
8 years ago
Jules Villard 31230299ea make annoying tput shut up
8 years ago
Jeremy Dubreil 587d829a1a [infer][java] Add the possibility to choose a compiler jar that is different from the system Java compiler to generate the bytecode
8 years ago
Peter O'Hearn 6423ec74ad Writing errors for Threadsafe checker
8 years ago
Sam Blackshear 0a3993edee [utils] add tags_compare utility to make writing default comparison functions easy
8 years ago
Josh Berdine dd8b8e6d2e [reason] reformat with new version of reason
8 years ago
Martino Luca c0a66dbd49 [Infer][CTL] First implementation of a debugging feature for AST checks
8 years ago
Jules Villard 3afb6e2c32 [logging] always set up logging on startup
8 years ago
Dino Distefano 898d956513 Implemented CTL parser
8 years ago
Jules Villard c53bfe3159 [clang] rewrite plugin attachment logic in OCaml
8 years ago
Dulma Churchill caa7534a71 [cpp] Report issues in the cpp models as relative paths
8 years ago
Josh Berdine de56a302f3 [refactor] Remove unused prop reporting, and refactor
8 years ago
Josh Berdine 19969b7180 [config] Do not spam log with args read from INFER_ARGS
8 years ago
Josh Berdine f889479748 [buck] Add --version-vcs option
8 years ago
Peter O'Hearn 81344f016e [refactor] moving StringPPSet from ThreadSafety to Utils
8 years ago
Josh Berdine d8336ea906 [backend] Keep common constraints in pure join
8 years ago
Jules Villard eb391d7875 [llvm] delete llvm frontend
8 years ago
Jules Villard d9f83094b5 [clang] do not depend on Config.clang_lang and Config.source_file
8 years ago
Jules Villard 7d49e16d63 [clang] rewrite hijack_and_normalize_clang_command in OCaml
8 years ago
Dulma Churchill bd22999950 [clang] Disable the condition always true or false check for clang as it is too noisy.
8 years ago
Andrzej Kotulski b93d6b5012 [ocaml] Create base/ directory for code shared across analyzer and frontends
8 years ago