Inspect4py: A Knowledge Extraction Framework for Python Code Repositories

This work presents inspect4py, a static code analysis framework designed to automatically extract the main features, metadata and documentation of Python code repositories. Given an input folder with code, inspect4py uses abstract syntax trees and state of the art tools to find all functions, classe...

Full description

Saved in:
Bibliographic Details
Published in:2022 IEEE/ACM 19th International Conference on Mining Software Repositories (MSR) pp. 232 - 236
Main Authors: Filgueira, Rosa, Garijo, Daniel
Format: Conference Proceeding
Language:English
Published: ACM 01.05.2022
Subjects:
ISSN:2574-3864
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:This work presents inspect4py, a static code analysis framework designed to automatically extract the main features, metadata and documentation of Python code repositories. Given an input folder with code, inspect4py uses abstract syntax trees and state of the art tools to find all functions, classes, tests, documentation, call graphs, module dependencies and control flows within all code files in that repository. Using these findings, inspect4py infers different ways of invoking a software component. We have evaluated our framework on 95 annotated repositories, obtaining promising results for software type classification (over 95% F1-score). With inspect4py, we aim to ease the understandability and adoption of software repositories by other researchers and developers. Code: https://github.com/SoftwareUnderstanding/inspect4py DOI:https://doi.org/10.5281/zenodo.5907936 License: Open (BSD3-Clause)
ISSN:2574-3864
DOI:10.1145/3524842.3528497