7402 Commits (0a4af7754db6319f2b8910de8d1796b1ffd8aabe)

Author SHA1 Message Date
Jules Villard f86d9193a9 [nullsafe] stop using SummaryReporting
5 years ago
Sungkeun Cho 1ed9f2f9b6 [cost] Add model for IntHashMap.keys
5 years ago
Nikos Gorogiannis 91e0b4c7a0 [racerd] fix bug in c++ mode
5 years ago
Nikos Gorogiannis 2fefe5ac91 [racerd] decouple deduplication logic from reporting function
5 years ago
Mitya Lyubarskiy 045649abaf [nullsafe] Aggregate meta-issues for top-level classes
5 years ago
Jules Villard 57fce4315a [nullsafe] kill Summary.OnDisk.proc_is_library
5 years ago
Jules Villard d369eba15e [nullsafe] get rid of Ondemand dependency
5 years ago
Jules Villard 895811cc97 [nullsafe] make eradicate file analysis an Interprocedural.file_t
5 years ago
Jules Villard d8d38655b1 [nullsafe] make eradicate an Intraprocedural.t
5 years ago
Jules Villard a11791d5fc [nullsafe] the analysis should not depend on inter-procedural summaries
5 years ago
Nikos Gorogiannis 54669287c0 [buck-java] sort infer-deps before merge
5 years ago
Nikos Gorogiannis 2973828675 [buck-compdb] use wrapper that protects from SIGQUIT
5 years ago
Nikos Gorogiannis 8843bb00a8 [buck-java] use buck wrapper that protects from SIGQUIT
5 years ago
Jules Villard de47214bcd [absint] do not log restart scheduler exceptions
5 years ago
Nikos Gorogiannis c07e578539 [buck] protect from sigquit and standardise
5 years ago
Jules Villard d14ff99f45 [pudge] try harder to prove false
5 years ago
Jules Villard 2da04b835d [pulse] require ptr>0 in free()
5 years ago
Jules Villard 385b6fa914 [pulse] revamp arithmetic, put everything in the path condition
5 years ago
Ezgi Çiçek ffde64c0c9 [litho] Don't suppress reports on private methods
5 years ago
Mitya Lyubarskiy b419541af2 [nullsafe] Skip analysis of autogen methods
5 years ago
Jules Villard 5c453393ff [pulse] recency model for memory accesses
5 years ago
Mitya Lyubarskiy d01ada643d [nullsafe][EASY] Logs when we suppress reporting
5 years ago
Artem Pianykh 064b4786f1 [nullsafe] Mark @Nullsafe with @TypeQualifierDefault&Co for Kotlin interop
5 years ago
Jules Villard c2ec55fe37 [pulse] remove traces from interval domain
5 years ago
Dulma Churchill 6c044ba2d4 [pulse] Model Core Foundation create and copy functions
5 years ago
Sungkeun Cho a61965d622 [cost] Revise suppressing cost reports
5 years ago
Nikos Gorogiannis f207b3dfda [racerd] rationalize test suite
5 years ago
Jules Villard 2d8debc562 [pulse] invalidate vector backing array correctly
5 years ago
Jules Villard b94af98936 [nullsafe] move tests nullsafe-default/ -> nullsafe/
5 years ago
Jules Villard b1e35a728d [biabd] rename test directories from {biabduction,errors,infer} to {biabduction}
5 years ago
Jules Villard a26fb42631 [biabd] less aggravating ant test
5 years ago
Jules Villard ae9f0ede41 biabduction/dune
5 years ago
Jules Villard 43586dd8c5 [biabd] stop depending on nullsafe
5 years ago
Jules Villard f519d3e183 Interproc free of SummaryReporting
5 years ago
Jules Villard 30d61f4329 Tabulation free of SummaryReporting
5 years ago
Jules Villard eb336fc4b7 SymExec free of SummaryReporting
5 years ago
Jules Villard a0b237fe06 another one
5 years ago
Jules Villard 8dabbd5eda more of the less SummaryReporting
5 years ago
Jules Villard d5c8a38fc3 one more instance of SummaryReporting gone
5 years ago
Jules Villard 540a2a7749 one instance of SummaryReporting gone
5 years ago
Jules Villard 616a534a44 biabduction is an InterproceduralAnalysis.t
5 years ago
Jules Villard e7ef387dfd add AnalysisCallbacks.proc_resolve_attributes
5 years ago
Jules Villard 0feda26ba1 use NodePrinter in biabduction/
5 years ago
Jules Villard 0d4b57a625 absint/dune
5 years ago
Jules Villard be101b6bb4 split off parts of State unrelated to biabduction
5 years ago
Jules Villard 0859f61695 make AbstractInterpreter agnostic in ProcData
5 years ago
Jules Villard 858fdcf4db move a bunch of files to/from absint/
5 years ago
Jules Villard a144c8e4df split reporting.ml for dependencies
5 years ago
Jules Villard d8e3cea7fd put JProcname in IR/
5 years ago
Jules Villard 7720e5ea3f [callbacks] get_procs_in_file does not need to be a callback arg
5 years ago
Jules Villard c1d603f6b2 add .mli to Scheduler
5 years ago
Jules Villard 3ebca8fd46 [AI] premature exception reraising is premature
5 years ago
Jules Villard 9a6cafe6ec execute checkers in the order they are registered
5 years ago
Jules Villard 5580bc8901 [deadcode] keep intermediate files around on failure
5 years ago
Dulma Churchill 2b0ff5d160 [pulse] Add interproc tests for CFBridgingRelease model
5 years ago
Dulma Churchill f28d75c910 [pulse] Add model for malloc_no_fail
5 years ago
Dulma Churchill fa13577695 [pulse] Model __bridge_transfer
5 years ago
Jules Villard 4ad899b37e [mod_dep] cluster by directory
5 years ago
Jules Villard 44108c2392 delete ondemand capture
5 years ago
Mitya Lyubarskiy 16859e0961 [nullsafe] Don't explicitly recommend annotating a nested class as @Nullsafe
5 years ago
Mitya Lyubarskiy 243564be90 [nullsafe] Recommend adding a class to trust list for @Nullsafe trust some/none modes
5 years ago
Mitya Lyubarskiy bf1c593d07 [nullsafe] Make Trust list a closed type, and expose only emptiness.
5 years ago
Mitya Lyubarskiy d5862b0a22 [nullsafe] Add checks to warn about misuse of nested class @Nullsafe annotations
5 years ago
Sungkeun Cho cba51c6a47 [inferbo] Refactoring model list
5 years ago
Sungkeun Cho 9f81b7c880 [inferbo] Add models of infer annotations
5 years ago
Mitya Lyubarskiy 6790417e82 [nullsafe][EASY] Fix a typo in the name of Nullsafe mode in the error message
5 years ago
Sungkeun Cho 3aaf260b8b [inferbo] Add model of Class.getCanonicalName
5 years ago
Mitya Lyubarskiy 0b6c5172a8 [nullsafe] Nested classes should inherit mode from the outer one
5 years ago
Mitya Lyubarskiy fccf66968f [nullsafe] A helper function to extract outer class.
5 years ago
Mitya Lyubarskiy d3ad7880b2 [nullsafe] Make trust list operate over sets instead of lists
5 years ago
Daiva Naudziuniene 247ecb813d [pulse] Fix traces for iterator invalidation errors
5 years ago
Nikos Gorogiannis ab79b2966a [racerd] refactor transition function
5 years ago
Mitya Lyubarskiy 5d8b4947fe [nullsafe] NullsafeMode operates over JavaClassName
5 years ago
Mitya Lyubarskiy fda7f4aa8c [nullsafe] Anonymous classes should inherit mode from the user-defined nested owner
5 years ago
Mitya Lyubarskiy 47540c9662 [nullsafe][EASY] Add more logs around issue reporting
5 years ago
Nikos Gorogiannis 581af4856e [racerd] fix unknown-returns-owned option to true and remove
5 years ago
Nikos Gorogiannis 07175f163c [racerd] make unknown-returns-owned true by default
5 years ago
Sungkeun Cho 7bf7d24e4b [inferbo] Add model of Enum.name
5 years ago
Sungkeun Cho 7b6ddba689 [inferbo] Revise models of Collection.set and get
5 years ago
Ezgi Çiçek 269cdb80d9 [pulse] Model `StdVector` allocator
5 years ago
Ezgi Çiçek eed39540f3 [frontned][clang] Fix the translation of CXXStdInitializerListExpr
5 years ago
Nikos Gorogiannis 7e34576bcc [racerd] recognise wrappers that make containers thread-safe
5 years ago
Nikos Gorogiannis 8f351669bf [racerd] update synchronized java container class models
5 years ago
Nikos Gorogiannis ad334aef65 [racerd] improve and complete container models
5 years ago
Dulma Churchill c76d59853b [pulse] Model CFBridgingRelease by removing the Allocated attribute
5 years ago
Sungkeun Cho 7fbe04f701 [cost] Suppress cost issues on lambda and auto-generated procedures
5 years ago
Jules Villard 3332dc1a42 [AI] improve disjunctive domain
5 years ago
Jules Villard edba795825 [AI] move disjunctive scheduling to AbstractInterpreter
5 years ago
Jules Villard 60184a5e73 [AI] light internal refactoring of the scheduler
5 years ago
Jules Villard 401ecc2406 [IR] `Instrs.empty` and `Instrs.singleton` have both directions
5 years ago
Ezgi Çiçek b0da1c6837 [frontend][clang] Remove call to skip when translating CXXStdInitializerListExpr
5 years ago
Mitya Lyubarskiy a7e8bb5f4d [reporting] Don't secretly hide `Info` issues
5 years ago
Jules Villard 50feb5481c [pudge] only ask unsat when reporting
5 years ago
Jules Villard 822a78c576 [pudge] lazily compute sledge stuff
5 years ago
Jules Villard 3220804ddb [pulse] add a cache of constants to equate them
5 years ago
Mitya Lyubarskiy 196043ab61 [nullsafe] Don't specify full class name in meta-issue text
5 years ago
Nikos Gorogiannis 73dda893ed [racerd] record dynamic types used in constructors for synchronized containers
5 years ago
Mitya Lyubarskiy 94b75585e5 [nullsafe] x-plat friendly JSON data for nullsafe metainfo
5 years ago
Daiva Naudziuniene dae7f36339 [pulse] Vector iterator model
5 years ago
David Pichardie ccb2d23c5b Make source file baby parser fails silently
5 years ago
Nikos Gorogiannis 72819a3865 [racerd] remove ownership init logic for locals
5 years ago
Jules Villard 36f44f030d [pudge] spit out sledge replay tests
5 years ago
Jules Villard 7a888170e7 [pudge] it's alive!
5 years ago
Jules Villard ab41305509 [pudge] Add a dependency on the sledge lib
5 years ago
Nikos Gorogiannis 3b46c3b4da [racerd] refactor analysis driver function
5 years ago
Sungkeun Cho 572af451a9 [inferbo] Sanity check when constructing a set of known locations
5 years ago
Mitya Lyubarskiy 6a75ba6429 [nullsafe] Take into account Lambda classes in JavaClassName
5 years ago
Sungkeun Cho 2152af123d [inferbo] Remove dead check in appending field to location
5 years ago
Mitya Lyubarskiy 54c4715adc [nullsafe] Specify the right class location in meta-issue info
5 years ago
Sungkeun Cho 30ca51366d [inferbo] Do not append field to the unknown location
5 years ago
Dulma Churchill bdba1db6ef [biabduction] Remove the flags for modelling alloc and release functions that are unused
5 years ago
Dulma Churchill 2d168f75a6 [pulse] Add options for modelling alloc models and free models from user-defined regexes.
5 years ago
David Pichardie b22f7c83d5 Java source baby parser for class declaration locations
5 years ago
Daiva Naudziuniene db965085b9 Fix tests
5 years ago
Mitya Lyubarskiy c4c8c053a1 [nullsafe] Treat not annotated synthetic fields as StrictNonnull
5 years ago
Jules Villard 6247437296 [pulse] unified API for arithmetic
5 years ago
Jules Villard 0a8ad85596 [pulse][minor] rename AbductiveDomain.Domain -> AbductiveDomain.PostDomain
5 years ago
Jules Villard af2aaf2a14 [pulse][minor] remove skipped_calls getter
5 years ago
Jules Villard bb9726bbd7 [pulse] enforce short forms for PulseDomainInterface
5 years ago
Jules Villard 94e3b06900 [pulse] enforce short forms for PulseBasicInterface
5 years ago
Jules Villard a0d1fee1dc [pulse] move SkippedCalls to its own file
5 years ago
Jules Villard c00de7ad27 [pulse] move interproc call to its own file
5 years ago
Jules Villard 9ed10d435b [pulse][minor] simplify rewriting of callee post attributes
5 years ago
Mitya Lyubarskiy 1eb762f935 [nullsafe] Recommend "trust none" as a promotion mode, when it is possible.
5 years ago
Mitya Lyubarskiy 9397b68650 [nullsafe] Introduce LocallyTrustedNonnull nullability
5 years ago
Mitya Lyubarskiy 199d53f748 [nullsafe] Unsync documentation from Nullability.ml and .mli
5 years ago
Mitya Lyubarskiy 3a629e46ce [nullsafe] Mode is unchecked unless it is in explicit trust list
5 years ago
Mitya Lyubarskiy ee9cf15d83 [nullsafe] Treat signatures in the class under analysis differently
5 years ago
Mitya Lyubarskiy c2b512c227 [nullsafe] Properly exclude third party methods from analysis
5 years ago
Mitya Lyubarskiy 8cb7f51d5e [nullsafe] Calculate promotion mode as part of meta-issue payload.
5 years ago
Mitya Lyubarskiy f130e580fa [nullsafe] Model FbInjector special functions
5 years ago
Sungkeun Cho a2d3b6fe19 [infer] Use pretty printable set/map for Typ.Name
5 years ago
Nikos Gorogiannis 93fe38bbc3 [logging] replicate internal errors in scuba
5 years ago
Jules Villard 89fd5db0ae [infer-out][9/9] migrate everything else
5 years ago
Jules Villard 8f74e4a3d8 [infer-out][8/9] kill --test-determinator-output
5 years ago
Jules Villard 7e1f0fdff9 [infer-out][7/9] kill --export-changed-functions-output
5 years ago
Jules Villard 932d3a3f92 [infer-out][6/9] kill --log-file option
5 years ago
Jules Villard cae160cccf [infer-out][5/9] migrate "specs"
5 years ago
Jules Villard b122eaef59 [infer-out][4/9] migrate infer-out/tmp/
5 years ago
Jules Villard 93bce54085 [infer-out][3/9] kill proc_stats.json
5 years ago
Jules Villard b575ad6153 [infer-out][2/9][trivial] unused unused warning
5 years ago
Jules Villard 32565782f4 [infer-out][1/9] move RunState inside ResultsDir
5 years ago
Jules Villard 8d8e0fb9fb [models][easy] cleanup summary loading
5 years ago
Jules Villard 79c5cceecf [java] kill ZipLib (aka specs-in-a-jar)
5 years ago
Jules Villard 224e0b7c52 [java] store specs files same as clang models
5 years ago
Nikos Gorogiannis 4b4caea260 [buck-java] use buck build reports for infer-deps
5 years ago
Dulma Churchill 2382e3d613 [pulse] Model Core Graphics Create and Copy just like malloc
5 years ago
Dulma Churchill 59ea968de8 [pulse] Model the correct CFAutorelease
5 years ago
Jules Villard bf671af2b2 [oss] more flexible way to have opensource stubs
5 years ago
Ezgi Çiçek e1093159b0 [pulse] Distinguish error state at top level
5 years ago
Ezgi Çiçek 8d44265ca1 [impurity] Consider exited functions as impure
5 years ago
Dulma Churchill b29d1a2f5f [pulse] Adding new value history for allocations
5 years ago
Nikos Gorogiannis d8f446a25e [scuba] support string payloads
5 years ago
Sungkeun Cho a152a6131b [inferbo] Give a right location to traces for pruning
5 years ago
Ezgi Çiçek 6105a6ab42 [pulse] Add tests for constant abstract locations
5 years ago
Jules Villard e1d7ce9628 [biabd] cache the list of modelled functions
5 years ago
David Pichardie 50c98db391 Storing class source file locations in Struct (Tenv) records
5 years ago
Mitya Lyubarskiy 3ccacb1f6e [nullsafe] Add nullsafe extras for meta-issues
5 years ago
Sungkeun Cho 2eae5ff88c [inferbo] Find method of interface or abstract class
5 years ago
Sungkeun Cho f0f91b21c6 [inferbo] Distinguish array declaration and size-setting in trace
5 years ago
Jules Villard 7410cebd3b [deadcode] more portable `find` command
5 years ago
Ezgi Çiçek 5a2b285fff [pulse] Distinguish exit state at top level
5 years ago
Nikos Gorogiannis f0afa18cbf [buck] don't die on output parse failures
5 years ago
Dulma Churchill dba4140a7b [pulse] Adding null case to malloc's model
5 years ago
Jules Villard 1cb973b44f [buck] delete infer-out/tmp/ before caching
5 years ago
Jules Villard 44ebe59b99 [config][easy] make Config.temp_file_dir relative and rename
5 years ago
Sungkeun Cho cfe4c62e47 [inferbo] Limit depth of abstract location
5 years ago
Sungkeun Cho d2276c4975 [cost] Re-locate where to print issue with heuristics
5 years ago
Jules Villard 66ed16fd27 [clang] skip initialisation of large compound values
5 years ago
Dulma Churchill 271946a178 [pulse] Model release functions from Core Graphics and Core Foundation
5 years ago
Dulma Churchill 6f2b52fcc7 [pulse] Model Core Graphics create and copy functions
5 years ago
Nikos Gorogiannis 1e25cf2168 [buck] use temp file instead of pipe for buck comms
5 years ago
Jules Villard 6e235d877e [driver] move code to scrub infer-out/ for caching to ResultsDir
5 years ago
Jules Villard 5aed10f06a [config] delete dead stats dir names
5 years ago
Jules Villard acb76469b5 [odoc] fix all provably-dodgy docstrings
5 years ago
Jules Villard c1818c0c1c [odoc] fix doc generation, no need for public names
5 years ago
Jules Villard efc59b1cdf [dune] ignore all dirs except src/
5 years ago
Jules Villard 6dc0894eef [pulse][models] add the proc name being matched to the context
5 years ago
Ezgi Çiçek cec8cbeff2 [pre-analysis] Add models for `no_return` and handle throw-catch better
5 years ago
Nikos Gorogiannis cf5925494c [buck] log target count
5 years ago
Sungkeun Cho 534149ff52 [cost] Find method of interface or abstract class
5 years ago
Dulma Churchill 902514dccd [pulse] Add unreachable point to the trace of memory leaks
5 years ago
Nikos Gorogiannis 46269eb891 [starvation] comply with issue log contract
5 years ago
Nikos Gorogiannis 7678143016 [capturedb] don't fail on unparseable buck output
5 years ago
Jules Villard bacb2b3d6e [nullsafe] unused functor argument -> get rid of module-ification
5 years ago
Mitya Lyubarskiy e10e458bee [nullsafe] Remove a wrong model for com.google.common.collect.Iterables.getFirst()
5 years ago
Mitya Lyubarskiy d51a688a1b [nullsafe][EASY] Log callee annotated signature when typechecking SIL call instruction
5 years ago
Mitya Lyubarskiy 08e7a11edf [nullsafe] Respect NullableDecl annotation
5 years ago
Sungkeun Cho 88e9079357 [cost] Add method name to report
5 years ago
Ezgi Çiçek d84fea52ae [pre-analysis] Shortcut no-return nodes to exit-node
5 years ago
Jules Villard 070e16cf61 [integrations] fix potential starvation
5 years ago
Jules Villard 348a392749 [explore] prepend its number in the list to each issue in report.txt
5 years ago
Jules Villard f867e14b89 [python] migrate 2.7 to 3
5 years ago
Jules Villard b06170429c [python] no need to be python-compatible
5 years ago
Jules Villard 1b2829b352 [python] it's just a flesh wound
5 years ago
Jules Villard 93f51a063b [explore] re-implement GitHub integration of infer-explore
5 years ago
Jules Villard d4f1b83a75 [python] migrate `infer explore --html` to OCaml, missing GitHub integration
5 years ago
Jules Villard 3fb5427b0c [python] partial rewrite of inferTraceBugs in OCaml
5 years ago
Jules Villard 15dabefd04 [CLI] let OUnit arguments pass through
5 years ago
Ezgi Çiçek 1cdc4e2501 [deadcode] Get rid of deadcode
5 years ago
Jules Villard fd03815f36 [CLI] kill --report-hook option
5 years ago
Nikos Gorogiannis dfb19d7c3e [racerd] improve interface not thread safe report text
5 years ago
Nikos Gorogiannis 76f80f114c [racerd] equip interface call records with address
5 years ago
Nikos Gorogiannis f7d6961177 [racerd][3/n] improve domain interface and consolidate access validity checking
5 years ago
Nikos Gorogiannis b194d70860 [racerd][2/n] invert inclusion between AccessSnapshot and TraceElem
5 years ago
Nikos Gorogiannis 8446e46103 [racerd][1/n] refactor AccessSnapshot to mask usage of TraceElem
5 years ago
Daiva Naudziuniene 526af36061 [uninit] Use type information from locals if argument has type void* in function signature
5 years ago
Sungkeun Cho f343be40f4 [cost] Add procedure name to trace
5 years ago
Ezgi Çiçek d97e1c8fdb [pulse][impurity] Add model for System.exit()
5 years ago
David Pichardie 121b7352f9 More powerful version of Instrs.map_changed
5 years ago
Sungkeun Cho a1a3c55186 [inferbo] Fix a bug in interval prune
5 years ago
Jules Villard c73feb82b4 [CLI] kill --pmd-xml option
5 years ago
Jules Villard 8d6153d949 [python] create console output and report.txt from OCaml
5 years ago
Jules Villard d8134e39cb [infer-out] change bugs.txt to report.txt
5 years ago
Jules Villard b720c2ca61 [python] delete dead code
5 years ago
Jules Villard d4a154fea2 [CLI] make `--quiet` also disable the progress bar
5 years ago
Mitya Lyubarskiy fbeaf7731a [nullsafe] Add known non-nullable alternatives for Android Fragment
5 years ago
Mitya Lyubarskiy 5df3801426 [nullsafe] Recommend a safe alternative for `View.findViewById()`
5 years ago
Fernando Gasperi Jabalera 2762c411b6 Use LRUCache in Ondemand.LocalCache
5 years ago
Ezgi Çiçek f7baf845fd [pulse] Fix printing order in contradiction for CItv and add tests
5 years ago
Sungkeun Cho 88474fd307 [inferbo] Add FN test due to invalid pruning of array list length
5 years ago
Nikos Gorogiannis 2b54f20733 [racerd] kill lock map
5 years ago
Ezgi Çiçek b64ed0bbf2 [impurity] Consider functions with empty pulse summary as impure
5 years ago
Mitya Lyubarskiy a3d5b4c700 [nullsafe][easy] Fix test
5 years ago
Artem Pianykh d8b0c99fa1 [nullsafe] Repro for wrong nullability of $bcvarN in try-with-resource
5 years ago
Nikos Gorogiannis f283336607 [racerd] remove dead interface function
5 years ago
Mitya Lyubarskiy 8dae30a6bf [nullsafe] Refine definition of meta issues
5 years ago
Ezgi Çiçek cf50a387e5 [cost] add a mode to compute exclusive cost
5 years ago
Nikos Gorogiannis beaed4d820 [racerd] optimise add_callee_accesses
5 years ago
Nikos Gorogiannis a2428a11e3 [racerd] remove ownership precondition module
5 years ago
Nikos Gorogiannis e3da644776 [racerd] reduce attributes to a singleton
5 years ago
Nikos Gorogiannis 7937615a20 [racerd] merge Choice and Attribute modules
5 years ago
Mitya Lyubarskiy c7d2f281f7 [nullsafe] Don't ever issue violation when dereferencing params.
5 years ago
Mitya Lyubarskiy e826736a06 [nullsafe] Make ErrorRenderingUtils `None`-safe
5 years ago
Nikos Gorogiannis ce1ba6a8c6 [java][procname] simplify printer
5 years ago
Martin Trojer 870d18a42b [buck] change order of the commands passed to buck, make sure user provided ones are last (and overrides the others)
5 years ago
Ezgi Çiçek cdb9281f1f [java][tests] Fix/suppress unchecked warnings
5 years ago
Dulma Churchill e99295e0e9 [pulse] Memory leak check
5 years ago
Ezgi Çiçek 7ca2fcc948 [pulse][purity] Add more naive models for Java
5 years ago
Martin Trojer a464880611 [gradle] replace python integration with ocaml
5 years ago
Mitya Lyubarskiy 7617707045 [nullsafe] Encapsulate creation of ReportableViolation.t inside ReportableViolation
5 years ago
Mitya Lyubarskiy e3e7a376c5 [nullsafe] Decouple nullsafe mode from issue calculation, Field Initialization
5 years ago
Mitya Lyubarskiy 2af561c593 [nullsafe] Decouple nullsafe mode from issue calculation, Inheritance Rule
5 years ago
Mitya Lyubarskiy 371eed9309 [nullsafe] Decouple nullsafe mode from issue calculation, DereferenceRule
5 years ago
Mitya Lyubarskiy 0bf5298c21 [nullsafe] Decouple nullsafe mode from issue calculation, AssignmentRule
5 years ago
Ezgi Çiçek 25c058f706 [deadcode] Fix deadcode
5 years ago
Ezgi Çiçek cc815f5d20 [pulse] Only propagate existing WrittenTo attributes at function calls
5 years ago
Nikos Gorogiannis 90a544ad2e [java] improve procname constructor
5 years ago
Nikos Gorogiannis 86ab2d7d10 [topl] disable skip tests
5 years ago
Ezgi Çiçek b372befee4 [pulse] Add more naive Java models
5 years ago
Mitya Lyubarskiy f291f93248 [nullsafe] Implement class-level analysis and calculate meta-issues.
5 years ago
Sungkeun Cho b14333485c [cost] Update cost results
5 years ago
Sungkeun Cho be1e72cd1a [cost] Update test results
5 years ago
Martin Trojer 36b8ee7198 [ant] replace python integration with ocaml
5 years ago
Ezgi Çiçek 04543938ab [impurity][hoisting] Add more tests
5 years ago
Nikos Gorogiannis d1e0375f4a [racerd] stop reporting on locals
5 years ago
Ezgi Çiçek 2bd39abefc [purity] Add model for Object.clone()
5 years ago
Martin Trojer baaf81b554 [xcodebuild] replace python integration with ocaml
5 years ago
Mitya Lyubarskiy 3ceb2efe9e [JavaClassName][easy] remove uneccesary whitespace strip
5 years ago
Ezgi Çiçek a65176de22 [pulse] Print SkippedCalls
5 years ago
Dulma Churchill d1923dcd71 [pulse] Changed the name of BaseDomain signature to avoid a name clash
5 years ago
Jules Villard 3ba91fd596 [pulse] refactor of PrePost.t vs AbductiveDomain.t
5 years ago
Jules Villard f726561732 [biabd][minor] `unSome` is just `Option.value_exn`
5 years ago
Jules Villard 7861752bf3 [pulse] rename "PulseArithmetic" to "PulseCItv"
5 years ago
Nikos Gorogiannis 8a99f4b3bb [java] bug fix for type translation
5 years ago
Sungkeun Cho bc0c060bd4 [cost] Add a test (recursive dependency in class initializers)
5 years ago
Mitya Lyubarskiy 769c221826 [JavaClassName] Introduce a function to strip out anonymous class suffix from a class
5 years ago
Sungkeun Cho 545e6c8802 [inferbo] Add models of String.lastIndexOf and String.replace
5 years ago
Nikos Gorogiannis 8ede47649c [java][procname] always return pointer types to objects
5 years ago
Mitya Lyubarskiy 544e4f2e6c [Typ.name] Move a function to JavaClassName
5 years ago
Ezgi Çiçek a4c3925d9a [impurity] Track unique accesses
5 years ago
Ezgi Çiçek e3c89b1f10 [impurity] Fix include_value_history
5 years ago
Jules Villard 5b371384fe [reportdiff] stream reading reports
5 years ago
Jules Villard a84fbecbe6 [typo] fix doc
5 years ago
Martin Trojer 4cee0882be move integration tmpfiles to infer-out/tmp/
5 years ago
Sungkeun Cho e35b26ae8e [inferbo] Get static final array values from class initializer
5 years ago
Artem Pianykh 2c96491e23 [build] Generate sources from atd using dune (but not FCP atds yet)
5 years ago
Artem Pianykh 786a72574f [build] Replace custom make cmds w/ dune promotion and byte_complete
5 years ago
Artem Pianykh 9fc048b503 [build] Use plain dune files instead of make-generated JBuilder/OCaml ones
5 years ago
Artem Pianykh fc5b092779 [lint] Update checkCopyright to handle sexp dune files
5 years ago
Artem Pianykh fcce3c0659 [RFC][build] Use dune environments and profiles instead of contexts
5 years ago
Jules Villard 40e5a3c5c3 [config] smarter handling of completely deprecated boolean options
5 years ago
Jules Villard e5b50d7d46 [quandaryBO] delete :(
5 years ago
Jules Villard 1faf00e58e [InferPrint] rename to JsonReports
5 years ago
Jules Villard 179cc58e17 [InferPrint] simplify a lot
5 years ago
Jules Villard 19e8ae652c [config] split non-json creating stuff out of InferPrint.ml
5 years ago
Jules Villard 339ebe74ec [config] sensible default for --from-json-report
5 years ago
Jules Villard c27e4c72a4 [config] delete --issues-txt option
5 years ago
Jules Villard 96490d1bad [config] delete --summary-stats option
5 years ago
Jules Villard 33626092d4 [config] delete --precondition-stats option
5 years ago
Dulma Churchill 2f90b05c2a [pulse] Add model for malloc
5 years ago
Mitya Lyubarskiy 82fb4e67b9 [nullsafe] Cleanup nullsafe top level execution
5 years ago
Ezgi Çiçek b90d7c42d3 [impurity] Do not add value history in impurity traces
5 years ago
Sungkeun Cho 117ab1164b [cost] Revert "Use type of Provider.get"
5 years ago
Martin Trojer 83062c0499 [buck] always pass --fcp-syntax-only to for buck/clang flavour capture
5 years ago
Sungkeun Cho 020cd199b5 [cost] Use type of Provider.get
5 years ago
Mitya Lyubarskiy 16554689ee [nullsafe][refactor] Don't update typestate twice when typechecking Store instruction
5 years ago
Mitya Lyubarskiy 28db342629 [nullsafe] Evaluate lhs nullability in assignment check based on field declaration
5 years ago
Sungkeun Cho 984c47cefe [inferbo] Remove dead macro definition
5 years ago
Jules Villard 957337bba2 [log] delete PerfStats and EventLogger frameworks
5 years ago
Jules Villard 6e1cca731c [debt] delete Procdesc.is_connected
5 years ago
Jules Villard 8e5ee67fed [config] datatype for checkers
5 years ago
Jules Villard e4602ba0df [clopt] do not generate "--no-" flag for [mk_bool ~long:""]
5 years ago
Ezgi Çiçek c6237f5f9f [pulse] Add model for Object.clone()
5 years ago
Mitya Lyubarskiy 087a5a9787 [nullsafe] A dedicated test for testing field nullability memoization
5 years ago
Nikos Gorogiannis 10afd021a1 [java] fix primitive types
5 years ago
Ezgi Çiçek ddd09b83fd [impurity] Refactor and ignore invalidations to constant dereferences
5 years ago
Mitya Lyubarskiy 83e72b2cbc [nullsafe][logs] More logs
5 years ago
Mitya Lyubarskiy 66c5f1bbe4 [nullsafe][refactor] Don't modify typestate without a need when typechecking call instruction
5 years ago
Mitya Lyubarskiy cb3a657465 [nullsafe][refactor] Don't modify typestate without a need in Cast instruction
5 years ago
Mitya Lyubarskiy e3a5906f7a [nullsafe][refactor] don't do tricky typestate modification inside set_original_pvar_to_nonnull_in_typestate
5 years ago
Mitya Lyubarskiy 692d618783 [nullsafe][refactor] Split a tricky function with side effect into two
5 years ago
Nikos Gorogiannis 711c48aa86 [java] extract java split name from typ module
5 years ago
Nikos Gorogiannis 95807702fc [java] jtranstype cleanups
5 years ago
Nikos Gorogiannis 34315ec438 [java] classpath and frontend fixes
5 years ago
Sungkeun Cho 3653c68c8e [infer] Add summary-lookup option in infer-explore
5 years ago
Alexander Mols 1dae8f4eb6 Cache hostname lookup in event logger module
5 years ago
Mitya Lyubarskiy 59e17f59b8 [logging] Introduce a function to call arbitrary function with subsequent logs written in an indended way.
5 years ago
Mitya Lyubarskiy 16ed8950e9 [nullsafe][BE] Log to html when TypeState is modified
5 years ago
Nikos Gorogiannis 7f992bbaa9 [java] move the class map of models into JModels
5 years ago
Nikos Gorogiannis f888160142 [java] classpath cleanup
5 years ago
Ezgi Çiçek c144761a26 [pulse] Pull skipped calls into AbductiveDomain
5 years ago
Ezgi Çiçek 5f8e6233bb [pulse] Take into account skipped calls for state comparison
5 years ago
Martin Trojer 74e54575fa [ndkbuild] replace python ndkbuild integration with ocaml
5 years ago
Martin Trojer 284c6fdb3b [buck] replace python buck integration with ocaml
5 years ago
Fernando Gasperi Jabalera ca06b7840c [ProcessPool] Saturate cores evenly when possible
5 years ago
Fernando Gasperi Jabalera addd6037ba Add Scuba tagsets
5 years ago
Jules Villard e38f51f969 [debt] kill --procs-csv
5 years ago
Ezgi Çiçek 562a43621c [pulse] Remove NoJoin sig from PulseBaseDomain
5 years ago
Mitya Lyubarskiy bd83813b3e [tech debt] Remove experimental nullability checkers
5 years ago
Nikos Gorogiannis fa4f9ef5f3 [tests] remove genrule test
5 years ago
Sungkeun Cho baf770680b [cost] Add average runtime to message
5 years ago
Ezgi Çiçek bb5cdf9b97 [pulse] Add FN tests to impurity
5 years ago
Sungkeun Cho c0d3a5ebee [inferbo] Suppress noisy internal error messages
5 years ago
Fernando Gasperi Jabalera 98096f7fb2 [ProcessPool] Prevent workers starvation
5 years ago
Mitya Lyubarskiy 1b3baa3d45 [nullsafe] Fix deadcode
5 years ago
Dulma Churchill 0322e17e72 [IR] print only the passed_as_noescape_block_to attribute if it's set
5 years ago
Sungkeun Cho 7a1e901c83 [inferbo] Keep only one invariant map in the cache
5 years ago
Mitya Lyubarskiy 0340a81002 [nullsafe][tech debt] Get rid of TypeOrigin.Undef
5 years ago
Nikos Gorogiannis 0b3031bbdc [java] separate and improve model handling during capture
5 years ago
Mitya Lyubarskiy d71e2f0d84 [nullsafe][refactor] Restructure code around node typechecking
5 years ago
Radu Grigore 0fc2769a65 [topl] A test for comparing arguments.
5 years ago
Sungkeun Cho 9dbc3981cc [infer] Add LRU hash table
5 years ago
Mitya Lyubarskiy db821846d7 [nullsafe] Respect RecentlyNonNull annotation
5 years ago
Nikos Gorogiannis 54c35bc5c6 [java] improve function figuring out package in jclasspath
5 years ago
Dulma Churchill 634a42b619 [SelfInBlock] Take ns_noescape into account when reporting captured strong self.
5 years ago
Artem Pianykh 19093a2fa0 @update-submodule: facebook-clang-plugins Fix handling of non-literal `offsetof` expressions
5 years ago
Fernando Gasperi Jabalera a154c8c328 Make ProcessPool workers each use one pipe to send updates
5 years ago
Fernando Gasperi Jabalera 17c565c2aa [scheduler][restart] Fix timeout failures
5 years ago
Jules Villard 0abc85c352 [java] move "$Lambda$" string to Config.ml
5 years ago
Jules Villard 2047f4c535 [preanal] inlining synthetic methods as a pre-analysis
5 years ago
Nikos Gorogiannis 6c8036e6c0 [buck] fix target quoting regexp
5 years ago
Ezgi Çiçek 7deaae6598 [cost] Rename ZERO_* to *_UNREACHABLE_AT_EXIT
5 years ago
Mitya Lyubarskiy e1f4da320f [nullsafe] Consistent severity for nullsafe issues.
5 years ago
Ezgi Çiçek ebbc0fc7f2 [cost] Add traces for ZERO_* issues
5 years ago
Fernando Gasperi Jabalera 082ae44ec7 Do not send task bar updates when progress bar is off
5 years ago
Mitya Lyubarskiy 335a9efec7 [nullsafe] Trust explicitly annotated third party in all modes
5 years ago
Mitya Lyubarskiy f136bf21b5 [nullsafe][refactor][messaging] Refactor code + more consistent messaging
5 years ago
Mitya Lyubarskiy 2aea7d1304 [nullsafe][refactor] Use ThirdPartyNonnull instead of heuristic in error rendering
5 years ago
Sungkeun Cho 9a38987929 [cost] Do not report `EXPENSIVE_EXECUTION_TIME` when a cost of a node is top
5 years ago
Sungkeun Cho 85812abf71 [cost] Report the biggest cost in function
5 years ago
Nikos Gorogiannis 876abcb283 [annotreach] stop printing trace in report
5 years ago
Ezgi Çiçek 43350f7c6b [cost] Add Java tests for ZERO_EXECUTION_TIME
5 years ago
Fernando Gasperi Jabalera 0397b8248d [scheduler][restart] Add analysis time to BackendStats
5 years ago
Sungkeun Cho 0d046c8e7c [inferbo] Ignore float/double constant
5 years ago
Radu Grigore 5a095ca411 [topl] Switched to low-level syntax.
5 years ago
Radu Grigore 2888a90e2a [topl] Added tests for inefficient iteration
5 years ago
Nikos Gorogiannis 3538caeb1b [starvation] skip getinstance methods
5 years ago
Mitya Lyubarskiy 73e78d9e20 [orchestration][refactoring] Introduce stronger contract for file-level callback
5 years ago
Fernando Gasperi Jabalera c2a53a1334 [scheduler] Add wall time to ExecutionDuration
5 years ago
Nikos Gorogiannis e01311c431 [scheduler][callgraph] load graph directly from DB
5 years ago
Nikos Gorogiannis 3f4458361c [scheduler][callgraph] only load defined procs
5 years ago
Sungkeun Cho 7a0be26596 [inferbo] Revise semantics of `values` function of Java enum class
5 years ago
Ezgi Çiçek cbd506011f [cost] Add tests for ZERO_EXECUTION_COST
5 years ago
Sungkeun Cho ef74f3f18d [cost] Revise message of Provider.get.modeled
5 years ago
Mitya Lyubarskiy d94b365b65 Add documentation and better naming around checker callbacks
5 years ago
Artem Pyanykh d50039b495 [infer][PR] Release infer-annotations 0.17.2
5 years ago
Artem Pianykh 70582f9ede [annotations] Fix annotation comments that cause javadoc target to fail
5 years ago
Artem Pianykh 3859f178fa [nullsafe] Properly handle method calls on trusted classes under NullsafeLocal mode
5 years ago
Sungkeun Cho 7219cb1eff [inferbo] Do not prune when the pruning target is already bottom
5 years ago
Sungkeun Cho da7cd0b45a [inferbo] Ignore error memory status
5 years ago
Artem Pianykh 3e9702edf2 [build] Fix test build failure due to use of polymorphic compare
5 years ago
Mitya Lyubarskiy f57dc78679 [nullsafe] Error reporting: recommend non-nullable alternarives for known nullable methods
5 years ago
Sungkeun Cho 50e5bfd32f [infer] Find dead signature (.mli file)
5 years ago
Fernando Gasperi Jabalera a66f6cd736 [scheduler][restart] Quantify wasted work
5 years ago
Fernando Gasperi Jabalera 5c5609591e [scheduler][restart] Reduce live-locking by using data produced on failure
5 years ago
Fernando Gasperi Jabalera b2a2919ce2 [scheduler][restart] Add Files to the work queue
5 years ago
Sungkeun Cho 100807ed2a [inferbo] Do not prune values with bottom
5 years ago
Sungkeun Cho f19e6d3c27 Revive llvm_sil.ml
5 years ago
Sungkeun Cho 3c29685667 [infer] Find dead module (.ml file)
5 years ago
Ezgi Çiçek dcb3ab1288 [inferbo] Remove dangling file
5 years ago
Mitya Lyubarskiy e334647db8 [nullsafe] More thorough documentation for contract annotations.
5 years ago
Sungkeun Cho 046e392f3a [infer] Add --continue-analysis option
5 years ago
Artem Pianykh bcaa0e0dfe [nullsafe] Add tests on interop between third-party vs other in various modes
5 years ago
Artem Pianykh 9697c6e294 [nullsafe] Fix treatment of enum values wrt nullsafe mode
5 years ago
Artem Pianykh 2572819a5b [nullsafe] Directly model nullability of values from third-party code
5 years ago
Artem Pianykh b50f13eb18 [nullsafe] Support Nullsafe(Local, trust=all/none) mode
5 years ago
Nikos Gorogiannis 43b3ef60f8 [db][procname] kill dead optional argument
5 years ago
Ezgi Çiçek ec950666a0 [infer] rely on driving for Procdesc.Node.equal_id
5 years ago
Mitya Lyubarskiy 8e1e15a8c4 [nullsafe] Fix genrule test
5 years ago
Mitya Lyubarskiy c38c2cf1bf [nullsafe][EASY] Add period at the end of dereference message when origin is present
5 years ago
Nikos Gorogiannis 281385203f [biabduction] kill guarded by check
5 years ago
Jules Villard 317a74ffee [nullsafe] show state after each instruction in debug HTML
5 years ago
Nikos Gorogiannis c10c7a39a6 [java] use a package/classname record for java classes instead of string
5 years ago
David Pichardie 64289cde4d [Java frontend]Javalib's lambda rewritting is making his way through Infer
5 years ago
Fernando Gasperi Jabalera 865691b535 [scheduler][restart] Use symlinks as locks in ProcLocker
5 years ago
Mitya Lyubarskiy 75e52f1f1b [nullsafe] Improve documentation for @Initializer annotation
5 years ago
Mitya Lyubarskiy 8ab9a7e14e [nullsafe] Don't emit Field Not Initialized warnings on @JsonField-annotated fields
5 years ago
Sungkeun Cho 175af05b8b [inferbo] Add model of vector resize
5 years ago
Nikos Gorogiannis ace23a1670 [java] use plain strings instead of mangled for JavaClassName
5 years ago
Nikos Gorogiannis a85dfe6af4 [java] get type name directly from procname
5 years ago
Ezgi Çiçek 8e3f9dd32e [cost] Pass proc_name around rather than recomputing
5 years ago
Sungkeun Cho 9562ab4d68 [inferbo] Suppress integer overflow in hash functions
5 years ago
Ezgi Çiçek ceb50cdf0e [cost] Adjust cold-start loom query
5 years ago
Fernando Gasperi Jabalera bf210844d9 Log the scheduler and cores used as part of the environment
5 years ago
Sungkeun Cho 72a061d101 [infer] Fix `make deadcode`
5 years ago
Nikos Gorogiannis c51db130fc [driver] don't clear MAKEFLAGS
5 years ago
Mitya Lyubarskiy d9595181f7 [nullsafe] Ignore autogenerated fields when issuing Field Not Initialized
5 years ago
Sungkeun Cho 4311371d81 [inferbo] Revise split model semantics
5 years ago
Sungkeun Cho 23ee36e44e [inferbo] Move Split modules to next of StdVector
5 years ago
Sungkeun Cho 35491c73a8 [inferbo] Refactor the parameter of checker
5 years ago
Sungkeun Cho bb625c6ca8 [infer] Use let* instead of let%bind
5 years ago
Jules Villard 826fd8a999 [pulse] monad, monads everywhere
5 years ago
Jules Villard 72f560036d [pulse] formal/actual length mismatch is a contradiction
5 years ago
Dulma Churchill 58913e6a1c [Infer] Dedup reports of weakSelf in Noescape block
5 years ago
Dulma Churchill 00c52a52c2 [Infer] Dedup the reporting of Captured StrongSelf
5 years ago
Dulma Churchill f6341977fb [Infer] Dedup reports of strongSelf Not checked
5 years ago
Sungkeun Cho 22601846b2 [inferbo] Add model of emplace_back
5 years ago
Artem Pianykh b41064149b [syntax] Add let binding syntax to IOption
5 years ago
Artem Pianykh 44f41d2929 [infer] Extend annotation framework to handle wider variety of param types
5 years ago
Nikos Gorogiannis ddfa6fc96e [scheduler][callgraph] use counter instead of set of scheduled procs
5 years ago
Nikos Gorogiannis a44e138dd4 [scheduler][callgraph] use a queue for graph leaves instead of a list
5 years ago
Nikos Gorogiannis 757f6ee829 [scheduler][static callgraph] remove lazy init now that it's enforced in ProcessPool
5 years ago
Ezgi Çiçek 7f8ce501d0 [purity] Remove duplicated/unnecessary code
5 years ago
Sungkeun Cho 5b0fd3af6f [inferbo] Distinguish unreachable and error status
5 years ago
Jules Villard 2c5a297636 @allow-large-files [ocaml] upgrade core to v13
5 years ago
Jules Villard 66361961b6 [ocaml] more Not_found_s
5 years ago
Jules Villard a684a1edf0 [ocaml] preparations for core v13
5 years ago
Jules Villard bc50a8e724 [inferbo] no polymorphic max in [degree_with_term]
5 years ago
Jules Villard b7f42759cf [ocaml] aliasing sexp_{list,option} doesn't work anymore
5 years ago
Dulma Churchill 51c713adf2 [SelfInBlock] Improve the error message of stronSelf Not checked
5 years ago
Radu Grigore f8511c2358 [topl] Added another small test, for BAOS.
5 years ago
Radu Grigore c2161f3c28 [topl] Minor: debug message more accurate.
5 years ago
Sungkeun Cho b9db4fa4b9 [inferbo] Add model for C++ exception throw
5 years ago
Sungkeun Cho 412e8a977c [inferbo] Add model for std::shared_ptr<>::operator->
5 years ago
David Pichardie 2cccf8adce Invokedynamic removing by class file rewriting
5 years ago
Sungkeun Cho ca04002f6c [inferbo] Revise finding constructors on std::make_shared
5 years ago
Fernando Gasperi Jabalera e2f837c81e [scheduler] Instrument ProcLocker to record its systime
5 years ago
Mitya Lyubarskiy bd166a244f [nullsafe][easy] fix the wrong comment about order of arguments in `instanceof`
5 years ago
Sungkeun Cho 92e7aeeb3e [infer] Fix clang frontend for switch statment
5 years ago