Skip to content

Releases: pascal-lab/Tai-e

v0.5.1-SNAPSHOT

22 Sep 03:45
Compare
Choose a tag to compare
v0.5.1-SNAPSHOT Pre-release
Pre-release

This is the latest pre-release for version 0.5.1-SNAPSHOT. Details of the changes can be found in the CHANGELOG.md. Please note that this pre-release will be removed once the stable version is officially released, and it may be overridden by newer snapshot versions as they are published.

v0.2.2

23 Sep 12:36
Compare
Choose a tag to compare

New Features

  • Add option --app-class-path.
  • Add option --keep-results.
  • Add option --output-dir.
  • Add option -wc, --world-cache-mode.
  • Add def-use analysis.
  • Add dominator-finding algorithm.
  • Add generics signature information for Class, Method, and Field.
  • Include documentation source in the repository.
  • Taint analysis
    • Support taint source for arguments of method calls and method parameters.
    • Support taint source for field loads.
    • Support taint sanitization for method parameters.
    • Dump taint flow graph.
    • Support loading multiple taint configuration files.
    • Support taint transfer between variables and instance fields/array elements.
    • Support call-site mode.
  • Pointer analysis
    • Support adding entry points of the program to analyze.
    • Support analysis time limit.
    • Support propagation for values of primitive types.
    • Support hybrid inference-based and log-based reflection analysis.
    • Add Solar reflection analysis (TOSEM'19).
    • Support annotation-based invoke handler registration.
    • Support dumping points-to set in YAML format.

Breaking Changes

  • Option and configuration changes
    • Change All dump related options. Previously, most dump options require users to specify a path to dump file; now, Tai-e uses fixed path for dump file (the file name is fully fixed, and users can still change dump directory via option --output-dir), so that users only need to specify true or false for all dump options.
    • Rename analysis class-dumper to ir-dumper.
    • Pointer analysis
      • Replace merge-string-constants by distinguish-string-constants.
      • Replace action by dump and expected-file.
    • Taint analysis
      • Require to add kind to source configurations. Previously, the taint analysis only supports one kind of sources, i.e., result of method call. Now, we support more kinds of sources, including argument or result of method call (kind: call), and method parameter (kind: param) , so users need to specify kind of each source. Please see an example.
  • API changes
    • Change pascal.taie.analysis.pta.core.heap.HeapModel.getMockObj(String,...) to HeapModel.getMockObj(Descriptor,...).
    • Change APIs of pascal.util.graph.Edge and its subclasses.
    • Change return type of Exp.getUses() to Set<RValue>.
    • Change return type of Stmt.getUses() to Set<RValue>.

v0.0.3

31 Jul 03:26
Compare
Choose a tag to compare
Update README