[Soot-list] Soot version 2.5.0 is now available
eric.bodden at ec-spride.de
Sun Jan 22 14:09:19 EST 2012
Dear Soot Users,
We are pleased to announce that Soot version 2.5.0 is now available
This release contains the following additions and improvements:
1. Modified SourceLocator so that it will automatically load a SootClass
from Soot's own JAR file if the class cannot be found on the
soot-classpath, but ONLY if the class is in package soot.rtlib.
See package documentation for soot.rtlib for more details.
2. The option -process-dir how has an alias -process-path, which makes
sense because Soot can also process JAR files. Also, -keep-line-numbers
now defaults to true. This is because so many people ask about how to
access line numbers.
3. Removed "org.apache" package from the default excludes list because
that, by default, leads to Soot not analyzing anything of tomcat, for
instance. This change follows the principle of least surprise.
4. Added option no-bodies-for-excluded that allows soot This
option causes Soot to not load any method bodies of classes from the
"exclude" packages (see -exclude option), even in whole-program mode,
unless the class is explicitly as a "basic class".
-no-bodies-for-excluded implies -allow-phantom-refs, as it uses the
phantom-refs mechanism to model classes that are not loaded.
The intent of this flag is to allow whole-program analyses to execute
quickly on little toy examples, disregarding the Java runtime. Of
course, such an analysis may be unsound - you get what you are asking
5. Added new packs "wjpp" and "wspp" for adding pre-processors.
6. ReflectiveCallsInliner now supports field set/get through reflection.
7. Integrated a novel context-sensitive points-to analysis that uses
a memory-efficient geometric encoding. The analysis was presented
in the following paper:
Xiao Xiao and Charles Zhang. Geometric Encoding: Forging high
performance context sensitive points-to analysis for Java.
In ISSTA 2011: International Symposium on Software Testing and
Analysis, Toronto, Canada, 2011
The code was contributed to Soot by Richard (Xiao) Xiao. Thanks for
this! You can find the code in soot.jimple.spark.geom. There are
new phase options in cg.spark to enable and configure this
8. Improved support for custom entry points in the points-to analysis.
9. Added option allowing purity analysis to add a "Pure" bytecode
attribute for pure methods.
10.GenericAttribute instances are now automatically read from class
files and stored in class files.
11.Soot now has virtually complete support for invokedynamic.
See tutorial/invokedynamic for details.
Also we incorporated fixes to numerous bugs. Thanks for reporting bugs
and/or providing fixes!
See http://www.sable.mcgill.ca/soot/CHANGES for details.
As of version 2.2.0 the Soot bugzilla is available at:
http://svn.sable.mcgill.ca/bugzilla/. We encourage you to add any Soot
Also, as of version 2.2.0 the Soot wiki is available at:
http://svn.sable.mcgill.ca/wiki/index.php/SootProject. The Soot team
will be using this site for discussing upcoming work, so if you would
like to know what's going on look there.
Eric Bodden, Ph.D., http://bodden.de/
Head of Secure Software Engineering Group at EC SPRIDE
Principal Investigator in Secure Services at CASED
Tel: +49 6151 16-75422 Fax: +49 6151 16-72051
Room 3.2.14, Mornewegstr. 30, 64293 Darmstadt
More information about the Soot-list