Dr. Raven Kane

Faculty of Science, Thompson Rivers University


CodeShovel: Recovering method histories

Developers often want to understand how their methods evolved when examining past code changes, but this is not supported by existing tooling. In a couple of seconds CodeShovel can recover the history of a method. Additionally, CodeShovel provides some context for the change: Was a paramater modified? Was the body changed? Was the file renamed or moved to a different directory? This context can make it easy to quickly find the key changes a developer might be looking for. Through an empirical study of both industrial and open source code, CodeShovel was able to correctly find 97% of all method changes. The tool can be downloaded and installed in less than 5 minutes and a public web service is available for testing. While CodeShovel was originally written for Java, new language support is also possible (e.g., TypeScript, JavaScript, Ruby, Python).

Details: [ICSE 2021][Source Code & Tools][Live Web Service].

CodeShovel: Recovering method histories

Developers often want to understand how their methods evolved when examining past code changes, but this is not supported by existing tooling. In a couple of seconds CodeShovel can recover the history of a method. Additionally, CodeShovel provides some context for the change: Was a paramater modified? Was the body changed? Was the file renamed or moved to a different directory? This context can make it easy to quickly find the key changes a developer might be looking for. Through an empirical study of both industrial and open source code, CodeShovel was able to correctly find 97% of all method changes. The tool can be downloaded and installed in less than 5 minutes and a public web service is available for testing. While CodeShovel was originally written for Java, new language support is also possible (e.g., TypeScript, JavaScript, Ruby, Python).

Details: [ICSE 2021][Source Code & Tools][Live Web Service].

CodeShovel: Recovering method histories

Developers often want to understand how their methods evolved when examining past code changes, but this is not supported by existing tooling. In a couple of seconds CodeShovel can recover the history of a method. Additionally, CodeShovel provides some context for the change: Was a paramater modified? Was the body changed? Was the file renamed or moved to a different directory? This context can make it easy to quickly find the key changes a developer might be looking for. Through an empirical study of both industrial and open source code, CodeShovel was able to correctly find 97% of all method changes. The tool can be downloaded and installed in less than 5 minutes and a public web service is available for testing. While CodeShovel was originally written for Java, new language support is also possible (e.g., TypeScript, JavaScript, Ruby, Python).

Details: [ICSE 2021][Source Code & Tools][Live Web Service].