[Soot-list] Soot version 2.5.0 is now available

Eric Bodden 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
at: http://www.sable.mcgill.ca/soot/

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
   for.
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
   analysis.
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
bugs there.

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.

Have fun,
Eric
-- 
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 mailing list