Skip to content

Commit a6bc6ed

Browse files
authored
Add Deptrac (open-telemetry#67)
1 parent 0dfb811 commit a6bc6ed

File tree

4 files changed

+85
-0
lines changed

4 files changed

+85
-0
lines changed

.github/workflows/php.yml

+3
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@ jobs:
4949
- name: Check Style
5050
run: vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php -v --dry-run --stop-on-violation --using-cache=no -vvv
5151

52+
- name: Check Dependencies
53+
run: vendor/bin/deptrac --formatter=github-actions --report-uncovered
54+
5255
- name: Run Phan
5356
env:
5457
PHAN_DISABLE_XDEBUG_WARN: 1

Makefile

+2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ bash:
2828
$(DC_RUN_PHP) bash
2929
style:
3030
$(DC_RUN_PHP) env XDEBUG_MODE=off vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php --using-cache=no -vvv
31+
deptrac:
32+
$(DC_RUN_PHP) env XDEBUG_MODE=off vendor/bin/deptrac --formatter=table --report-uncovered --no-cache
3133
split:
3234
docker-compose -f docker/gitsplit/docker-compose.yaml --env-file ./.env up
3335
FORCE:

composer.json

+1
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
"symfony/polyfill-php80": "^1.16",
5656
"symfony/proxy-manager-bridge": "^4.4|^5.3|^6.0",
5757
"symfony/yaml": "^4.4|^5.3|^6.0",
58+
"qossmic/deptrac-shim": "^0.22.1",
5859
"vimeo/psalm": "^4.0"
5960
},
6061
"suggest": {

deptrac.yaml

+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
2+
imports:
3+
#- deptrac.baseline.yaml
4+
deptrac:
5+
analyser:
6+
types:
7+
- class
8+
- class_superglobal
9+
- use
10+
- file
11+
- function
12+
- function_superglobal
13+
paths:
14+
- ./src
15+
- ./tests
16+
exclude_files:
17+
- '#.*test.*#'
18+
layers:
19+
- name: API
20+
collectors:
21+
- type: className
22+
regex: ^OpenTelemetry\\API\\*
23+
- name: SDK
24+
collectors:
25+
- type: className
26+
regex: ^OpenTelemetry\\SDK\\*
27+
- name: Context
28+
collectors:
29+
- type: className
30+
regex: ^OpenTelemetry\\Context\\*
31+
- name: SemConv
32+
collectors:
33+
- type: className
34+
regex: ^OpenTelemetry\\SemConv\\*
35+
- name: Contrib
36+
collectors:
37+
- type: className
38+
regex: ^OpenTelemetry\\Contrib\\*
39+
- name: AwsContrib
40+
collectors:
41+
- type: className
42+
regex: ^OpenTelemetry\\Aws\\*
43+
- name: SymfonySdkBundleContrib
44+
collectors:
45+
- type: className
46+
regex: ^OpenTelemetry\\Symfony\\OtelSdkBundle\\*
47+
- name: PsrHttp
48+
collectors:
49+
- type: className
50+
regex: ^Psr\\Http\\*
51+
- name: PsrLog
52+
collectors:
53+
- type: className
54+
regex: ^Psr\\Log\\*
55+
- name: Symfony
56+
collectors:
57+
- type: className
58+
regex: ^Symfony\\*
59+
- name: HttpPlug
60+
collectors:
61+
- type: className
62+
regex: ^Http\\*
63+
64+
ruleset:
65+
API:
66+
- Context
67+
- SemConv
68+
SDK:
69+
- +API
70+
- PsrHttp
71+
- PsrLog
72+
- HttpPlug
73+
Contrib:
74+
- +SDK
75+
AwsContrib:
76+
- +SDK
77+
SymfonySdkBundleContrib:
78+
- +Contrib
79+
- Symfony

0 commit comments

Comments
 (0)