| Title: | Commit and Contributor Statistics for Major Open Source Projects |
| Version: | 0.1.0 |
| Description: | Over 30 years of daily commit activity and contributor growth for 'FreeBSD', 'OpenBSD', 'NetBSD', and 'PostgreSQL'. Built from cloned git repositories for complete coverage – not limited by API quotas. Includes daily commits, daily new committers, weekly aggregates, and 'Phabricator' sign-up data. Designed for time series analysis, growth modeling, and cross-project comparison. Contains no personal data. |
| License: | CC0 |
| Encoding: | UTF-8 |
| LazyData: | true |
| LazyDataCompression: | xz |
| RoxygenNote: | 7.3.2 |
| Depends: | R (≥ 3.5.0) |
| URL: | https://github.com/chrislongros/osscontribs |
| BugReports: | https://github.com/chrislongros/osscontribs/issues |
| NeedsCompilation: | no |
| Packaged: | 2026-07-09 17:45:05 UTC; root |
| Author: | Christos Longros |
| Maintainer: | Christos Longros <chris.longros@gmail.com> |
| Repository: | CRAN |
| Date/Publication: | 2026-07-19 12:30:09 UTC |
Individual Commit Timestamps (from git repositories)
Description
Every commit from FreeBSD, OpenBSD, NetBSD, and PostgreSQL with full timestamps and anonymized author IDs. Extracted from cloned git repositories.
Usage
data(oss_commits)
Format
A data frame with 2068717 rows and 3 variables:
- project
character, project name
- timestamp
POSIXct, commit timestamp in UTC
- author_id
character, anonymized 12-character author hash
Source
Cloned from https://github.com/freebsd/freebsd-src, https://github.com/openbsd/src, https://github.com/NetBSD/src, https://github.com/postgres/postgres
Examples
data(oss_commits)
fb <- oss_commits[oss_commits$project == "freebsd", ]
hours <- as.POSIXlt(fb$timestamp)$hour
hist(hours, breaks = 0:24, main = "FreeBSD Commits by Hour of Day",
xlab = "Hour (UTC)", col = "steelblue")
Open Source Project Contributor Signups (Monthly)
Description
Monthly new contributor signup counts for open source projects. No personal information included.
FreeBSD data represents Phabricator account registrations. Other projects approximate signup date as the date of each author's first commit on GitHub (top 100 contributors).
Note: signups and commit activity are different metrics.
Usage
data(oss_contributors)
Format
A data frame with 447 rows and 5 variables:
- project
character, project name
- source
character, data source (phabricator or github)
- month
Date, first day of each month
- new_contributors
integer, new contributors that month
- cumulative
integer, running total for that project
Source
FreeBSD: https://reviews.freebsd.org
GitHub: https://github.com/freebsd/freebsd-src, https://github.com/openbsd/src, https://github.com/NetBSD/src, https://github.com/postgres/postgres
Examples
data(oss_contributors)
projects <- split(oss_contributors, oss_contributors$project)
plot(NULL, xlim = range(oss_contributors$month),
ylim = c(0, max(oss_contributors$cumulative)),
xlab = "Date", ylab = "Total Contributors",
main = "Open Source Contributor Signups")
cols <- c(freebsd = "red", openbsd = "orange",
netbsd = "blue", postgresql = "purple")
for (p in names(projects)) {
d <- projects[[p]]
lines(d$month, d$cumulative, col = cols[p], lwd = 2)
}
legend("topleft", names(cols), col = cols, lwd = 2)
Open Source Project Contributor Signups (Daily, FreeBSD only)
Description
Daily signup counts for the FreeBSD Phabricator code review platform. Represents account registrations, not commit activity. Suitable for time series analysis. No personal information included.
Usage
data(oss_contributors_daily)
Format
A data frame with 2531 rows and 5 variables:
- project
character, always "freebsd"
- source
character, always "phabricator"
- date
Date, the signup date
- new_contributors
integer, new signups that day
- cumulative
integer, running total
Source
Aggregated from public Phabricator user data at https://reviews.freebsd.org
Examples
data(oss_contributors_daily)
plot(oss_contributors_daily$date,
oss_contributors_daily$new_contributors,
type = "h", xlab = "Date", ylab = "New Signups",
main = "FreeBSD Daily Phabricator Signups")
Daily New Committers (from git repositories)
Description
Daily counts of authors making their first commit to each project. Extracted from cloned git repositories. Includes all authors.
Usage
data(oss_daily_authors)
Format
A data frame with 2932 rows and 4 variables:
- project
character, project name
- date
Date, date of first commit
- new_authors
integer, new committers that day
- cumulative_authors
integer, running total of unique committers
Source
Cloned from https://github.com/freebsd/freebsd-src, https://github.com/openbsd/src, https://github.com/NetBSD/src, https://github.com/postgres/postgres
Examples
data(oss_daily_authors)
projects <- split(oss_daily_authors, oss_daily_authors$project)
plot(NULL, xlim = range(oss_daily_authors$date),
ylim = c(0, max(oss_daily_authors$cumulative_authors)),
xlab = "Date", ylab = "Total Unique Committers",
main = "Cumulative Committers Over Time")
cols <- c(freebsd = "red", openbsd = "orange",
netbsd = "blue", postgresql = "purple")
for (p in names(projects)) {
lines(projects[[p]]$date, projects[[p]]$cumulative_authors,
col = cols[p], lwd = 2)
}
legend("topleft", names(cols), col = cols, lwd = 2)
Daily Commit Activity (from git repositories)
Description
Daily commit counts for FreeBSD, OpenBSD, NetBSD, and PostgreSQL, extracted directly from cloned git repositories. Includes all commits from all authors.
Usage
data(oss_daily_commits)
Format
A data frame with 44939 rows and 4 variables:
- project
character, project name
- date
Date, commit date
- commits
integer, commits that day
- cumulative_commits
integer, running total
Source
Cloned from https://github.com/freebsd/freebsd-src, https://github.com/openbsd/src, https://github.com/NetBSD/src, https://github.com/postgres/postgres
Examples
data(oss_daily_commits)
fb <- oss_daily_commits[oss_daily_commits$project == "freebsd", ]
plot(fb$date, fb$cumulative_commits, type = "l",
xlab = "Date", ylab = "Total Commits",
main = "FreeBSD Cumulative Commits")
Open Source Project Commit Activity (Weekly)
Description
Weekly commit counts for major open source projects from GitHub. Measures actual code activity (not signups). Counts are aggregated across the top 100 contributors per project (GitHub API limitation). No personal information included.
Usage
data(oss_weekly_commits)
Format
A data frame with 6307 rows and 5 variables:
- project
character, project name
- source
character, always "github"
- date
Date, start of the week (Sunday)
- commits
integer, commits that week
- cumulative_commits
integer, running total of commits
Source
GitHub: https://github.com/freebsd/freebsd-src, https://github.com/openbsd/src, https://github.com/NetBSD/src, https://github.com/postgres/postgres
Examples
data(oss_weekly_commits)
fb <- oss_weekly_commits[oss_weekly_commits$project == "freebsd", ]
plot(fb$date, fb$commits, type = "l",
xlab = "Date", ylab = "Commits per Week",
main = "FreeBSD Weekly Commit Activity (top 100 authors)")