Skip to content

Commit 7abaf8e

Browse files
committed
[repo] Generate a list of pages left to migrate
1 parent 3edd26f commit 7abaf8e

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

scripts/wikimedia-sync.js

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,4 +101,36 @@ program
101101
logger.info('Run completed');
102102
});
103103

104+
program
105+
.command('fetch-todo')
106+
.description('Fetch a list of pages which are not marked as obsolete or migrated')
107+
.action(async () => {
108+
const getAllPages = () => new Promise((resolve, reject) => {
109+
logger.info('Fetching all pages');
110+
client.getAllPages((err, data) => {
111+
if (err) {
112+
reject(new Error(err));
113+
}
114+
resolve(data.map((pageData) => pageData.title));
115+
});
116+
});
117+
118+
const allPages = await getAllPages();
119+
const migratedPages = await getPagesTranscluding('Template:Migrated');
120+
const obsoletePages = await getPagesTranscluding('Template:obsolete');
121+
const todo = allPages.filter((pageName) => {
122+
if (migratedPages.includes(pageName)) {
123+
return false;
124+
}
125+
126+
if (obsoletePages.includes(pageName)) {
127+
return false;
128+
}
129+
130+
return true;
131+
});
132+
todo.every((pageName) => logger.info(`=> ${pageName}`));
133+
logger.info(`== ${todo.length} pages to migrate ==`);
134+
});
135+
104136
program.parse();

0 commit comments

Comments
 (0)