chaoss / chaoss/CollectOSS

commits table is actually representing commit file changes

Open
#211 1 comment 0 reactions 0 assignees View on GitHub
database tech debt
Dominant language
Python
Stars
13
Forks
17
Avg merge
6h 59m
Merged PRs (30d)
1

Description

> [!NOTE]
> Migrated from [augurlabs/augur#3682](https://github.com/augurlabs/augur/issues/3682)
> Originally opened by `@MoralCode` on 2026-02-11

---

@cdolfi noticed the commits table has one entry in it **per file**, per commit.

elsewhere in the augur code (such as with pull_request) we have the tables split into two, one for the pull request itself, and one for each of the files.

We should apply this pattern to the commits table

the migration of existing users data is going to be the suckiest part of this.

i suspect the best path is
1. rename the current commits table to commit_files (since thats what it mostly represents)
2. create a new commits table (thats actually for commits this time)
3. add a column to commit_files thats intended to be a foreign key to commits
4. back-fill the entries in the commits table with the columns that are unique to the commit (i.e. where the data is the same for every entry with the same commit hash
5. delete those columns from commit_files as they are fully redundant
6. enforce the foreign key

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.