Setup npm package

This commit is contained in:
Bart van Andel 2016-12-02 12:06:17 +01:00 committed by Adam Waldenberg
parent 315f4079ac
commit 3d11cdce44
4 changed files with 93 additions and 0 deletions

2
.gitignore vendored
View file

@ -2,5 +2,7 @@ build
debian debian
deb_dist deb_dist
dist dist
node_modules
*.egg-info *.egg-info
*.pyc *.pyc
*.tgz

View file

@ -35,6 +35,7 @@ Below are some example outputs for a number of famous open source projects. All
### The Team ### The Team
* Adam Waldenberg, Lead maintainer and Swedish translation * Adam Waldenberg, Lead maintainer and Swedish translation
* Agustín Cañas, Spanish translation * Agustín Cañas, Spanish translation
* Bart van Andel, npm package maintainer
* Bill Wang, Chinese translation * Bill Wang, Chinese translation
* Christian Kastner, Debian package maintainer * Christian Kastner, Debian package maintainer
* Jiwon Kim, Korean translation * Jiwon Kim, Korean translation
@ -49,5 +50,7 @@ Below are some example outputs for a number of famous open source projects. All
### Packages ### Packages
The Debian packages offered with releases of gitinspector are unofficial and very simple packages generated with [stdeb](https://github.com/astraw/stdeb). Christian Kastner is maintaining the official Debian packages. You can check the current status on the [Debian Package Tracker](https://tracker.debian.org/pkg/gitinspector). Consequently, there are official packages for many Debian based distributions installable via *apt-get*. The Debian packages offered with releases of gitinspector are unofficial and very simple packages generated with [stdeb](https://github.com/astraw/stdeb). Christian Kastner is maintaining the official Debian packages. You can check the current status on the [Debian Package Tracker](https://tracker.debian.org/pkg/gitinspector). Consequently, there are official packages for many Debian based distributions installable via *apt-get*.
An [npm](https://npmjs.com) package is provided for convenience as well. To install it globally, execute `npm i -g gitinspector`.
### License ### License
gitinspector is licensed under the *GNU GPL v3*. The gitinspector logo is partly based on the git logo; based on the work of Jason Long. The logo is licensed under the *Creative Commons Attribution 3.0 Unported License*. gitinspector is licensed under the *GNU GPL v3*. The gitinspector logo is partly based on the git logo; based on the work of Jason Long. The logo is licensed under the *Creative Commons Attribution 3.0 Unported License*.

29
gitinspector.js Normal file
View file

@ -0,0 +1,29 @@
var PythonShell = require('python-shell');
var options = {
// The main python script is in the same directory as this file
scriptPath: __dirname,
// Get command line arguments, skipping the default node args:
// arg0 == node executable, arg1 == this file
args: process.argv.slice(2)
};
// Set encoding used by stdin etc manually. Without this, gitinspector may fail to run.
process.env.PYTHONIOENCODING = 'utf8';
// Start inspector
var inspector = new PythonShell('gitinspector.py', options);
// Handle stdout
inspector.on('message', function(message) {
console.log(message);
});
// Let the inspector run, catching any error at the end
inspector.end(function (err) {
if (err) {
throw err;
}
});

59
package.json Normal file
View file

@ -0,0 +1,59 @@
{
"name": "gitinspector",
"version": "0.5.0-dev",
"description": "Gitinspector is a statistical analysis tool for git repositories. The default analysis shows general statistics per author, which can be complemented with a timeline analysis that shows the workload and activity of each author. Under normal operation, it filters the results to only show statistics about a number of given extensions and by default only includes source files in the statistical analysis.",
"main": "gitinspector.py",
"directories": {
"doc": "docs",
"test": "tests"
},
"scripts": {
"clean": "rimraf **/*.pyc",
"prepublish": "npm run clean",
"release": "with-package git commit -am pkg.version && with-package git tag pkg.version && git push && npm publish && git push --tags",
"release:beta": "npm run release && npm run tag:beta",
"tag:beta": "with-package npm dist-tag add pkg.name@pkg.version beta",
"test": "echo \"Error: no test specified\" && exit 1"
},
"bin": {
"gitinspector": "gitinspector.py"
},
"repository": {
"type": "git",
"url": "git+https://github.com/ejwa/gitinspector.git"
},
"keywords": [
"git",
"statistics",
"stats"
],
"author": {
"name": "Adam Waldenberg",
"email": "adam.waldenberg@ejwa.se",
"url": "https://github.com/adam-waldenberg"
},
"contributors": [
"Agustín Cañas",
"Bart van Andel <bavanandel@gmail.com>",
"Bill Wang",
"Christian Kastner",
"Jiwon Kim",
"Kamila Chyla",
"Luca Motta",
"Philipp Nowak",
"Sergei Lomakov",
"Yannick Moy"
],
"license": "GPL-3.0",
"bugs": {
"url": "https://github.com/ejwa/gitinspector/issues"
},
"homepage": "https://github.com/ejwa/gitinspector#readme",
"devDependencies": {
"rimraf": "^2.5.4",
"with-package": "^0.2.0"
},
"dependencies": {
"python-shell": "^0.4.0"
}
}