mapillary / mapillary_tools
File Change Frequency

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

File Change Frequency Overall
File Change Frequency Overall
The number of recorded file updates
  • There are 54 files with 6,116 lines of code.
    • 1 files changed more than 100 times (367 lines of code)
    • 3 files changed 51-100 times (659 lines of code)
    • 12 files changed 21-50 times (1,321 lines of code)
    • 15 files changed 6-20 times (1,694 lines of code)
    • 23 files changed 1-5 times (2,075 lines of code)
6% | 10% | 21% | 27% | 33%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
py, scad, md, txt, json, yml, in, ini, cfg, gitignore, dockerignore, spec, ps1
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
py7% | 14% | 28% | 36% | 12%
spec0% | 0% | 0% | 100% | 0%
scad0% | 0% | 0% | 0% | 100%
ps10% | 0% | 0% | 0% | 100%
cfg0% | 0% | 0% | 0% | 100%
in0% | 0% | 0% | 0% | 100%
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
mapillary_tools12% | 21% | 32% | 29% | 4%
ROOT0% | 37% | 0% | 55% | 6%
mapillary_tools/commands0% | 0% | 51% | 15% | 32%
mapillary_tools/geotag0% | 0% | 0% | 74% | 25%
mounts/gophone0% | 0% | 0% | 0% | 100%
mounts/modules0% | 0% | 0% | 0% | 100%
mounts/rigs0% | 0% | 0% | 0% | 100%
script0% | 0% | 0% | 0% | 100%
pyinstaller/hooks0% | 0% | 0% | 0% | 100%
pyinstaller/runtime-hooks0% | 0% | 0% | 0% | 100%
pyinstaller0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
uploader.py
in mapillary_tools
367 18 65 1433 136 13
upload.py
in mapillary_tools
539 24 61 1433 61 8
98 4 110 1433 60 11
setup.py
in root
22 1 105 1454 53 10
video_process.py
in mapillary_tools/commands
11 2 186 1426 50 5
__init__.py
in mapillary_tools/commands
7 - 192 1433 45 8
313 6 110 1433 45 6
video_process_and_upload.py
in mapillary_tools/commands
14 2 192 1426 43 5
195 13 110 1433 43 8
process.py
in mapillary_tools/commands
266 2 176 1426 40 5
__init__.py
in mapillary_tools
1 - 65 1454 37 7
process_and_upload.py
in mapillary_tools/commands
11 2 192 1426 37 5
exif_read.py
in mapillary_tools
233 16 110 1433 35 8
geo.py
in mapillary_tools
107 9 65 1433 30 6
upload.py
in mapillary_tools/commands
37 2 87 1433 22 5
exif_write.py
in mapillary_tools
126 10 111 1433 22 6
sample_video.py
in mapillary_tools/commands
72 2 183 1432 19 4
authenticate.py
in mapillary_tools/commands
35 2 110 1404 18 6
config.py
in mapillary_tools
53 4 119 1433 11 2
ffmpeg.py
in mapillary_tools
113 7 110 1433 11 2
upload_api_v4.py
in mapillary_tools
221 10 92 310 11 1
ipc.py
in mapillary_tools
25 2 178 1241 10 4
32 - 416 1321 10 5
utils.py
in mapillary_tools
68 9 87 1194 10 4
geotag_from_blackvue.py
in mapillary_tools/geotag
274 4 87 186 9 1
geotag_from_gopro.py
in mapillary_tools/geotag
135 4 110 186 8 1
types.py
in mapillary_tools
209 11 110 192 8 1
api_v4.py
in mapillary_tools
59 3 92 310 7 1
geotag_from_gpx_file.py
in mapillary_tools/geotag
100 4 110 186 7 1
geotag_from_gpx.py
in mapillary_tools/geotag
146 5 110 186 6 1
sample_video.py
in mapillary_tools
152 3 110 183 6 1
geotag_from_nmea_file.py
in mapillary_tools/geotag
43 2 114 186 4 1
scad
phone_holder.scad
in mounts/gophone
55 - 2026 2906 4 2
geotag_from_exif.py
in mapillary_tools/geotag
71 2 110 186 4 1
cfg
setup.cfg
in root
3 - 1418 1628 3 4
ssl.py
in pyinstaller/runtime-hooks
4 - 1307 1318 3 3
hook-urllib2.py
in pyinstaller/hooks
4 - 1307 1318 3 3
geotag_from_generic.py
in mapillary_tools/geotag
7 2 114 186 3 1
zip.py
in mapillary_tools/commands
31 2 87 192 3 1
main.py
in pyinstaller
3 - 110 416 2 1
scad
gopros.scad
in mounts/rigs
30 - 2183 2244 2 1
__main__.py
in mapillary_tools/commands
114 3 87 110 2 1
__init__.py
in mapillary_tools/geotag
1 - 186 186 1 1
in
1 - 192 192 1 1
utils.py
in mapillary_tools/geotag
17 2 114 114 1 1
build_win.ps1
in script
17 - 108 108 1 1
upload_blackvue.py
in mapillary_tools/commands
36 2 87 87 1 1
upload_zip.py
in mapillary_tools/commands
36 2 87 87 1 1
exceptions.py
in mapillary_tools
42 2 110 110 1 1
gpmf.py
in mapillary_tools/geotag
81 8 186 186 1 1
Files With Most Contributors (Top 50)
Files sorted by the number of unique email addresses found in commits.

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
uploader.py
in mapillary_tools
367 18 65 1433 136 13
upload.py
in mapillary_tools
539 24 61 1433 61 8
98 4 110 1433 60 11
setup.py
in root
22 1 105 1454 53 10
video_process.py
in mapillary_tools/commands
11 2 186 1426 50 5
313 6 110 1433 45 6
__init__.py
in mapillary_tools/commands
7 - 192 1433 45 8
video_process_and_upload.py
in mapillary_tools/commands
14 2 192 1426 43 5
195 13 110 1433 43 8
process.py
in mapillary_tools/commands
266 2 176 1426 40 5
process_and_upload.py
in mapillary_tools/commands
11 2 192 1426 37 5
__init__.py
in mapillary_tools
1 - 65 1454 37 7
exif_read.py
in mapillary_tools
233 16 110 1433 35 8
geo.py
in mapillary_tools
107 9 65 1433 30 6
upload.py
in mapillary_tools/commands
37 2 87 1433 22 5
exif_write.py
in mapillary_tools
126 10 111 1433 22 6
sample_video.py
in mapillary_tools/commands
72 2 183 1432 19 4
authenticate.py
in mapillary_tools/commands
35 2 110 1404 18 6
upload_api_v4.py
in mapillary_tools
221 10 92 310 11 1
ffmpeg.py
in mapillary_tools
113 7 110 1433 11 2
config.py
in mapillary_tools
53 4 119 1433 11 2
utils.py
in mapillary_tools
68 9 87 1194 10 4
ipc.py
in mapillary_tools
25 2 178 1241 10 4
32 - 416 1321 10 5
geotag_from_blackvue.py
in mapillary_tools/geotag
274 4 87 186 9 1
geotag_from_gopro.py
in mapillary_tools/geotag
135 4 110 186 8 1
types.py
in mapillary_tools
209 11 110 192 8 1
api_v4.py
in mapillary_tools
59 3 92 310 7 1
geotag_from_gpx_file.py
in mapillary_tools/geotag
100 4 110 186 7 1
sample_video.py
in mapillary_tools
152 3 110 183 6 1
geotag_from_gpx.py
in mapillary_tools/geotag
146 5 110 186 6 1
geotag_from_exif.py
in mapillary_tools/geotag
71 2 110 186 4 1
geotag_from_nmea_file.py
in mapillary_tools/geotag
43 2 114 186 4 1
scad
phone_holder.scad
in mounts/gophone
55 - 2026 2906 4 2
zip.py
in mapillary_tools/commands
31 2 87 192 3 1
geotag_from_generic.py
in mapillary_tools/geotag
7 2 114 186 3 1
ssl.py
in pyinstaller/runtime-hooks
4 - 1307 1318 3 3
hook-urllib2.py
in pyinstaller/hooks
4 - 1307 1318 3 3
cfg
setup.cfg
in root
3 - 1418 1628 3 4
__main__.py
in mapillary_tools/commands
114 3 87 110 2 1
main.py
in pyinstaller
3 - 110 416 2 1
scad
gopros.scad
in mounts/rigs
30 - 2183 2244 2 1
authenticate.py
in mapillary_tools
89 4 110 110 1 1
upload_blackvue.py
in mapillary_tools/commands
36 2 87 87 1 1
upload_zip.py
in mapillary_tools/commands
36 2 87 87 1 1
exceptions.py
in mapillary_tools
42 2 110 110 1 1
utils.py
in mapillary_tools/geotag
17 2 114 114 1 1
__init__.py
in mapillary_tools/geotag
1 - 186 186 1 1
gpmf.py
in mapillary_tools/geotag
81 8 186 186 1 1
build_win.ps1
in script
17 - 108 108 1 1
Correlations

File Size vs. Number of Changes: 54 points

mapillary_tools/upload.py x: 539 lines of code y: 61 # changes mapillary_tools/geo.py x: 107 lines of code y: 30 # changes mapillary_tools/uploader.py x: 367 lines of code y: 136 # changes mapillary_tools/__init__.py x: 1 lines of code y: 37 # changes mapillary_tools/commands/__main__.py x: 114 lines of code y: 2 # changes mapillary_tools/commands/upload.py x: 37 lines of code y: 22 # changes mapillary_tools/commands/upload_blackvue.py x: 36 lines of code y: 1 # changes mapillary_tools/commands/zip.py x: 31 lines of code y: 3 # changes mapillary_tools/geotag/geotag_from_blackvue.py x: 274 lines of code y: 9 # changes mapillary_tools/utils.py x: 68 lines of code y: 10 # changes mapillary_tools/upload_api_v4.py x: 221 lines of code y: 11 # changes mapillary_tools/api_v4.py x: 59 lines of code y: 7 # changes setup.py x: 22 lines of code y: 53 # changes script/build_win.ps1 x: 17 lines of code y: 1 # changes mapillary_tools/authenticate.py x: 89 lines of code y: 1 # changes mapillary_tools/commands/authenticate.py x: 35 lines of code y: 18 # changes mapillary_tools/exceptions.py x: 42 lines of code y: 1 # changes mapillary_tools/exif_read.py x: 233 lines of code y: 35 # changes mapillary_tools/ffmpeg.py x: 113 lines of code y: 11 # changes mapillary_tools/geotag/geotag_from_exif.py x: 71 lines of code y: 4 # changes mapillary_tools/geotag/geotag_from_gopro.py x: 135 lines of code y: 8 # changes mapillary_tools/geotag/geotag_from_gpx.py x: 146 lines of code y: 6 # changes mapillary_tools/geotag/geotag_from_gpx_file.py x: 100 lines of code y: 7 # changes mapillary_tools/process_geotag_properties.py x: 313 lines of code y: 45 # changes mapillary_tools/process_import_meta_properties.py x: 98 lines of code y: 60 # changes mapillary_tools/process_sequence_properties.py x: 195 lines of code y: 43 # changes mapillary_tools/sample_video.py x: 152 lines of code y: 6 # changes mapillary_tools/types.py x: 209 lines of code y: 8 # changes pyinstaller/main.py x: 3 lines of code y: 2 # changes mapillary_tools/exif_write.py x: 126 lines of code y: 22 # changes mapillary_tools/geotag/geotag_from_generic.py x: 7 lines of code y: 3 # changes mapillary_tools/geotag/geotag_from_nmea_file.py x: 43 lines of code y: 4 # changes mapillary_tools/config.py x: 53 lines of code y: 11 # changes mapillary_tools/commands/process.py x: 266 lines of code y: 40 # changes mapillary_tools/ipc.py x: 25 lines of code y: 10 # changes mapillary_tools/commands/sample_video.py x: 72 lines of code y: 19 # changes mapillary_tools/commands/video_process.py x: 11 lines of code y: 50 # changes mapillary_tools/geotag/__init__.py x: 1 lines of code y: 1 # changes mapillary_tools/geotag/gpmf.py x: 81 lines of code y: 1 # changes mapillary_tools/commands/__init__.py x: 7 lines of code y: 45 # changes mapillary_tools/commands/process_and_upload.py x: 11 lines of code y: 37 # changes mapillary_tools/commands/video_process_and_upload.py x: 14 lines of code y: 43 # changes mapillary_tools.spec x: 32 lines of code y: 10 # changes pyinstaller/hooks/hook-urllib2.py x: 4 lines of code y: 3 # changes setup.cfg x: 3 lines of code y: 3 # changes mounts/gophone/phone_holder.scad x: 55 lines of code y: 4 # changes mounts/rigs/gopros.scad x: 30 lines of code y: 2 # changes mounts/modules/gopro_mounts_mooncactus.scad x: 519 lines of code y: 1 # changes mounts/gophone/Write.scad x: 352 lines of code y: 1 # changes
136.0
# changes
  min: 1.0
  average: 17.69
  25th percentile: 2.0
  median: 7.5
  75th percentile: 31.25
  max: 136.0
0 539.0
lines of code
min: 1.0 | average: 113.26 | 25th percentile: 17.0 | median: 57.0 | 75th percentile: 147.5 | max: 539.0

Number of Contributors vs. Number of Changes: 54 points

mapillary_tools/upload.py x: 8 # contributors y: 61 # changes mapillary_tools/geo.py x: 6 # contributors y: 30 # changes mapillary_tools/uploader.py x: 13 # contributors y: 136 # changes mapillary_tools/__init__.py x: 7 # contributors y: 37 # changes mapillary_tools/commands/__main__.py x: 1 # contributors y: 2 # changes mapillary_tools/commands/upload.py x: 5 # contributors y: 22 # changes mapillary_tools/commands/upload_blackvue.py x: 1 # contributors y: 1 # changes mapillary_tools/commands/zip.py x: 1 # contributors y: 3 # changes mapillary_tools/geotag/geotag_from_blackvue.py x: 1 # contributors y: 9 # changes mapillary_tools/utils.py x: 4 # contributors y: 10 # changes mapillary_tools/upload_api_v4.py x: 1 # contributors y: 11 # changes mapillary_tools/api_v4.py x: 1 # contributors y: 7 # changes setup.py x: 10 # contributors y: 53 # changes mapillary_tools/commands/authenticate.py x: 6 # contributors y: 18 # changes mapillary_tools/exif_read.py x: 8 # contributors y: 35 # changes mapillary_tools/ffmpeg.py x: 2 # contributors y: 11 # changes mapillary_tools/geotag/geotag_from_exif.py x: 1 # contributors y: 4 # changes mapillary_tools/geotag/geotag_from_gopro.py x: 1 # contributors y: 8 # changes mapillary_tools/geotag/geotag_from_gpx.py x: 1 # contributors y: 6 # changes mapillary_tools/process_geotag_properties.py x: 6 # contributors y: 45 # changes mapillary_tools/process_import_meta_properties.py x: 11 # contributors y: 60 # changes mapillary_tools/process_sequence_properties.py x: 8 # contributors y: 43 # changes mapillary_tools/exif_write.py x: 6 # contributors y: 22 # changes mapillary_tools/commands/process.py x: 5 # contributors y: 40 # changes mapillary_tools/commands/sample_video.py x: 4 # contributors y: 19 # changes mapillary_tools/commands/video_process.py x: 5 # contributors y: 50 # changes mapillary_tools/commands/__init__.py x: 8 # contributors y: 45 # changes mapillary_tools/commands/process_and_upload.py x: 5 # contributors y: 37 # changes mapillary_tools/commands/video_process_and_upload.py x: 5 # contributors y: 43 # changes mapillary_tools.spec x: 5 # contributors y: 10 # changes pyinstaller/hooks/hook-urllib2.py x: 3 # contributors y: 3 # changes setup.cfg x: 4 # contributors y: 3 # changes mounts/gophone/phone_holder.scad x: 2 # contributors y: 4 # changes
136.0
# changes
  min: 1.0
  average: 17.69
  25th percentile: 2.0
  median: 7.5
  75th percentile: 31.25
  max: 136.0
0 13.0
# contributors
min: 1.0 | average: 3.37 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 5.0 | max: 13.0