Need to build language agnostic AST differ
- Dominant language
- Python
- Stars
- 4
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
given [remote url , dir , commit1/branch1 , commit2/branch2 ] as function input
- clone the repo
- use git command to get modified/added/deleted files between two commits/branches
- parse the files in first commit (load top level components)
- parse the files in second commit (load top level components)
- do a diff
- then generate a file `all_code_changes.json` with the following format , list of `DetailedChanges`
```haskell
data DetailedChanges = DetailedChanges {
moduleName :: String,
-- Functions
addedFunctions :: [(String, String)], -- (name, code)
modifiedFunctions :: [(String, String, String)], -- (name, old code, new code)
deletedFunctions :: [(String, String)], -- (name, code)
-- Types
addedTypes :: [(String, String)], -- (name, code)
modifiedTypes :: [(String, String, String)], -- (name, old code, new code)
deletedTypes :: [(String, String)], -- (name, code)
-- Instances
addedInstances :: [(String, String)], -- (name, code)
modifiedInstances :: [(String, String, String)], -- (name, old code, new code)
deletedInstances :: [(String, String)] -- (name, code)
} deriving (Show, Generic)
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.