|
1 | | - |
2 | 1 |  |
3 | 2 | [][documentation] |
4 | 3 | [][website] |
5 | 4 | [](LICENSE.LGPL3) |
| 5 | +[][demo] |
6 | 6 |
|
7 | 7 | # DiffDetective - Variability-Aware Source Code Differencing |
8 | 8 |
|
9 | | - |
10 | | -<img padding="30" align="right" src="docs/logo.png" alt="ACM Artifacts Evaluated Reusable" width="350"/> |
| 9 | +<img padding="30" align="right" src="docs/logo.png" alt="DiffDetective Logo" width="350"/> |
11 | 10 |
|
12 | 11 | DiffDetective is an open-source Java library for variability-aware source code differencing and the **analysis of version histories of software product lines**. This means that DiffDetective can **turn a generic differencer into a variability-aware differencer** by means of a pre- or post-processing. DiffDetective is centered around **formally verified** data structures for variability (variation trees) and variability-aware diffs (variation diffs). These data structures are **generic**, and DiffDetective currently implements **C preprocessor support** to parse respective annotations when used to implement variability. The picture below depicts the process of variability-aware differencing. |
13 | 12 |
|
@@ -85,13 +84,15 @@ Additionally, there is a screencast available on YouTube, guiding you through th |
85 | 84 |
|
86 | 85 | ### Variability-Aware Differencing with DiffDetective (FSE 2024) |
87 | 86 |
|
88 | | -[](https://github.com/VariantSync/DiffDetective-Demo/blob/raw/Variability-Aware%20Differencing%20with%20DiffDetective.pdf) |
| 87 | +[](https://github.com/SoftVarE-Group/Papers/raw/main/2024/2024-FSE-Bittner.pdf) |
89 | 88 | [][screencast] |
90 | 89 | [][demo] |
91 | 90 |
|
92 | 91 | > P. M. Bittner, A. Schultheiß, B. Moosherr, T. Kehrer, T. Thüm. _Variability-Aware Differencing with DiffDetective_. Demonstrations at International Conference on the Foundations of Software Engineering 2024, ACM, New York, NY, July 2024 |
93 | 92 |
|
94 | | -This paper gives an overview of DiffDetective, its design, features, use-cases, and past case studies. We recommend reading this paper if you are interested in the design of DiffDetective or if you consider using it for your own projects or research. The paper is accompanied by a [demo project][demo] as well as a [screencast][screencast] (see `How to Get Started` above). |
| 93 | +<img padding="10" align="right" src="https://www.acm.org/binaries/content/gallery/acm/publications/artifact-review-v1_1-badges/artifacts_evaluated_reusable_v1_1.png" alt="ACM Artifacts Evaluated Reusable" width="114" height="113"/> |
| 94 | + |
| 95 | +This paper gives an overview of DiffDetective, its design, features, use-cases, and past case studies. We recommend reading this paper if you are interested in the design of DiffDetective or if you consider using it for your own projects or research. The paper is accompanied by a [demo project][demo] as well as a [screencast][screencast] (also see `How to Get Started` above). |
95 | 96 |
|
96 | 97 | ### Classifying Edits to Variability in Source Code (ESEC/FSE 2022) |
97 | 98 |
|
|
0 commit comments