-
Notifications
You must be signed in to change notification settings - Fork 7
Home
PCART Bot edited this page Apr 13, 2026
·
2 revisions
Welcome to the PCART documentation!
PCART is an automated tool designed to detect and repair Python API parameter compatibility issues across library version upgrades.
- Fully Automated: End-to-end automation from API extraction to repair validation
- Comprehensive Detection: Detects 5 types of API compatibility issues
- Multi-Platform: Supports Linux and Windows
- Multi-Library: Works with PyTorch, NumPy, SciPy, Pillow, scikit-learn, and more
| Type | Description |
|---|---|
| Parameter Addition | A new required parameter is added in the target version |
| Parameter Removal | A parameter used in the current version is removed in the target version |
| Parameter Renaming | A parameter is renamed between versions |
| Parameter Reordering | Parameters are reordered in the function signature |
| Positional to Keyword Conversion | A parameter that was positional-only becomes keyword-only |
- Quick-Start: Get started with PCART in 5 minutes
- Configuration-Guide: Complete configuration file reference
- Troubleshooting: Common issues and solutions
- Examples: Real-world usage examples
PCART uses a three-environment architecture:
| Environment | Purpose | Requirements |
|---|---|---|
| PCART | Runs the PCART tool itself | Python 3.9 + dill |
| currentEnv | Runs the target project (current library version) | Python 3.x + library (current version) + dill |
| targetEnv | Runs the target project (target library version) | Python 3.x + library (target version) + dill |
If you use PCART in your research, please cite:
@article{PCART_TSE2025,
author={Zhang, Shuai and Xiao, Guanping and Wang, Jun and Lei, Huashan and He, Gangqiang and Liu, Yepang and Zheng, Zheng},
journal={IEEE Transactions on Software Engineering},
title={PCART: Automated Repair of Python API Parameter Compatibility Issues},
year={2026},
volume={52},
number={3},
pages={723-753},
doi={10.1109/TSE.2025.3646150}
}