GoogleCloudPlatform / config-validator
File Change Frequency

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

Overview
File Change Frequency Overall
  • There are 26 files with 4,035 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 1 file changed 51-100 times (219 lines of code)
    • 2 files changed 21-50 times (1,523 lines of code)
    • 13 files changed 6-20 times (1,665 lines of code)
    • 10 files changed 1-5 times (628 lines of code)
0% | 5% | 37% | 41% | 15%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 26 files with 4,035 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 3 files changed by 11-25 contributors (1,742 lines of code)
    • 8 files changed by 6-10 contributors (1,154 lines of code)
    • 12 files changed by 2-5 contributors (1,044 lines of code)
    • 3 files changed by 1 contributor (95 lines of code)
0% | 43% | 28% | 25% | 2%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
go, yaml, md, rego, txt, mod, gitignore, proto, json
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
go0% | 5% | 39% | 39% | 15%
proto0% | 0% | 0% | 100% | 0%
yaml0% | 0% | 0% | 58% | 41%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
pkg0% | 6% | 42% | 36% | 15%
cmd0% | 0% | 0% | 100% | 0%
api0% | 0% | 0% | 100% | 0%
build0% | 0% | 0% | 58% | 41%
internal0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 0%
Most Frequently Changed Files (Top 27)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
validator.go
in pkg/gcv
219 13 2019-04-03 2023-08-16 51 13 ttt@google.com andrewpeabody@google.com
config.go
in pkg/gcv/configs
443 17 2019-04-03 2023-08-14 47 13 ttt@google.com andrewpeabody@google.com
validator.pb.go
in pkg/api/validator
1080 101 2019-04-02 2023-08-16 23 12 morgante.pell@morgante.net andrewpeabody@google.com
gcptarget.go
in pkg/gcptarget
299 11 2019-09-27 2023-08-16 18 9 briankennedy@google.com andrewpeabody@google.com
asset.go
in pkg/asset
157 7 2019-09-26 2023-08-24 15 7 briankennedy@google.com andrewpeabody@google.com
main.go
in cmd/server
71 6 2019-10-04 2021-08-26 13 6 briankennedy@google.com stephenrlewis@google.com
proto
114 - 2019-06-25 2023-03-23 12 7 morgantep@google.com 98514022+jashan-g@users.nor...
result.go
in pkg/gcv
247 8 2020-02-11 2023-08-14 11 6 briankennedy@google.com andrewpeabody@google.com
lint.go
in cmd/policy-tool/lint
37 2 2020-01-09 2021-08-26 10 5 briankennedy@google.com stephenrlewis@google.com
policy-tool.go
in cmd/policy-tool
45 2 2019-07-30 2022-06-07 9 4 briankennedy@google.com stephenrlewis@google.com
file.go
in pkg/gcv/configs
147 7 2019-12-30 2023-08-10 9 4 kdevensen@google.com andrewpeabody@google.com
targettest.go
in pkg/targettesting
221 7 2022-02-17 2023-06-01 9 4 scottsuarez@google.com andrewpeabody@google.com
build-cloudbuild.yaml
in build/cloudbuild
24 - 2019-08-05 2021-08-26 7 6 kdevensen@google.com stephenrlewis@google.com
debug.go
in cmd/policy-tool/debug
67 2 2020-03-25 2023-08-10 7 6 btkennedy@gmail.com andrewpeabody@google.com
config.go
in pkg/gcv/oldconfigs
175 8 2020-01-08 2023-08-14 7 6 briankennedy@google.com andrewpeabody@google.com
multierror.go
in pkg/multierror
61 6 2019-10-04 2020-04-10 6 3 briankennedy@google.com btkennedy@gmail.com
test-cloudbuild.yaml
in build/cloudbuild
17 - 2019-07-30 2019-08-26 5 3 briankennedy@google.com briankennedy@google.com
tftarget.go
in pkg/tftarget
141 10 2022-02-17 2022-12-08 5 4 scottsuarez@google.com 110084536+chethangowda89@us...
openapischema.go
in pkg/gcv/configs
78 1 2020-03-25 2020-04-10 4 2 btkennedy@gmail.com briankennedy@google.com
templateschema.go
in pkg/gcv/configs
142 1 2020-03-25 2020-04-10 4 2 btkennedy@gmail.com briankennedy@google.com
proto_util.go
in pkg/asset
30 2 2019-09-26 2023-08-14 3 3 briankennedy@google.com andrewpeabody@google.com
fuzz.go
in internal/fuzz
38 2 2021-10-28 2023-08-14 3 2 martinpetkov@users.noreply.... andrewpeabody@google.com
87 5 2020-02-11 2021-08-26 3 3 briankennedy@google.com stephenrlewis@google.com
insight.go
in pkg/gcv
17 - 2020-02-11 2020-03-14 2 1 briankennedy@google.com briankennedy@google.com
matcher.go
in pkg/gcptarget
39 1 2022-12-02 2022-12-02 1 1 10179943+iyabchen@users.nor... 10179943+iyabchen@users.nor...
matcher.go
in pkg/tftarget
39 1 2022-12-02 2022-12-02 1 1 10179943+iyabchen@users.nor... 10179943+iyabchen@users.nor...
main.go
in root
3 1
Files With Most Contributors (Top 27)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
validator.go
in pkg/gcv
219 13 2019-04-03 2023-08-16 51 13 ttt@google.com andrewpeabody@google.com
config.go
in pkg/gcv/configs
443 17 2019-04-03 2023-08-14 47 13 ttt@google.com andrewpeabody@google.com
validator.pb.go
in pkg/api/validator
1080 101 2019-04-02 2023-08-16 23 12 morgante.pell@morgante.net andrewpeabody@google.com
gcptarget.go
in pkg/gcptarget
299 11 2019-09-27 2023-08-16 18 9 briankennedy@google.com andrewpeabody@google.com
asset.go
in pkg/asset
157 7 2019-09-26 2023-08-24 15 7 briankennedy@google.com andrewpeabody@google.com
proto
114 - 2019-06-25 2023-03-23 12 7 morgantep@google.com 98514022+jashan-g@users.nor...
main.go
in cmd/server
71 6 2019-10-04 2021-08-26 13 6 briankennedy@google.com stephenrlewis@google.com
result.go
in pkg/gcv
247 8 2020-02-11 2023-08-14 11 6 briankennedy@google.com andrewpeabody@google.com
config.go
in pkg/gcv/oldconfigs
175 8 2020-01-08 2023-08-14 7 6 briankennedy@google.com andrewpeabody@google.com
build-cloudbuild.yaml
in build/cloudbuild
24 - 2019-08-05 2021-08-26 7 6 kdevensen@google.com stephenrlewis@google.com
debug.go
in cmd/policy-tool/debug
67 2 2020-03-25 2023-08-10 7 6 btkennedy@gmail.com andrewpeabody@google.com
lint.go
in cmd/policy-tool/lint
37 2 2020-01-09 2021-08-26 10 5 briankennedy@google.com stephenrlewis@google.com
file.go
in pkg/gcv/configs
147 7 2019-12-30 2023-08-10 9 4 kdevensen@google.com andrewpeabody@google.com
targettest.go
in pkg/targettesting
221 7 2022-02-17 2023-06-01 9 4 scottsuarez@google.com andrewpeabody@google.com
policy-tool.go
in cmd/policy-tool
45 2 2019-07-30 2022-06-07 9 4 briankennedy@google.com stephenrlewis@google.com
tftarget.go
in pkg/tftarget
141 10 2022-02-17 2022-12-08 5 4 scottsuarez@google.com 110084536+chethangowda89@us...
multierror.go
in pkg/multierror
61 6 2019-10-04 2020-04-10 6 3 briankennedy@google.com btkennedy@gmail.com
test-cloudbuild.yaml
in build/cloudbuild
17 - 2019-07-30 2019-08-26 5 3 briankennedy@google.com briankennedy@google.com
87 5 2020-02-11 2021-08-26 3 3 briankennedy@google.com stephenrlewis@google.com
proto_util.go
in pkg/asset
30 2 2019-09-26 2023-08-14 3 3 briankennedy@google.com andrewpeabody@google.com
openapischema.go
in pkg/gcv/configs
78 1 2020-03-25 2020-04-10 4 2 btkennedy@gmail.com briankennedy@google.com
templateschema.go
in pkg/gcv/configs
142 1 2020-03-25 2020-04-10 4 2 btkennedy@gmail.com briankennedy@google.com
fuzz.go
in internal/fuzz
38 2 2021-10-28 2023-08-14 3 2 martinpetkov@users.noreply.... andrewpeabody@google.com
insight.go
in pkg/gcv
17 - 2020-02-11 2020-03-14 2 1 briankennedy@google.com briankennedy@google.com
matcher.go
in pkg/tftarget
39 1 2022-12-02 2022-12-02 1 1 10179943+iyabchen@users.nor... 10179943+iyabchen@users.nor...
matcher.go
in pkg/gcptarget
39 1 2022-12-02 2022-12-02 1 1 10179943+iyabchen@users.nor... 10179943+iyabchen@users.nor...
main.go
in root
3 1
Files With Least Contributors (Top 27)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
main.go
in root
3 1
matcher.go
in pkg/tftarget
39 1 2022-12-02 2022-12-02 1 1 10179943+iyabchen@users.nor... 10179943+iyabchen@users.nor...
matcher.go
in pkg/gcptarget
39 1 2022-12-02 2022-12-02 1 1 10179943+iyabchen@users.nor... 10179943+iyabchen@users.nor...
insight.go
in pkg/gcv
17 - 2020-02-11 2020-03-14 2 1 briankennedy@google.com briankennedy@google.com
templateschema.go
in pkg/gcv/configs
142 1 2020-03-25 2020-04-10 4 2 btkennedy@gmail.com briankennedy@google.com
openapischema.go
in pkg/gcv/configs
78 1 2020-03-25 2020-04-10 4 2 btkennedy@gmail.com briankennedy@google.com
fuzz.go
in internal/fuzz
38 2 2021-10-28 2023-08-14 3 2 martinpetkov@users.noreply.... andrewpeabody@google.com
87 5 2020-02-11 2021-08-26 3 3 briankennedy@google.com stephenrlewis@google.com
multierror.go
in pkg/multierror
61 6 2019-10-04 2020-04-10 6 3 briankennedy@google.com btkennedy@gmail.com
proto_util.go
in pkg/asset
30 2 2019-09-26 2023-08-14 3 3 briankennedy@google.com andrewpeabody@google.com
test-cloudbuild.yaml
in build/cloudbuild
17 - 2019-07-30 2019-08-26 5 3 briankennedy@google.com briankennedy@google.com
targettest.go
in pkg/targettesting
221 7 2022-02-17 2023-06-01 9 4 scottsuarez@google.com andrewpeabody@google.com
file.go
in pkg/gcv/configs
147 7 2019-12-30 2023-08-10 9 4 kdevensen@google.com andrewpeabody@google.com
tftarget.go
in pkg/tftarget
141 10 2022-02-17 2022-12-08 5 4 scottsuarez@google.com 110084536+chethangowda89@us...
policy-tool.go
in cmd/policy-tool
45 2 2019-07-30 2022-06-07 9 4 briankennedy@google.com stephenrlewis@google.com
lint.go
in cmd/policy-tool/lint
37 2 2020-01-09 2021-08-26 10 5 briankennedy@google.com stephenrlewis@google.com
result.go
in pkg/gcv
247 8 2020-02-11 2023-08-14 11 6 briankennedy@google.com andrewpeabody@google.com
config.go
in pkg/gcv/oldconfigs
175 8 2020-01-08 2023-08-14 7 6 briankennedy@google.com andrewpeabody@google.com
main.go
in cmd/server
71 6 2019-10-04 2021-08-26 13 6 briankennedy@google.com stephenrlewis@google.com
debug.go
in cmd/policy-tool/debug
67 2 2020-03-25 2023-08-10 7 6 btkennedy@gmail.com andrewpeabody@google.com
build-cloudbuild.yaml
in build/cloudbuild
24 - 2019-08-05 2021-08-26 7 6 kdevensen@google.com stephenrlewis@google.com
asset.go
in pkg/asset
157 7 2019-09-26 2023-08-24 15 7 briankennedy@google.com andrewpeabody@google.com
proto
114 - 2019-06-25 2023-03-23 12 7 morgantep@google.com 98514022+jashan-g@users.nor...
gcptarget.go
in pkg/gcptarget
299 11 2019-09-27 2023-08-16 18 9 briankennedy@google.com andrewpeabody@google.com
validator.pb.go
in pkg/api/validator
1080 101 2019-04-02 2023-08-16 23 12 morgante.pell@morgante.net andrewpeabody@google.com
config.go
in pkg/gcv/configs
443 17 2019-04-03 2023-08-14 47 13 ttt@google.com andrewpeabody@google.com
validator.go
in pkg/gcv
219 13 2019-04-03 2023-08-16 51 13 ttt@google.com andrewpeabody@google.com
Correlations

File Size vs. Number of Changes: 26 points

pkg/asset/asset.go x: 157 lines of code y: 15 # changes pkg/api/validator/validator.pb.go x: 1080 lines of code y: 23 # changes pkg/gcptarget/gcptarget.go x: 299 lines of code y: 18 # changes pkg/gcv/validator.go x: 219 lines of code y: 51 # changes internal/fuzz/fuzz.go x: 38 lines of code y: 3 # changes pkg/asset/proto_util.go x: 30 lines of code y: 3 # changes pkg/gcv/configs/config.go x: 443 lines of code y: 47 # changes pkg/gcv/oldconfigs/config.go x: 175 lines of code y: 7 # changes pkg/gcv/result.go x: 247 lines of code y: 11 # changes cmd/policy-tool/debug/debug.go x: 67 lines of code y: 7 # changes pkg/gcv/configs/file.go x: 147 lines of code y: 9 # changes pkg/targettesting/targettest.go x: 221 lines of code y: 9 # changes api/validator.proto x: 114 lines of code y: 12 # changes pkg/tftarget/tftarget.go x: 141 lines of code y: 5 # changes pkg/gcptarget/matcher.go x: 39 lines of code y: 1 # changes cmd/policy-tool/policy-tool.go x: 45 lines of code y: 9 # changes build/cloudbuild/build-cloudbuild.yaml x: 24 lines of code y: 7 # changes cmd/policy-tool/lint/lint.go x: 37 lines of code y: 10 # changes cmd/server/main.go x: 71 lines of code y: 13 # changes pkg/gcv/parallelvalidator.go x: 87 lines of code y: 3 # changes pkg/multierror/multierror.go x: 61 lines of code y: 6 # changes pkg/gcv/configs/openapischema.go x: 78 lines of code y: 4 # changes pkg/gcv/configs/templateschema.go x: 142 lines of code y: 4 # changes pkg/gcv/insight.go x: 17 lines of code y: 2 # changes build/cloudbuild/test-cloudbuild.yaml x: 17 lines of code y: 5 # changes
51.0
# changes
  min: 1.0
  average: 10.96
  25th percentile: 3.75
  median: 7.0
  75th percentile: 12.25
  max: 51.0
0 1080.0
lines of code
min: 17.0 | average: 155.19 | 25th percentile: 38.75 | median: 82.5 | 75th percentile: 186.0 | max: 1080.0

Number of Contributors vs. Number of Changes: 26 points

pkg/asset/asset.go x: 7 # contributors y: 15 # changes pkg/api/validator/validator.pb.go x: 12 # contributors y: 23 # changes pkg/gcptarget/gcptarget.go x: 9 # contributors y: 18 # changes pkg/gcv/validator.go x: 13 # contributors y: 51 # changes internal/fuzz/fuzz.go x: 2 # contributors y: 3 # changes pkg/asset/proto_util.go x: 3 # contributors y: 3 # changes pkg/gcv/configs/config.go x: 13 # contributors y: 47 # changes pkg/gcv/oldconfigs/config.go x: 6 # contributors y: 7 # changes pkg/gcv/result.go x: 6 # contributors y: 11 # changes pkg/gcv/configs/file.go x: 4 # contributors y: 9 # changes api/validator.proto x: 7 # contributors y: 12 # changes pkg/tftarget/tftarget.go x: 4 # contributors y: 5 # changes pkg/gcptarget/matcher.go x: 1 # contributors y: 1 # changes cmd/policy-tool/lint/lint.go x: 5 # contributors y: 10 # changes cmd/server/main.go x: 6 # contributors y: 13 # changes pkg/multierror/multierror.go x: 3 # contributors y: 6 # changes pkg/gcv/configs/openapischema.go x: 2 # contributors y: 4 # changes pkg/gcv/insight.go x: 1 # contributors y: 2 # changes build/cloudbuild/test-cloudbuild.yaml x: 3 # contributors y: 5 # changes
51.0
# changes
  min: 1.0
  average: 10.96
  25th percentile: 3.75
  median: 7.0
  75th percentile: 12.25
  max: 51.0
0 13.0
# contributors
min: 1.0 | average: 5.12 | 25th percentile: 2.75 | median: 4.0 | 75th percentile: 6.25 | max: 13.0

Number of Contributors vs. File Size: 26 points

pkg/asset/asset.go x: 7 # contributors y: 157 lines of code pkg/api/validator/validator.pb.go x: 12 # contributors y: 1080 lines of code pkg/gcptarget/gcptarget.go x: 9 # contributors y: 299 lines of code pkg/gcv/validator.go x: 13 # contributors y: 219 lines of code internal/fuzz/fuzz.go x: 2 # contributors y: 38 lines of code pkg/asset/proto_util.go x: 3 # contributors y: 30 lines of code pkg/gcv/configs/config.go x: 13 # contributors y: 443 lines of code pkg/gcv/oldconfigs/config.go x: 6 # contributors y: 175 lines of code pkg/gcv/result.go x: 6 # contributors y: 247 lines of code cmd/policy-tool/debug/debug.go x: 6 # contributors y: 67 lines of code pkg/gcv/configs/file.go x: 4 # contributors y: 147 lines of code pkg/targettesting/targettest.go x: 4 # contributors y: 221 lines of code api/validator.proto x: 7 # contributors y: 114 lines of code pkg/tftarget/tftarget.go x: 4 # contributors y: 141 lines of code pkg/gcptarget/matcher.go x: 1 # contributors y: 39 lines of code cmd/policy-tool/policy-tool.go x: 4 # contributors y: 45 lines of code build/cloudbuild/build-cloudbuild.yaml x: 6 # contributors y: 24 lines of code cmd/policy-tool/lint/lint.go x: 5 # contributors y: 37 lines of code cmd/server/main.go x: 6 # contributors y: 71 lines of code pkg/gcv/parallelvalidator.go x: 3 # contributors y: 87 lines of code pkg/multierror/multierror.go x: 3 # contributors y: 61 lines of code pkg/gcv/configs/openapischema.go x: 2 # contributors y: 78 lines of code pkg/gcv/configs/templateschema.go x: 2 # contributors y: 142 lines of code pkg/gcv/insight.go x: 1 # contributors y: 17 lines of code build/cloudbuild/test-cloudbuild.yaml x: 3 # contributors y: 17 lines of code
1080.0
lines of code
  min: 17.0
  average: 155.19
  25th percentile: 38.75
  median: 82.5
  75th percentile: 186.0
  max: 1080.0
0 13.0
# contributors
min: 1.0 | average: 5.12 | 25th percentile: 2.75 | median: 4.0 | 75th percentile: 6.25 | max: 13.0