mirror of
https://github.com/github/codeql-action.git
synced 2025-12-27 01:30:10 +08:00
This commit only adds a single package and all of its transitive dependencies. The github-linguist package will be used for counting lines of code as a baseline for databases we are analyzing.
37 lines
961 B
JavaScript
37 lines
961 B
JavaScript
#!/usr/bin/env node
|
|
|
|
var fs = require('fs');
|
|
var yaml = require('js-yaml');
|
|
var path = require('path');
|
|
var request = require('request');
|
|
var camelize = require('camel-case');
|
|
var path = path.join(__dirname, '..', 'languages.json');
|
|
|
|
/**
|
|
* Sanitize the languages JSON object.
|
|
*
|
|
* @param {Object} obj
|
|
* @return {Object}
|
|
*/
|
|
var sanitizeYaml = function (obj) {
|
|
Object.keys(obj).forEach(function (language) {
|
|
Object.keys(obj[language]).forEach(function (key) {
|
|
var value = obj[language][key];
|
|
|
|
delete obj[language][key];
|
|
obj[language][camelize(key)] = value;
|
|
});
|
|
});
|
|
|
|
return obj;
|
|
};
|
|
|
|
/**
|
|
* Make a request to the YAML file hosted by GitHub and convert to JSON.
|
|
*/
|
|
request('https://raw.githubusercontent.com/github/linguist/master/lib/linguist/languages.yml', function (err, res, body) {
|
|
var languages = sanitizeYaml(yaml.safeLoad(body));
|
|
|
|
fs.writeFileSync(path, JSON.stringify(languages, null, 2));
|
|
});
|