phodal / coca

Coca is a toolbox which is design for legacy system refactoring and analysis, includes call graph, concept analysis, api tree, design patterns suggest. Coca 是一个用于系统重构、系统迁移和系统分析的工具箱。它可以分析代码中的测试坏味道、模块化分析、行数统计、分析调用与依赖、Git 分析以及自动化重构等。
https://coca.migration.ink/
Mozilla Public License 2.0
957 stars 110 forks source link

module change frequency #16

Closed phodal closed 3 years ago

phodal commented 3 years ago

Is your feature request related to a problem? Please describe.

对于单一代码库的系统而言,文件系统的组织方式(文件夹)可以视为一个通用的模块定义标准。一个系统可能在某一目录下包含相关的代码,如底级目录,还存在二级目录:

如:https://hg.mozilla.org/mozilla-central/file

drwxr-xr-x |   |   | .cargo | files
-- | -- | -- | -- | --
drwxr-xr-x |   |   | .vscode | files
drwxr-xr-x |   |   | accessible | files
drwxr-xr-x |   |   | browser | files
drwxr-xr-x |   |   | build | files
drwxr-xr-x |   |   | caps | files
drwxr-xr-x |   |   | chrome | files
drwxr-xr-x |   |   | config | files
drwxr-xr-x |   |   | devtools | files
drwxr-xr-x |   |   | docs | files
drwxr-xr-x |   |   | docshell | files
drwxr-xr-x |   |   | dom | files
drwxr-xr-x |   |   | editor | files
drwxr-xr-x |   |   | extensions | files
drwxr-xr-x |   |   | gfx | files
drwxr-xr-x |   |   | gradle wrapper | files
drwxr-xr-x |   |   | hal | files
drwxr-xr-x |   |   | image | files
drwxr-xr-x |   |   | intl | files
drwxr-xr-x |   |   | ipc | files
drwxr-xr-x |   |   | js | files
drwxr-xr-x |   |   | layout | files
drwxr-xr-x |   |   | media | files
drwxr-xr-x |   |   | memory | files
drwxr-xr-x |   |   | mfbt | files
drwxr-xr-x |   |   | mobile | files
drwxr-xr-x |   |   | modules | files
drwxr-xr-x |   |   | mozglue | files
drwxr-xr-x |   |   | netwerk | files
drwxr-xr-x |   |   | nsprpub | files
drwxr-xr-x |   |   | other-licenses | files
drwxr-xr-x |   |   | parser | files
drwxr-xr-x |   |   | python | files
drwxr-xr-x |   |   | remote | files
drwxr-xr-x |   |   | security | files
drwxr-xr-x |   |   | services | files
drwxr-xr-x |   |   | servo | files
drwxr-xr-x |   |   | startupcache | files
drwxr-xr-x |   |   | storage | files
drwxr-xr-x |   |   | taskcluster | files
drwxr-xr-x |   |   | testing | files
drwxr-xr-x |   |   | third_party | files
drwxr-xr-x |   |   | toolkit | files
drwxr-xr-x |   |   | tools | files
drwxr-xr-x |   |   | uriloader | files
drwxr-xr-x |   |   | view | files
drwxr-xr-x |   |   | widget | files
drwxr-xr-x |   |   | xpcom | files

通过识别不同模块下的代码修改频次,我们可以定义出经常出现问题的模块。

Describe the solution you'd like

提供一个接口查找和分析不同模块/目录下的修改频率

Describe alternatives you've considered

Additional context

phodal commented 3 years ago

move to https://github.com/inherd/coco