数据集概述
本数据集是论文《What do package dependencies tell us about semantic versioning?》的复现数据包,包含原始数据、处理后数据集、分析代码和结果生成文件。数据围绕包依赖约束与语义版本关系展开,支持论文结果的复现与相关研究扩展,需Python 3.5+环境运行。
文件详解
- 压缩包文件:secos-constraints.zip
- 文件格式:ZIP
- 内容结构:包含5个核心目录及文件
- data-raw文件夹:需手动补充Libraries.io的versions.csv和dependencies.csv,通过convert.py生成生态系统相关的压缩CSV文件
- data文件夹:提供分析所需的处理后数据集,可通过versions.py和dependencies.py脚本从原始数据生成
- notebooks文件夹:含Constraint differences.ipynb(约束示例)和Semver compliance.ipynb(主分析)两个Jupyter笔记本
- constraints文件夹:含parser.py(约束解析器)、versions.py(数据模型)、constraints.py(约束类型识别)、tool.py(工具原型)及3个单元测试文件
- requirements.txt:记录Python依赖包列表
数据来源
论文《What do package dependencies tell us about semantic versioning?》
适用场景
- 语义版本规范研究:分析包依赖约束与语义版本规则的匹配性及实际应用差异
- 依赖管理优化:探究依赖约束对软件版本兼容性的影响,支持依赖管理工具改进
- 学术研究复现:验证论文中关于包依赖与语义版本关系的核心结论
- 软件生态系统分析:基于多生态系统的依赖数据,研究开源软件包的版本演化规律