1
1
# diffctx = diff context
2
2
3
- A GitHub action for automatically evaluating the function level impacts of Pull Requests.
3
+ A GitHub action for automatically evaluating the logic level impacts of Pull Requests.
4
4
5
5
## Showcase
6
6
@@ -20,7 +20,7 @@ comments for indicating which part you should care most:
20
20
21
21
And leave a comment for helping evaluations.
22
22
23
- <img width="697 " alt="image" src="https://user-images.githubusercontent. com/13421694/236666915-5d403e4a-9cc1-4364-afbe-363cf82e5e49.png ">
23
+ <img width="952 " alt="image" src="https://github. com/williamfzc/diffctx/assets/ 13421694/63739d01-b7dc-4947-8e3d-2e6c5ed0530c ">
24
24
25
25
Based on [LSIF](https://microsoft.github.io/language-server-protocol/overviews/lsif/overview/), diffctx will not only
26
26
analyse the lines contained by the diff, but also the full scope of your repo, and understand it well.
@@ -47,40 +47,30 @@ jobs:
47
47
steps :
48
48
- uses : actions/checkout@v3
49
49
with :
50
+ # at least
50
51
fetch-depth : 2
51
52
52
53
# ...
53
54
54
55
- name : diffctx
55
- uses : williamfzc/diffctx@v0.2.3
56
+ uses : williamfzc/diffctx@v0.3.1
56
57
with :
57
- # currently we officially support: golang/python
58
+ # currently we officially support:
59
+ # - golang
60
+ # - python
61
+ # - java
62
+ # - kotlin
63
+ # - node
58
64
lang : " golang"
59
65
` ` `
60
66
61
67
### Done!
62
68
63
69
You can create a new PullRequest for test.
64
70
65
- ### What about other languages?
66
-
67
- Currently, diffctx can also support java/kotlin.
68
- But you have to generate LSIF file ([this link](https://github.com/williamfzc/diffctx/blob/main/index.py) might help) by
69
- yourself because of the complexity of the compilation process.
70
-
71
- ` ` ` yml
72
- - name : diffctx
73
- uses :
williamfzc/[email protected]
74
- with :
75
- lang : " java"
76
- lsif_file : " ./dump.lsif"
77
- ` ` `
78
-
79
- Help wanted :)
80
-
81
71
### Still have a problem?
82
72
83
- A real example can be found in: https://github.com/williamfzc/srctx/tree/test_diffctx
73
+ A real example can be found in: https://github.com/williamfzc/srctx/pull/49
84
74
85
75
## How it works
86
76
@@ -93,23 +83,18 @@ A real example can be found in: https://github.com/williamfzc/srctx/tree/test_di
93
83
94
84
Thanks to tree-sitter and LSIF, diffctx can support nearly all the popular languages.
95
85
96
- | Languages | Status |
97
- |-------------|---------|
98
- | Golang | Done |
99
- | Python | Done |
100
- | Java/Kotlin | Working |
101
- | JavaScript | Working |
86
+ https://lsif.dev/
102
87
103
88
## Contribution
104
89
105
- Issues, PRs and suggestions are welcome.
90
+ Issues, PRs and suggestions are always welcome.
106
91
107
92
- [diffctx](https://github.com/williamfzc/diffctx): for the whole workflow
108
93
- [srctx](https://github.com/williamfzc/srctx): the core analyzer
109
94
110
95
## Roadmap
111
96
112
- - More languages
113
- - Better comment format
114
- - Extract more meaningful columns (like function definition) from code
115
- - Display graph in comment also
97
+ - [ ] More languages
98
+ - [ ] Better comment format
99
+ - [ ] Extract more meaningful columns (like function definition) from code
100
+ - [ ] Display graph in comment also
0 commit comments