Closed reprogrammer closed 13 years ago
@Wanderer777, @samira-t:
We cannot easily exclude the JDK classes from the call graph because at least the detector of LCK01J requires some of the JDK classes (See commit c5de10177bb5d4073f5923e7ce1288a3ce785516).
@Wanderer777, @samira-t:
I ran all of our JUnit tests, exported the results of their runs, and added them to the repository (See commit bb8ecfa3a14bf3da72d295dfe1600e171488a8d4). Fortunately, most of the tests pass. I believe a few failures are because of the problems within the tests themselves. But, there are a few test specially those for VNA00-J that fail and I haven't investigate the root causes of their failures.
Even though checking the results of runs of JUnit tests pollutes the repository a little, it allows us to compare the results of our tests across commits and track how our commits affect the tests. What do you think about the checking the results of the latest runs of our tests into the repository?
@reprogrammer: Ideally, we should not commit when our tests fail. But considering that we make some fundamental changes and fix the tests later (or make more changes), which means that Keshmesh is evolving with some portion of its tests failing, the results of these tests indeed become important to track.
We believe that we've configured WALA appropriately and it cannot be made significantly more scalable. As a result, the users of Keshmesh should pick entry points that do not lead to huge call graphs.
Keshmesh with unlimited object sensitivity runs out of memory for any real Java project. So, we have to make the context less precise to make it scale on larger projects.