Skip to content

Commit 3a44175

Browse files
Initial commit
0 parents  commit 3a44175

17 files changed

Lines changed: 1484 additions & 0 deletions

.gitignore

Lines changed: 255 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,255 @@
1+
.idea
2+
3+
# Created by https://www.toptal.com/developers/gitignore/api/python,pycharm,code
4+
# Edit at https://www.toptal.com/developers/gitignore?templates=python,pycharm,code
5+
6+
### Code ###
7+
.vscode/*
8+
!.vscode/tasks.json
9+
!.vscode/launch.json
10+
*.code-workspace
11+
12+
### PyCharm ###
13+
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
14+
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
15+
16+
# User-specific stuff
17+
.idea/**/workspace.xml
18+
.idea/**/tasks.xml
19+
.idea/**/usage.statistics.xml
20+
.idea/**/dictionaries
21+
.idea/**/shelf
22+
23+
# Generated files
24+
.idea/**/contentModel.xml
25+
26+
# Sensitive or high-churn files
27+
.idea/**/dataSources/
28+
.idea/**/dataSources.ids
29+
.idea/**/dataSources.local.xml
30+
.idea/**/sqlDataSources.xml
31+
.idea/**/dynamic.xml
32+
.idea/**/uiDesigner.xml
33+
.idea/**/dbnavigator.xml
34+
35+
# Gradle
36+
.idea/**/gradle.xml
37+
.idea/**/libraries
38+
39+
# Gradle and Maven with auto-import
40+
# When using Gradle or Maven with auto-import, you should exclude module files,
41+
# since they will be recreated, and may cause churn. Uncomment if using
42+
# auto-import.
43+
# .idea/artifacts
44+
# .idea/compiler.xml
45+
# .idea/jarRepositories.xml
46+
# .idea/modules.xml
47+
# .idea/*.iml
48+
# .idea/modules
49+
# *.iml
50+
# *.ipr
51+
52+
# CMake
53+
cmake-build-*/
54+
55+
# Mongo Explorer plugin
56+
.idea/**/mongoSettings.xml
57+
58+
# File-based project format
59+
*.iws
60+
61+
# IntelliJ
62+
out/
63+
64+
# mpeltonen/sbt-idea plugin
65+
.idea_modules/
66+
67+
# JIRA plugin
68+
atlassian-ide-plugin.xml
69+
70+
# Cursive Clojure plugin
71+
.idea/replstate.xml
72+
73+
# Crashlytics plugin (for Android Studio and IntelliJ)
74+
com_crashlytics_export_strings.xml
75+
crashlytics.properties
76+
crashlytics-build.properties
77+
fabric.properties
78+
79+
# Editor-based Rest Client
80+
.idea/httpRequests
81+
82+
# Android studio 3.1+ serialized cache file
83+
.idea/caches/build_file_checksums.ser
84+
85+
### PyCharm Patch ###
86+
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
87+
88+
# *.iml
89+
# modules.xml
90+
# .idea/misc.xml
91+
# *.ipr
92+
93+
# Sonarlint plugin
94+
# https://plugins.jetbrains.com/plugin/7973-sonarlint
95+
.idea/**/sonarlint/
96+
97+
# SonarQube Plugin
98+
# https://plugins.jetbrains.com/plugin/7238-sonarqube-community-plugin
99+
.idea/**/sonarIssues.xml
100+
101+
# Markdown Navigator plugin
102+
# https://plugins.jetbrains.com/plugin/7896-markdown-navigator-enhanced
103+
.idea/**/markdown-navigator.xml
104+
.idea/**/markdown-navigator-enh.xml
105+
.idea/**/markdown-navigator/
106+
107+
# Cache file creation bug
108+
# See https://youtrack.jetbrains.com/issue/JBR-2257
109+
.idea/$CACHE_FILE$
110+
111+
# CodeStream plugin
112+
# https://plugins.jetbrains.com/plugin/12206-codestream
113+
.idea/codestream.xml
114+
115+
### Python ###
116+
# Byte-compiled / optimized / DLL files
117+
__pycache__/
118+
*.py[cod]
119+
*$py.class
120+
121+
# C extensions
122+
*.so
123+
124+
# Distribution / packaging
125+
.Python
126+
build/
127+
develop-eggs/
128+
dist/
129+
downloads/
130+
eggs/
131+
.eggs/
132+
lib/
133+
lib64/
134+
parts/
135+
sdist/
136+
var/
137+
wheels/
138+
pip-wheel-metadata/
139+
share/python-wheels/
140+
*.egg-info/
141+
.installed.cfg
142+
*.egg
143+
MANIFEST
144+
145+
# PyInstaller
146+
# Usually these files are written by a python script from a template
147+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
148+
*.manifest
149+
*.spec
150+
151+
# Installer logs
152+
pip-log.txt
153+
pip-delete-this-directory.txt
154+
155+
# Unit test / coverage reports
156+
htmlcov/
157+
.tox/
158+
.nox/
159+
.coverage
160+
.coverage.*
161+
.cache
162+
nosetests.xml
163+
coverage.xml
164+
*.cover
165+
*.py,cover
166+
.hypothesis/
167+
.pytest_cache/
168+
pytestdebug.log
169+
170+
# Translations
171+
*.mo
172+
*.pot
173+
174+
# Django stuff:
175+
*.log
176+
local_settings.py
177+
db.sqlite3
178+
db.sqlite3-journal
179+
180+
# Flask stuff:
181+
instance/
182+
.webassets-cache
183+
184+
# Scrapy stuff:
185+
.scrapy
186+
187+
# Sphinx documentation
188+
docs/_build/
189+
doc/_build/
190+
191+
# PyBuilder
192+
target/
193+
194+
# Jupyter Notebook
195+
.ipynb_checkpoints
196+
197+
# IPython
198+
profile_default/
199+
ipython_config.py
200+
201+
# pyenv
202+
.python-version
203+
204+
# pipenv
205+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
206+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
207+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
208+
# install all needed dependencies.
209+
#Pipfile.lock
210+
211+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
212+
__pypackages__/
213+
214+
# Celery stuff
215+
celerybeat-schedule
216+
celerybeat.pid
217+
218+
# SageMath parsed files
219+
*.sage.py
220+
221+
# Environments
222+
.env
223+
.venv
224+
env/
225+
venv/
226+
ENV/
227+
env.bak/
228+
venv.bak/
229+
pythonenv*
230+
231+
# Spyder project settings
232+
.spyderproject
233+
.spyproject
234+
235+
# Rope project settings
236+
.ropeproject
237+
238+
# mkdocs documentation
239+
/site
240+
241+
# mypy
242+
.mypy_cache/
243+
.dmypy.json
244+
dmypy.json
245+
246+
# Pyre type checker
247+
.pyre/
248+
249+
# pytype static type analyzer
250+
.pytype/
251+
252+
# profiling data
253+
.prof
254+
255+
# End of https://www.toptal.com/developers/gitignore/api/python,pycharm,code

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2020 TheGreatCabbage
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

gitprof/__init__.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# MIT License
2+
#
3+
# Copyright (c) 2020 Sam McCormack
4+
#
5+
# Permission is hereby granted, free of charge, to any person obtaining a copy
6+
# of this software and associated documentation files (the "Software"), to deal
7+
# in the Software without restriction, including without limitation the rights
8+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
# copies of the Software, and to permit persons to whom the Software is
10+
# furnished to do so, subject to the following conditions:
11+
#
12+
# The above copyright notice and this permission notice shall be included in all
13+
# copies or substantial portions of the Software.
14+
#
15+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
# SOFTWARE.
22+
__version__ = "1.0.0"
23+
24+
from gitprof.cli import root
25+
26+
27+
def init():
28+
"""
29+
Entry-point when gitprof is called as a standalone executable.
30+
"""
31+
root()

gitprof/__main__.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# MIT License
2+
#
3+
# Copyright (c) 2020 Sam McCormack
4+
#
5+
# Permission is hereby granted, free of charge, to any person obtaining a copy
6+
# of this software and associated documentation files (the "Software"), to deal
7+
# in the Software without restriction, including without limitation the rights
8+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
# copies of the Software, and to permit persons to whom the Software is
10+
# furnished to do so, subject to the following conditions:
11+
#
12+
# The above copyright notice and this permission notice shall be included in all
13+
# copies or substantial portions of the Software.
14+
#
15+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
# SOFTWARE.
22+
from gitprof.cli import root
23+
24+
if __name__ == "__main__":
25+
root()

gitprof/cli/__init__.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# MIT License
2+
#
3+
# Copyright (c) 2020 Sam McCormack
4+
#
5+
# Permission is hereby granted, free of charge, to any person obtaining a copy
6+
# of this software and associated documentation files (the "Software"), to deal
7+
# in the Software without restriction, including without limitation the rights
8+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
# copies of the Software, and to permit persons to whom the Software is
10+
# furnished to do so, subject to the following conditions:
11+
#
12+
# The above copyright notice and this permission notice shall be included in all
13+
# copies or substantial portions of the Software.
14+
#
15+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
# SOFTWARE.
22+
import click
23+
24+
25+
@click.group()
26+
def root():
27+
pass
28+
29+
30+
from gitprof.cli.clone import clone
31+
from gitprof.cli.profile import profile
32+
from gitprof.cli.config import config
33+
34+
root.add_command(clone)
35+
root.add_command(profile)
36+
root.add_command(config)

0 commit comments

Comments
 (0)