org.soot-oss
A new version of Soot with a completely overhauled architecture
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
○Academic publication links
-
✓Committers with academic emails
6 of 42 committers (14.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.0%) to scientific vocabulary
Keywords
Repository
A new version of Soot with a completely overhauled architecture
Basic Info
- Host: GitHub
- Owner: soot-oss
- License: lgpl-2.1
- Language: Java
- Default Branch: develop
- Homepage: https://soot-oss.github.io/SootUp/
- Size: 319 MB
Statistics
- Stars: 724
- Watchers: 14
- Forks: 96
- Open Issues: 128
- Releases: 6
Topics
Metadata Files
README.md
SootUp library

This is the home of the SootUp project. A complete overhaul of the good, old static analysis framework 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
- Applies simple transformations on retrieving a methods Body (see
BodyInterceptor) - Provides parsing and serialization of the Jimple IR.
Getting started
Documentation and usage examples are available on Examples. Check the Javadocs. Do you have questions? Feel free to start a Discussion.
SootUp improvements
(compared to its predecessor Soot.)
- New improved API (without Globals/Singletons)
- Fully-Parallelizable Architecture
- Enables lazy loading of classes (no interleaved loading of used/dependent classes anymore)
- Fail early strategy - input validation while constructing/building objects
- Full Java 21 Support for Bytecode
- Multiple Views (no single static Scene anymore)
- Immutable Jimple IR Objects and Graphs
Feel free to improve SootUp!
Contributing
For feedback and feature requests, best create appropriate issues.
For questions and clarification, please use the discussions.
Publications
The SootUp paper explains further details and the design decision behind SootUp.
Preprint is also available.
If you use SootUp in your research work, feel free to cite it as follows:
@InProceedings{10.1007/978-3-031-57246-3_13,
author="Karakaya, Kadiray
and Schott, Stefan
and Klauke, Jonas
and Bodden, Eric
and Schmidt, Markus
and Luo, Linghui
and He, Dongjie",
editor="Finkbeiner, Bernd
and Kov{\'a}cs, Laura",
title="SootUp: A Redesign of the Soot Static Analysis Framework",
booktitle="Tools and Algorithms for the Construction and Analysis of Systems",
year="2024",
publisher="Springer Nature Switzerland",
address="Cham",
pages="229--247",
isbn="978-3-031-57246-3"
}
Supporters
The development of SootUp is financed by generous support from the German Research Foundation (DFG) and the Heinz Nixdorf Institute (HNI).
|
![]() |
Owner
- Name: Soot Program Analysis Framework
- Login: soot-oss
- Kind: organization
- Email: soot-list@sable.mcgill.ca
- Repositories: 5
- Profile: https://github.com/soot-oss
This organization hosts open-source projects related to the Soot program analysis framework
Citation (CITATION.cff)
cff-version: 1.2.0
title: SootUp
message: 'If you use SootUp, please cite it as below.'
type: software
authors:
- given-names: Soot-oss
repository-code: 'https://github.com/soot-oss/SootUp'
version: 2.0.0
date-released: '2025-02-19'
preferred-citation:
type: conference-paper
authors:
- family-names: "Karakaya"
given-names: "Kadiray"
- family-names: "Schott"
given-names: "Stefan"
- family-names: "Klauke"
given-names: "Jonas"
- family-names: "Bodden"
given-names: "Eric"
- family-names: "Schmidt"
given-names: "Markus"
- family-names: "Luo"
given-names: "Linghui"
- family-names: "He"
given-names: "Dongjie"
doi: "110.1007/978-3-031-57246-3_13"
booktitle: "Tools and Algorithms for the Construction and Analysis of Systems"
start: 229 # First page number
end: 247 # Last page number
title: "SootUp: A Redesign of the Soot Static Analysis Framework"
year: 2024
Committers
Last synced: almost 3 years ago
All Time
- Total Commits: 4,174
- Total Committers: 42
- Avg Commits per committer: 99.381
- Development Distribution Score (DDS): 0.582
Top Committers
| Name | Commits | |
|---|---|---|
| Markus Schmidt | m****2@w****e | 1,745 |
| Christian Brüggemann | m****l@c****m | 398 |
| wangzun66 | w****6@g****m | 297 |
| hasitha | h****e@g****m | 262 |
| Linghui Luo | l****i@m****e | 218 |
| Kaustubh Kelkar | k****r@m****e | 191 |
| Andreas Dann | a****n@m****e | 182 |
| Kadiray Karakaya | k****k@h****m | 179 |
| Bastian Haverkamp | b****v@m****e | 134 |
| atulpundir88 | a****r@c****e | 95 |
| kaustubhkelkar | l****5@g****m | 93 |
| Jonas Klauke | J****e@u****e | 59 |
| marcusna | m****l@u****e | 55 |
| Linghui Luo | l****i@o****e | 52 |
| Manuel Benz | m****z@g****m | 44 |
| Linghui Luo | 1****o@u****m | 25 |
| Stefan Schott | s****5@g****m | 22 |
| Jan Martin Persch | j****h@h****e | 19 |
| Rajat Khanna | r****1@g****m | 16 |
| github-actions | 4****]@u****m | 12 |
| Ben Hermann | b****n@g****m | 12 |
| Hasitha Rajapakse | h****i@H****l | 7 |
| Manuel Benz | m****9@u****m | 7 |
| stschott | s****t@g****t | 7 |
| Julian Dolby | j****y@g****m | 6 |
| Linghui Luo | 1****6@u****m | 6 |
| Thomas Johannesmeyer | t****s@g****t | 6 |
| Andreas Dann | 2****n@u****m | 5 |
| Eric Bodden | e****n@u****e | 4 |
| Rajat Khanna | r****t@m****e | 2 |
| and 12 more... | ||
Committer Domains (Top 20 + Academic)
Packages
- Total packages: 8
- Total downloads: unknown
-
Total dependent packages: 16
(may contain duplicates) -
Total dependent repositories: 7
(may contain duplicates) - Total versions: 52
repo1.maven.org: org.soot-oss:sootup.core
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup.core/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 2.0.0
published 10 months ago
Rankings
repo1.maven.org: org.soot-oss:sootup.java.core
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup.java.core/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 2.0.0
published 10 months ago
Rankings
repo1.maven.org: org.soot-oss:sootup.java.sourcecode
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup.java.sourcecode/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 1.3.0
published over 1 year ago
Rankings
repo1.maven.org: org.soot-oss:sootup.java.bytecode
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup.java.bytecode/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 1.3.0
published over 1 year ago
Rankings
repo1.maven.org: org.soot-oss:sootup.jimple.parser
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup.jimple.parser/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 1.3.0
published over 1 year ago
Rankings
repo1.maven.org: org.soot-oss:sootup.callgraph
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup.callgraph/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 2.0.0
published 10 months ago
Rankings
repo1.maven.org: org.soot-oss:sootup.analysis
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup.analysis/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 1.3.0
published over 1 year ago
Rankings
repo1.maven.org: org.soot-oss:sootup
A new version of Soot with a completely overhauled architecture
- Homepage: https://soot-oss.github.io/SootUp
- Documentation: https://appdoc.app/artifact/org.soot-oss/sootup/
- License: GNU LESSER GENERAL PUBLIC LICENSE 2.1
-
Latest release: 2.0.0
published 10 months ago
