Regenerate contributor lists

This commit is contained in:
pietervdvn 2022-02-14 19:41:55 +01:00
parent 73c95215e6
commit 438129f10c
4 changed files with 43 additions and 353 deletions

View file

@ -1,352 +1 @@
{
"contributors": [
{
"contributor": "pietervdvn",
"commits": 1119
},
{
"contributor": "Pieter Vander Vennet",
"commits": 784
},
{
"contributor": "Weblate",
"commits": 47
},
{
"contributor": "Robin van der Linde",
"commits": 47
},
{
"contributor": "Tobias",
"commits": 35
},
{
"contributor": "Christian Neumann",
"commits": 33
},
{
"contributor": "Win Olario",
"commits": 31
},
{
"contributor": "Pieter Fiers",
"commits": 31
},
{
"contributor": "karelleketers",
"commits": 26
},
{
"contributor": "Ward",
"commits": 24
},
{
"contributor": "Artem",
"commits": 23
},
{
"contributor": "Sebastian Kürten",
"commits": 19
},
{
"contributor": "Arno Deceuninck",
"commits": 18
},
{
"contributor": "pgm-chardelv1",
"commits": 17
},
{
"contributor": "Joost",
"commits": 17
},
{
"contributor": "Marco",
"commits": 16
},
{
"contributor": "Allan Nordhøy",
"commits": 16
},
{
"contributor": "ToastHawaii",
"commits": 15
},
{
"contributor": "Supaplex",
"commits": 14
},
{
"contributor": "J. Lavoie",
"commits": 14
},
{
"contributor": "WaldiS",
"commits": 13
},
{
"contributor": "Bavo Vanderghote",
"commits": 12
},
{
"contributor": "LiamSimons",
"commits": 10
},
{
"contributor": "Jacque Fresco",
"commits": 9
},
{
"contributor": "Midgard",
"commits": 8
},
{
"contributor": "Mateusz Konieczny",
"commits": 8
},
{
"contributor": "Irina",
"commits": 8
},
{
"contributor": "yopaseopor",
"commits": 7
},
{
"contributor": "Hosted Weblate",
"commits": 7
},
{
"contributor": "Flo Edelmann",
"commits": 7
},
{
"contributor": "Binnette",
"commits": 7
},
{
"contributor": "Vinicius",
"commits": 6
},
{
"contributor": "pelderson",
"commits": 6
},
{
"contributor": "lvgx",
"commits": 6
},
{
"contributor": "dependabot[bot]",
"commits": 6
},
{
"contributor": "Alexey Shabanov",
"commits": 6
},
{
"contributor": "Nikolay Korotkiy",
"commits": 5
},
{
"contributor": "LeJun",
"commits": 5
},
{
"contributor": "David Haberthür",
"commits": 5
},
{
"contributor": "William Weber Berrutti",
"commits": 4
},
{
"contributor": "Ward Beyens",
"commits": 4
},
{
"contributor": "SiegbjornSitumeang",
"commits": 4
},
{
"contributor": "seppesantens",
"commits": 4
},
{
"contributor": "Polgár Sándor",
"commits": 4
},
{
"contributor": "Jan Zabel",
"commits": 4
},
{
"contributor": "Hiroshi Miura",
"commits": 4
},
{
"contributor": "Fabio Bettani",
"commits": 4
},
{
"contributor": "Wiktor Przybylski",
"commits": 3
},
{
"contributor": "vankos",
"commits": 3
},
{
"contributor": "Reza Almanda",
"commits": 3
},
{
"contributor": "Léo Villeveygoux",
"commits": 3
},
{
"contributor": "JCGF-OSM",
"commits": 3
},
{
"contributor": "Erik Palm",
"commits": 3
},
{
"contributor": "Eduardo Addad de Oliveira",
"commits": 3
},
{
"contributor": "快乐的老鼠宝宝",
"commits": 2
},
{
"contributor": "Stanislas Gueniffey",
"commits": 2
},
{
"contributor": "riiga",
"commits": 2
},
{
"contributor": "pbarban",
"commits": 2
},
{
"contributor": "mic140",
"commits": 2
},
{
"contributor": "Leo Alcaraz",
"commits": 2
},
{
"contributor": "Jose Luis Infante",
"commits": 2
},
{
"contributor": "Jeff Huang",
"commits": 2
},
{
"contributor": "Heiko",
"commits": 2
},
{
"contributor": "graveelius",
"commits": 2
},
{
"contributor": "Damian Tokarski",
"commits": 2
},
{
"contributor": "Charlotte Delvaux",
"commits": 2
},
{
"contributor": "Tomas Fiers",
"commits": 1
},
{
"contributor": "Thibault Molleman",
"commits": 1
},
{
"contributor": "tbowdecl97",
"commits": 1
},
{
"contributor": "Seppe Santens",
"commits": 1
},
{
"contributor": "Sebastian",
"commits": 1
},
{
"contributor": "Sean Young",
"commits": 1
},
{
"contributor": "Schouppe Joost",
"commits": 1
},
{
"contributor": "root",
"commits": 1
},
{
"contributor": "Rodrigo Tavares",
"commits": 1
},
{
"contributor": "riQQ",
"commits": 1
},
{
"contributor": "Raphael Das Gupta",
"commits": 1
},
{
"contributor": "Noémie",
"commits": 1
},
{
"contributor": "mozita",
"commits": 1
},
{
"contributor": "Michał Targoński",
"commits": 1
},
{
"contributor": "Luna Jernberg",
"commits": 1
},
{
"contributor": "liimee",
"commits": 1
},
{
"contributor": "Iváns",
"commits": 1
},
{
"contributor": "Eric Armijo",
"commits": 1
},
{
"contributor": "Damian Pułka",
"commits": 1
},
{
"contributor": "Carlos Ramos Carreño",
"commits": 1
},
{
"contributor": "Beardhatcode",
"commits": 1
}
]
}
[{"commits":3144,"contributor":"Pieter Vander Vennet"},{"commits":64,"contributor":"Robin van der Linde"},{"commits":61,"contributor":"Weblate"},{"commits":38,"contributor":"Tobias"},{"commits":33,"contributor":"Christian Neumann"},{"commits":31,"contributor":"Win Olario"},{"commits":31,"contributor":"Pieter Fiers"},{"commits":26,"contributor":"karelleketers"},{"commits":24,"contributor":"Ward"},{"commits":20,"contributor":"Joost"},{"commits":19,"contributor":"Sebastian Kürten"},{"commits":18,"contributor":"Arno Deceuninck"},{"commits":17,"contributor":"pgm-chardelv1"},{"commits":16,"contributor":"Hosted Weblate"},{"commits":15,"contributor":"ToastHawaii"},{"commits":13,"contributor":"riQQ"},{"commits":13,"contributor":"Nicole"},{"commits":12,"contributor":"Tobias Jordans"},{"commits":12,"contributor":"Bavo Vanderghote"},{"commits":10,"contributor":"LiamSimons"},{"commits":8,"contributor":"dependabot[bot]"},{"commits":8,"contributor":"Midgard"},{"commits":7,"contributor":"RobJN"},{"commits":7,"contributor":"Mateusz Konieczny"},{"commits":7,"contributor":"Flo Edelmann"},{"commits":7,"contributor":"Binnette"},{"commits":7,"contributor":"yopaseopor"},{"commits":6,"contributor":"pelderson"},{"commits":5,"contributor":"David Haberthür"},{"commits":4,"contributor":"Ward Beyens"},{"commits":3,"contributor":"Léo Villeveygoux"},{"commits":2,"contributor":"arrival-spring"},{"commits":2,"contributor":"Strubbl"},{"commits":2,"contributor":"RayBB"},{"commits":2,"contributor":"Charlotte Delvaux"},{"commits":2,"contributor":"Supaplex"},{"commits":2,"contributor":"pbarban"},{"commits":2,"contributor":"graveelius"},{"commits":2,"contributor":"Stanislas Gueniffey"},{"commits":1,"contributor":"Jiří Podhorecký"},{"commits":1,"contributor":"Mark Rogerson"},{"commits":1,"contributor":"nicole_s"},{"commits":1,"contributor":"SC"},{"commits":1,"contributor":"Raphael Das Gupta"},{"commits":1,"contributor":"Nikolay Korotkiy"},{"commits":1,"contributor":"Seppe Santens"},{"commits":1,"contributor":"root"},{"commits":1,"contributor":"Allan Nordhøy"},{"commits":1,"contributor":"快乐的老鼠宝宝"},{"commits":1,"contributor":"Sebastian"},{"commits":1,"contributor":"Hiroshi Miura"},{"commits":1,"contributor":"riiga"},{"commits":1,"contributor":"Vinicius"},{"commits":1,"contributor":"Alexey Shabanov"},{"commits":1,"contributor":"Polgár Sándor"},{"commits":1,"contributor":"SiegbjornSitumeang"},{"commits":1,"contributor":"Marco"},{"commits":1,"contributor":"mozita"},{"commits":1,"contributor":"Schouppe Joost"},{"commits":1,"contributor":"Thibault Molleman"},{"commits":1,"contributor":"Noémie"},{"commits":1,"contributor":"Tomas Fiers"},{"commits":1,"contributor":"tbowdecl97"}]

1
assets/translators.json Normal file
View file

@ -0,0 +1 @@
[{"commits":60,"contributor":"danieldegroot2"},{"commits":41,"contributor":"kjon"},{"commits":29,"contributor":"Artem"},{"commits":23,"contributor":"Pieter Vander Vennet"},{"commits":22,"contributor":"Supaplex"},{"commits":22,"contributor":"Marco"},{"commits":22,"contributor":"Allan Nordhøy"},{"commits":21,"contributor":"Babos Gábor"},{"commits":21,"contributor":"Anonymous"},{"commits":15,"contributor":"WaldiS"},{"commits":14,"contributor":"J. Lavoie"},{"commits":13,"contributor":"SC"},{"commits":10,"contributor":"Reza Almanda"},{"commits":9,"contributor":"Jacque Fresco"},{"commits":8,"contributor":"LeJun"},{"commits":8,"contributor":"Irina"},{"commits":6,"contributor":"Nikolay Korotkiy"},{"commits":6,"contributor":"William Weber Berrutti"},{"commits":6,"contributor":"lvgx"},{"commits":5,"contributor":"Piotr"},{"commits":5,"contributor":"Robin van der Linde"},{"commits":5,"contributor":"seppesantens"},{"commits":5,"contributor":"Vinicius"},{"commits":5,"contributor":"Alexey Shabanov"},{"commits":4,"contributor":"Jeff Huang"},{"commits":4,"contributor":"Joost"},{"commits":4,"contributor":"Adolfo Jayme Barrientos"},{"commits":4,"contributor":"Polgár Sándor"},{"commits":4,"contributor":"David Haberthür"},{"commits":4,"contributor":"phlostically"},{"commits":4,"contributor":"Jan Zabel"},{"commits":4,"contributor":"Fabio Bettani"},{"commits":3,"contributor":"Sasha"},{"commits":3,"contributor":"Jose Luis Infante"},{"commits":3,"contributor":"Francois"},{"commits":3,"contributor":"Eduardo Addad de Oliveira"},{"commits":3,"contributor":"Wiktor Przybylski"},{"commits":3,"contributor":"Erik Palm"},{"commits":3,"contributor":"vankos"},{"commits":3,"contributor":"JCGF-OSM"},{"commits":3,"contributor":"Hiroshi Miura"},{"commits":3,"contributor":"SiegbjornSitumeang"},{"commits":2,"contributor":"わたなべけんご"},{"commits":2,"contributor":"Mateusz Konieczny"},{"commits":2,"contributor":"Kristoffer Grundström"},{"commits":2,"contributor":"el_libre como el chaval"},{"commits":2,"contributor":"Sebastian Kürten"},{"commits":2,"contributor":"Damian Tokarski"},{"commits":2,"contributor":"mic140"},{"commits":2,"contributor":"Heiko"},{"commits":2,"contributor":"Leo Alcaraz"},{"commits":1,"contributor":"sparky-oxford"},{"commits":1,"contributor":"jcn706"},{"commits":1,"contributor":"whatismoss"},{"commits":1,"contributor":"LePirlouit"},{"commits":1,"contributor":"SoftwareByRedline"},{"commits":1,"contributor":"plic ploc"},{"commits":1,"contributor":"Janina Ellinghaus"},{"commits":1,"contributor":"ssantos"},{"commits":1,"contributor":"Andre Fajar N"},{"commits":1,"contributor":"Ahen Purwakarta"},{"commits":1,"contributor":"Luna Jernberg"},{"commits":1,"contributor":"Rodrigo Tavares"},{"commits":1,"contributor":"liimee"},{"commits":1,"contributor":"Michał Targoński"},{"commits":1,"contributor":"Sean Young"},{"commits":1,"contributor":"Damian Pułka"},{"commits":1,"contributor":"Iváns"},{"commits":1,"contributor":"快乐的老鼠宝宝"},{"commits":1,"contributor":"Eric Armijo"},{"commits":1,"contributor":"Beardhatcode"},{"commits":1,"contributor":"riiga"},{"commits":1,"contributor":"Carlos Ramos Carreño"}]

View file

@ -31,7 +31,7 @@
"generate:licenses": "ts-node scripts/generateLicenseInfo.ts --no-fail",
"query:licenses": "ts-node scripts/generateLicenseInfo.ts --query",
"generate:report": "cd Docs/Tools && ./compileStats.sh && git commit . -m 'New statistics ands graphs' && git push",
"generate:contributor-list": "git log --pretty='%aN' | sort | uniq -c | sort -hr | sed 's/ *\\([0-9]*\\) \\(.*\\)$/{\"contributor\":\"\\2\", \"commits\":\\1}/' | tr '\\n' ',' | sed 's/^/{\"contributors\":[/' | sed 's/,$/]}/' | jq > assets/contributors.json",
"generate:contributor-list": "ts-node scripts/generateContributors.ts",
"generate:schemas": "ts2json-schema -p Models/ThemeConfig/Json/ -o Docs/Schemas/ -t tsconfig.json -R . -m \".*ConfigJson\" && ts-node scripts/fixSchemas.ts ",
"optimize-images": "cd assets/generated/ && find -name '*.png' -exec optipng '{}' \\; && echo 'PNGs are optimized'",
"reset:layeroverview": "echo {\\\"layers\\\":[], \\\"themes\\\":[]} > ./assets/generated/known_layers_and_themes.json && echo {\\\"layers\\\": []} > ./assets/generated/known_layers.json",

View file

@ -0,0 +1,40 @@
import {exec} from "child_process";
import {writeFile, writeFileSync} from "fs";
function asList(hist: Map<string, number>):{contributor: string, commits: number}[]{
const ls = []
hist.forEach((commits, contributor) => {
ls.push({commits, contributor})
})
ls.sort((a, b) => (b.commits - a.commits))
return ls
}
function main() {
exec("git log --pretty='%aN %%!%% %s' ", ((error, stdout, stderr) => {
const entries = stdout.split("\n").filter(str => str !== "")
const codeContributors = new Map<string, number>()
const translationContributors = new Map<string, number>()
for (const entry of entries) {
console.log(entry)
let [author, message] = entry.split("%!%").map(s => s.trim())
if (author === "pietervdvn") {
author = "Pieter Vander Vennet"
}
let hist = codeContributors;
if (message.startsWith("Translated using Weblate")) {
hist = translationContributors
}
hist.set(author, 1 + (hist.get(author) ?? 0))
}
const codeContributorsTarget = "assets/contributors.json"
writeFileSync(codeContributorsTarget, JSON.stringify(asList(codeContributors)))
const translatorsTarget = "assets/translators.json"
writeFileSync(translatorsTarget, JSON.stringify(asList(translationContributors)))
}));
}
main()