guardian / discussion-avatar
Temporal Dependencies

A temporal dependency occurs when developers change two or more files at the same time (i.e. they are a part of the same commit).


Files Most Frequently Changed Together (Top 50)

data...

Pairs # same commits # commits 1 # commits 2 latest commit
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
api/build.sbt
4 8 (50%) 65 (6%) 2025-05-08
api/project/plugins.sbt
api/build.sbt
4 13 (30%) 65 (6%) 2025-05-09
api/src/main/scala/com/gu/adapters/http/Image.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
4 15 (26%) 88 (4%) 2025-05-08
api/src/main/scala/com/gu/adapters/http/Image.scala
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
4 15 (26%) 8 (50%) 2025-05-08
api/src/main/scala/com/gu/adapters/http/Image.scala
api/build.sbt
4 15 (26%) 65 (6%) 2025-05-08
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
api/build.sbt
4 88 (4%) 65 (6%) 2025-05-08
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
4 8 (50%) 88 (4%) 2025-05-08
api/src/main/scala/com/gu/core/utils/ErrorHandling.scala
api/build.sbt
2 9 (22%) 65 (3%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/responses.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
2 13 (15%) 88 (2%) 2025-04-23
api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala
api/src/main/scala/com/gu/adapters/http/Authentication.scala
2 15 (13%) 41 (4%) 2025-04-23
api/src/main/scala/com/gu/core/models/errors.scala
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
2 10 (20%) 8 (25%) 2025-04-23
api/src/main/scala/com/gu/core/store/store.scala
api/build.sbt
2 34 (5%) 65 (3%) 2025-04-23
api/src/main/scala/com/gu/core/utils/ErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala
2 9 (22%) 7 (28%) 2025-04-23
api/src/main/scala/com/gu/core/models/errors.scala
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
2 10 (20%) 5 (40%) 2025-04-23
api/src/main/scala/com/gu/core/models/User.scala
api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala
2 9 (22%) 7 (28%) 2025-04-23
api/src/main/scala/com/gu/core/utils/ErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
2 9 (22%) 88 (2%) 2025-04-23
api/src/main/scala/com/gu/core/models/User.scala
api/src/main/scala/com/gu/adapters/store/Store.scala
2 9 (22%) 48 (4%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
2 7 (28%) 8 (25%) 2025-04-23
api/src/main/scala/com/gu/adapters/store/Store.scala
api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala
2 48 (4%) 7 (28%) 2025-04-23
api/src/main/scala/com/gu/core/models/User.scala
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
2 9 (22%) 8 (25%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala
api/src/main/scala/com/gu/adapters/http/Authentication.scala
2 7 (28%) 41 (4%) 2025-04-23
api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala
api/src/main/scala/com/gu/adapters/http/responses.scala
2 15 (13%) 13 (15%) 2025-04-23
api/src/main/scala/com/gu/core/models/errors.scala
api/build.sbt
2 10 (20%) 65 (3%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/JettyLauncher.scala
api/build.sbt
2 8 (25%) 65 (3%) 2025-05-09
api/src/main/scala/com/gu/adapters/http/Filter.scala
api/src/main/scala/com/gu/adapters/http/Authentication.scala
2 10 (20%) 41 (4%) 2025-04-23
api/src/main/scala/com/gu/core/utils/ErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/responses.scala
2 9 (22%) 13 (15%) 2025-04-23
api/src/main/scala/com/gu/core/utils/ErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/Filter.scala
2 9 (22%) 10 (20%) 2025-04-23
api/src/main/scala/com/gu/core/models/User.scala
api/src/main/scala/com/gu/adapters/http/Authentication.scala
2 9 (22%) 41 (4%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
2 5 (40%) 88 (2%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
2 5 (40%) 8 (25%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/Authentication.scala
api/src/main/scala/com/gu/adapters/http/Image.scala
2 41 (4%) 15 (13%) 2025-04-23
api/src/main/scala/com/gu/core/models/errors.scala
api/src/main/scala/com/gu/adapters/http/Filter.scala
2 10 (20%) 10 (20%) 2025-04-23
api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala
api/src/main/scala/com/gu/adapters/http/Filter.scala
2 15 (13%) 10 (20%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
api/build.sbt
2 5 (40%) 65 (3%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala
api/src/main/scala/com/gu/adapters/http/Image.scala
2 7 (28%) 15 (13%) 2025-04-23
api/src/main/scala/com/gu/core/store/store.scala
api/src/main/scala/com/gu/core/models/errors.scala
2 34 (5%) 10 (20%) 2025-04-23
cloudformation.yaml
riff-raff.yaml
2 2 (100%) 4 (50%) 2025-04-29
api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
2 7 (28%) 88 (2%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/Filter.scala
api/src/main/scala/com/gu/adapters/http/IOUtils.scala
2 10 (20%) 8 (25%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/AvatarSwagger.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
2 6 (33%) 88 (2%) 2025-05-08
api/src/main/scala/com/gu/adapters/http/AvatarSwagger.scala
api/build.sbt
2 6 (33%) 65 (3%) 2025-05-08
api/src/main/scala/com/gu/adapters/http/Filter.scala
api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala
2 10 (20%) 88 (2%) 2025-04-23
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/Filter.scala
2 5 (40%) 10 (20%) 2025-04-23
api/src/main/scala/com/gu/adapters/store/Store.scala
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
2 48 (4%) 5 (40%) 2025-04-23
api/src/main/scala/ScalatraBootstrap.scala
api/build.sbt
2 31 (6%) 65 (3%) 2025-05-09
api/src/main/scala/com/gu/core/models/errors.scala
api/src/main/scala/com/gu/adapters/http/Authentication.scala
2 10 (20%) 41 (4%) 2025-04-23
api/src/main/scala/com/gu/core/store/store.scala
api/src/main/scala/com/gu/adapters/http/Image.scala
2 34 (5%) 15 (13%) 2025-04-23
api/src/main/scala/com/gu/adapters/store/Store.scala
api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala
2 48 (4%) 15 (13%) 2025-04-23
api/src/main/scala/com/gu/core/utils/ErrorHandling.scala
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
2 9 (22%) 5 (40%) 2025-04-23
api/src/main/scala/com/gu/core/store/store.scala
api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala
2 34 (5%) 5 (40%) 2025-04-23
Dependencies between files in same commits
The number on the lines shows the number of shared commits.
G [api/src/main/scala/com/gu/adapters/http/IOUtils.scala] [api/src/main/scala/com/gu/adapters/http/IOUtils.scala] [api/build.sbt] [api/build.sbt] [api/src/main/scala/com/gu/adapters/http/IOUtils.scala]--[api/build.sbt] 4 [api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] [api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] [api/src/main/scala/com/gu/adapters/http/IOUtils.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 4 [api/project/plugins.sbt] [api/project/plugins.sbt] [api/project/plugins.sbt]--[api/build.sbt] 4 [api/src/main/scala/com/gu/adapters/http/Image.scala] [api/src/main/scala/com/gu/adapters/http/Image.scala] [api/src/main/scala/com/gu/adapters/http/Image.scala]--[api/src/main/scala/com/gu/adapters/http/IOUtils.scala] 4 [api/src/main/scala/com/gu/adapters/http/Image.scala]--[api/build.sbt] 4 [api/src/main/scala/com/gu/adapters/http/Image.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 4 [api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala]--[api/build.sbt] 4 [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala] [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala] [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala]--[api/build.sbt] 2 [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 2 [api/src/main/scala/com/gu/adapters/http/responses.scala] [api/src/main/scala/com/gu/adapters/http/responses.scala] [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/responses.scala] 2 [api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala] [api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala] [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala] 2 [api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala] [api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala] [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala] 2 [api/src/main/scala/com/gu/adapters/http/Filter.scala] [api/src/main/scala/com/gu/adapters/http/Filter.scala] [api/src/main/scala/com/gu/core/utils/ErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/Filter.scala] 2 [api/src/main/scala/com/gu/adapters/http/responses.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 2 [api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala] [api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala] [api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala]--[api/src/main/scala/com/gu/adapters/http/responses.scala] 2 [api/src/main/scala/com/gu/adapters/http/Authentication.scala] [api/src/main/scala/com/gu/adapters/http/Authentication.scala] [api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala]--[api/src/main/scala/com/gu/adapters/http/Authentication.scala] 2 [api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala]--[api/src/main/scala/com/gu/adapters/http/Filter.scala] 2 [api/src/main/scala/com/gu/adapters/http/Authentication.scala]--[api/src/main/scala/com/gu/adapters/http/Image.scala] 2 [api/src/main/scala/com/gu/core/models/errors.scala] [api/src/main/scala/com/gu/core/models/errors.scala] [api/src/main/scala/com/gu/core/models/errors.scala]--[api/src/main/scala/com/gu/adapters/http/IOUtils.scala] 2 [api/src/main/scala/com/gu/core/models/errors.scala]--[api/build.sbt] 2 [api/src/main/scala/com/gu/core/models/errors.scala]--[api/src/main/scala/com/gu/adapters/http/Authentication.scala] 2 [api/src/main/scala/com/gu/core/models/errors.scala]--[api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala] 2 [api/src/main/scala/com/gu/core/models/errors.scala]--[api/src/main/scala/com/gu/adapters/http/Filter.scala] 2 [api/src/main/scala/com/gu/core/store/store.scala] [api/src/main/scala/com/gu/core/store/store.scala] [api/src/main/scala/com/gu/core/store/store.scala]--[api/build.sbt] 2 [api/src/main/scala/com/gu/core/store/store.scala]--[api/src/main/scala/com/gu/adapters/http/Image.scala] 2 [api/src/main/scala/com/gu/core/store/store.scala]--[api/src/main/scala/com/gu/core/models/errors.scala] 2 [api/src/main/scala/com/gu/core/store/store.scala]--[api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala] 2 [api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala]--[api/src/main/scala/com/gu/adapters/http/IOUtils.scala] 2 [api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala]--[api/src/main/scala/com/gu/adapters/http/Image.scala] 2 [api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 2 [api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala]--[api/src/main/scala/com/gu/adapters/http/Authentication.scala] 2 [api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/IOUtils.scala] 2 [api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala]--[api/build.sbt] 2 [api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 2 [api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala]--[api/src/main/scala/com/gu/adapters/http/Filter.scala] 2 [api/src/main/scala/com/gu/core/models/User.scala] [api/src/main/scala/com/gu/core/models/User.scala] [api/src/main/scala/com/gu/core/models/User.scala]--[api/src/main/scala/com/gu/adapters/http/IOUtils.scala] 2 [api/src/main/scala/com/gu/core/models/User.scala]--[api/src/main/scala/com/gu/adapters/http/Authentication.scala] 2 [api/src/main/scala/com/gu/core/models/User.scala]--[api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala] 2 [api/src/main/scala/com/gu/adapters/store/Store.scala] [api/src/main/scala/com/gu/adapters/store/Store.scala] [api/src/main/scala/com/gu/core/models/User.scala]--[api/src/main/scala/com/gu/adapters/store/Store.scala] 2 [api/src/main/scala/com/gu/adapters/store/Store.scala]--[api/src/main/scala/com/gu/adapters/queue/SqsDeletionConsumer.scala] 2 [api/src/main/scala/com/gu/adapters/store/Store.scala]--[api/src/main/scala/com/gu/adapters/http/AuthorizedApiServlet.scala] 2 [api/src/main/scala/com/gu/adapters/store/Store.scala]--[api/src/main/scala/com/gu/adapters/http/ServletWithErrorHandling.scala] 2 [api/src/main/scala/com/gu/adapters/http/JettyLauncher.scala] [api/src/main/scala/com/gu/adapters/http/JettyLauncher.scala] [api/src/main/scala/com/gu/adapters/http/JettyLauncher.scala]--[api/build.sbt] 2 [api/src/main/scala/com/gu/adapters/http/Filter.scala]--[api/src/main/scala/com/gu/adapters/http/IOUtils.scala] 2 [api/src/main/scala/com/gu/adapters/http/Filter.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 2 [api/src/main/scala/com/gu/adapters/http/Filter.scala]--[api/src/main/scala/com/gu/adapters/http/Authentication.scala] 2 [cloudformation.yaml] [cloudformation.yaml] [riff-raff.yaml] [riff-raff.yaml] [cloudformation.yaml]--[riff-raff.yaml] 2 [api/src/main/scala/com/gu/adapters/http/AvatarSwagger.scala] [api/src/main/scala/com/gu/adapters/http/AvatarSwagger.scala] [api/src/main/scala/com/gu/adapters/http/AvatarSwagger.scala]--[api/build.sbt] 2 [api/src/main/scala/com/gu/adapters/http/AvatarSwagger.scala]--[api/src/main/scala/com/gu/adapters/http/AvatarServlet.scala] 2 [api/src/main/scala/ScalatraBootstrap.scala] [api/src/main/scala/ScalatraBootstrap.scala] [api/src/main/scala/ScalatraBootstrap.scala]--[api/build.sbt] 2
Download: SVG DOT (open online Graphviz editor)

Open 2D force graph (file dependencies)... Open 3D force graph (file dependencies)...
Open 2D force graph (file dependencies with commits)... Open 3D force graph (file dependencies with commits)...
Dependencies between components in same commits (primary)
The number on the lines shows the number of shared commits.