From 1044af1a31a90ab69589eca018deb9c0650faf09 Mon Sep 17 00:00:00 2001
From: "Carol (Nichols || Goulding)" <carol.nichols@gmail.com>
Date: Fri, 30 Jan 2026 15:10:07 -0500
Subject: [PATCH] Exclude all of oauth_github table from the database dump
Until this table becomes official
---
crates/crates_io_database_dump/src/dump-db.toml | 8 ++++----
...s_io_database_dump__tests__sql_scripts@export.sql.snap | 1 -
...s_io_database_dump__tests__sql_scripts@import.sql.snap | 6 ------
src/tests/dump_db.rs | 2 --
4 files changed, 4 insertions(+), 13 deletions(-)
diff --git a/crates/crates_io_database_dump/src/dump-db.toml b/crates/crates_io_database_dump/src/dump-db.toml
index 7d5fbb93f4c..cfb4eb024d6 100644
@@ -165,11 +165,11 @@ created_at = "public"
total_downloads = "public"
[oauth_github.columns]
-user_id = "public"
-account_id = "public"
+user_id = "private"
+account_id = "private"
encrypted_token = "private"
-login = "public"
-avatar = "public"
+login = "private"
+avatar = "private"
[oauth_github.column_defaults]
encrypted_token = "''"
diff --git a/crates/crates_io_database_dump/src/snapshots/crates_io_database_dump__tests__sql_scripts@export.sql.snap b/crates/crates_io_database_dump/src/snapshots/crates_io_database_dump__tests__sql_scripts@export.sql.snap
index 10aaa68d70c..e46b52731d7 100644
@@ -10,7 +10,6 @@ BEGIN ISOLATION LEVEL REPEATABLE READ, READ ONLY;
\copy "crates" ("created_at", "description", "documentation", "homepage", "id", "max_features", "max_upload_size", "name", "readme", "repository", "trustpub_only", "updated_at") TO 'data/crates.csv' WITH CSV HEADER
\copy "keywords" ("crates_cnt", "created_at", "id", "keyword") TO 'data/keywords.csv' WITH CSV HEADER
\copy "metadata" ("total_downloads") TO 'data/metadata.csv' WITH CSV HEADER
- \copy "oauth_github" ("account_id", "avatar", "login", "user_id") TO 'data/oauth_github.csv' WITH CSV HEADER
\copy "reserved_crate_names" ("name") TO 'data/reserved_crate_names.csv' WITH CSV HEADER
\copy "teams" ("avatar", "github_id", "id", "login", "name", "org_id") TO 'data/teams.csv' WITH CSV HEADER
\copy (SELECT "gh_avatar", "gh_id", "gh_login", "id", "name" FROM "users" WHERE id in ( SELECT owner_id AS user_id FROM crate_owners WHERE NOT deleted AND owner_kind = 0 UNION SELECT published_by as user_id FROM versions )) TO 'data/users.csv' WITH CSV HEADER
diff --git a/crates/crates_io_database_dump/src/snapshots/crates_io_database_dump__tests__sql_scripts@import.sql.snap b/crates/crates_io_database_dump/src/snapshots/crates_io_database_dump__tests__sql_scripts@import.sql.snap
index 62d9ea7eeb6..4efab6e0746 100644
@@ -11,7 +11,6 @@ BEGIN;
ALTER TABLE "crates" DISABLE TRIGGER ALL;
ALTER TABLE "keywords" DISABLE TRIGGER ALL;
ALTER TABLE "metadata" DISABLE TRIGGER ALL;
- ALTER TABLE "oauth_github" DISABLE TRIGGER ALL;
ALTER TABLE "reserved_crate_names" DISABLE TRIGGER ALL;
ALTER TABLE "teams" DISABLE TRIGGER ALL;
ALTER TABLE "users" DISABLE TRIGGER ALL;
@@ -26,7 +25,6 @@ BEGIN;
-- Set defaults for non-nullable columns not included in the dump.
- ALTER TABLE "oauth_github" ALTER COLUMN "encrypted_token" SET DEFAULT '';
ALTER TABLE "users" ALTER COLUMN "gh_encrypted_token" SET DEFAULT '';
-- Truncate all tables.
@@ -36,7 +34,6 @@ BEGIN;
TRUNCATE "crates" RESTART IDENTITY CASCADE;
TRUNCATE "keywords" RESTART IDENTITY CASCADE;
TRUNCATE "metadata" RESTART IDENTITY CASCADE;
- TRUNCATE "oauth_github" RESTART IDENTITY CASCADE;
TRUNCATE "reserved_crate_names" RESTART IDENTITY CASCADE;
TRUNCATE "teams" RESTART IDENTITY CASCADE;
TRUNCATE "users" RESTART IDENTITY CASCADE;
@@ -59,7 +56,6 @@ BEGIN;
\copy "crates" ("created_at", "description", "documentation", "homepage", "id", "max_features", "max_upload_size", "name", "readme", "repository", "trustpub_only", "updated_at") FROM 'data/crates.csv' WITH CSV HEADER
\copy "keywords" ("crates_cnt", "created_at", "id", "keyword") FROM 'data/keywords.csv' WITH CSV HEADER
\copy "metadata" ("total_downloads") FROM 'data/metadata.csv' WITH CSV HEADER
- \copy "oauth_github" ("account_id", "avatar", "login", "user_id") FROM 'data/oauth_github.csv' WITH CSV HEADER
\copy "reserved_crate_names" ("name") FROM 'data/reserved_crate_names.csv' WITH CSV HEADER
\copy "teams" ("avatar", "github_id", "id", "login", "name", "org_id") FROM 'data/teams.csv' WITH CSV HEADER
\copy "users" ("gh_avatar", "gh_id", "gh_login", "id", "name") FROM 'data/users.csv' WITH CSV HEADER
@@ -74,7 +70,6 @@ BEGIN;
-- Drop the defaults again.
- ALTER TABLE "oauth_github" ALTER COLUMN "encrypted_token" DROP DEFAULT;
ALTER TABLE "users" ALTER COLUMN "gh_encrypted_token" DROP DEFAULT;
-- Reenable triggers on each table.
@@ -84,7 +79,6 @@ BEGIN;
ALTER TABLE "crates" ENABLE TRIGGER ALL;
ALTER TABLE "keywords" ENABLE TRIGGER ALL;
ALTER TABLE "metadata" ENABLE TRIGGER ALL;
- ALTER TABLE "oauth_github" ENABLE TRIGGER ALL;
ALTER TABLE "reserved_crate_names" ENABLE TRIGGER ALL;
ALTER TABLE "teams" ENABLE TRIGGER ALL;
ALTER TABLE "users" ENABLE TRIGGER ALL;
diff --git a/src/tests/dump_db.rs b/src/tests/dump_db.rs
index fb44318b0cf..3119e72302c 100644
@@ -54,7 +54,6 @@ async fn test_dump_db_job() -> anyhow::Result<()> {
"YYYY-MM-DD-HHMMSS/data/crates.csv",
"YYYY-MM-DD-HHMMSS/data/keywords.csv",
"YYYY-MM-DD-HHMMSS/data/metadata.csv",
- "YYYY-MM-DD-HHMMSS/data/oauth_github.csv",
"YYYY-MM-DD-HHMMSS/data/reserved_crate_names.csv",
"YYYY-MM-DD-HHMMSS/data/teams.csv",
"YYYY-MM-DD-HHMMSS/data/users.csv",
@@ -88,7 +87,6 @@ async fn test_dump_db_job() -> anyhow::Result<()> {
"data/crates.csv",
"data/keywords.csv",
"data/metadata.csv",
- "data/oauth_github.csv",
"data/reserved_crate_names.csv",
"data/teams.csv",
"data/users.csv",