This repository has been archived on 2026-03-12. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
codewanderer/scripts/get-metadata.js
2021-08-05 21:39:18 +02:00

54 lines
1.6 KiB
JavaScript

import { resolve } from 'path';
import { readdir } from 'fs/promises';
import getItemSize from 'get-folder-size';
import { getProjectContributors } from './helpers.js';
const main = async () => {
/* CONSTANTS */
const __dirname = resolve();
const PROJECT_PATH = resolve(__dirname, 'sourceproject/ethereumjs-monorepo');
const SUBPACKAGE_PATH = resolve(PROJECT_PATH, 'packages');
const subprojectPaths = await readdir(SUBPACKAGE_PATH);
const subprojectOverviewData = await Promise.all(
subprojectPaths.map(async (subprojectPath) => {
const size = await getItemSize.loose(resolve(PROJECT_PATH, SUBPACKAGE_PATH, subprojectPath));
return {
name: subprojectPath,
path: `packages/${subprojectPath}`,
filePath: resolve(PROJECT_PATH, SUBPACKAGE_PATH, subprojectPath),
size: Math.floor(size * 0.001),
};
})
);
const subprojects = subprojectOverviewData.filter(
(subprojectData) => subprojectData.name !== 'vm' && subprojectData.name !== 'ethereum-tests'
);
/*const subprojectsWithRevealables = await Promise.all(
subprojects.map(async (subproject) => {
const contributors = await getContributorsForSubproject(subproject);
const revealables = [...contributors];
const subprojectWithRevealables = {
...subproject,
revealables,
};
console.log(revealables);
return subprojectWithRevealables;
})
);*/
const projectContributors = await getProjectContributors();
console.log('overall contribs', projectContributors);
// console.log('Resulting metadata:');
/* console.log({
subprojects: subprojectsWithRevealables,
});*/
};
main();