# SootUp
**Repository Path**: secbugs/SootUp
## Basic Information
- **Project Name**: SootUp
- **Description**: No description available
- **Primary Language**: Java
- **License**: LGPL-2.1
- **Default Branch**: develop
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-02-25
- **Last Updated**: 2024-02-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# SootUp library  [](https://codecov.io/gh/soot-oss/SootUp) [](https://javadoc.io/doc/org.soot-oss/sootup.core)
This is the home of the **SootUp** project.
A complete overhaul of the good, old static analysis framework [Soot](https://github.com/soot-oss/soot).
## What is SootUp
- Transforms JVM bytecode (and other inputs!) to the intermediate representation Jimple.
- Provides ClassHierarchy generation
- CallGraph generation with different algorithms/precisions
- Inter-procedural Data-flow Analysis with the IDE/IFDS framework enabled by [Heros](https://github.com/Sable/heros)
- Applies simple transformations on retrieving a methods Body (see `BodyInterceptor`)
- Provides parsing and serialization of the Jimple IR.
## Getting started
[Documentation](https://soot-oss.github.io/SootUp/) and usage examples are available on Github pages.
Check the [Javadocs](https://soot-oss.github.io/SootUp/apidocs).
Do you have questions? Feel free to start a [Discussion](https://github.com/soot-oss/SootUp/discussions).
## SootUp improvements
#### (compared to its predecessor [Soot](https://github.com/soot-oss/soot).)
- [x] New improved API (without Globals/Singletons)
- [x] Fully-Parallelizable Architecture
- [x] Enables lazy loading of classes (no interleaved loading of used/dependent classes anymore)
- [x] Fail early strategy - input validation while constructing/building objects
- [x] Up-to-Date (i.e. Java8!) Sourcecode Frontend (Beware: Cannot handle try-catch inputs, yet!)
- [x] Full Java 21 Support for Bytecode
- [x] Multiple Views (no single static Scene anymore)
- [x] Immutable Jimple IR Objects and Graphs
- [ ] Incremental Updates of Program Representation
## SootUp Roadmap
See our [Todo list](https://github.com/soot-oss/SootUp/wiki/TODOs).
## Feel free to improve Soot!
### Feedback and Feature Requests
For feedback and feature requests, best create appropriate [issues](../../issues).
### Collaboration
You want to collaborate? Please read our [coding guidelines and the contributors notice](../../wiki/contribution-to-SootUp).
## Supporters
The development of SootUp is financed by generous support from the German Research Foundation (DFG) and
the Heinz Nixdorf Institute (HNI).
[Become a sponsor!](https://github.com/sponsors/soot-oss)