mirror of
https://github.com/Llewellynvdm/conky.git
synced 2025-01-15 19:56:55 +00:00
Add blame ignore file (#2113)
* Add blame ignore file * Add a small utility script in extras to aid in maintainence of the file Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
This commit is contained in:
parent
dcbe40bf9c
commit
30b22b253e
59
.git-blame-ignore-revs
Normal file
59
.git-blame-ignore-revs
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
# Run this command to always ignore formatting commits in `git blame`
|
||||||
|
# git config blame.ignoreRevsFile .git-blame-ignore-revs
|
||||||
|
|
||||||
|
# Following commits only reformat/cleanup code and can be ignored when tracking
|
||||||
|
# down regressions and introduced bugs:
|
||||||
|
|
||||||
|
### Clarifying licensing (SVN@904)
|
||||||
|
# Updates license headers
|
||||||
|
27b4c8550cfae4fd0f2169962e33f4907a8e7d71
|
||||||
|
|
||||||
|
### Reformatted all code (SVN@1007)
|
||||||
|
3d26a4880e92df2c6004d85c1be458e35c6bfc3a
|
||||||
|
|
||||||
|
### outsource the whole template object machinery
|
||||||
|
# Moves template variables code from core.c into template.c
|
||||||
|
ff199355f66216600c4bdc6bec4743afe5b61470
|
||||||
|
|
||||||
|
### Add formatting/static analysis (#486)
|
||||||
|
# Large cleanup of codebase that fixed indentation in most files
|
||||||
|
eebc8c653b34eb946d23ceb913ed5d69cc22f10e
|
||||||
|
|
||||||
|
### Build improvements: clang-tidy, sonar, Dockerfile. (#488)
|
||||||
|
# Touches most files with minor changes (NULL -> nullptr)
|
||||||
|
4b92556fca9cbede3cbac4112f0a24b554390099
|
||||||
|
|
||||||
|
### Use clang-format
|
||||||
|
# Applies clang-format formatting
|
||||||
|
033508a93e6b0440ddbd2376c1e97b69e3308687
|
||||||
|
|
||||||
|
### Move X11 stuff from conky.cc to display-x11
|
||||||
|
281097a2a562ef58e5604a3519f739c715ba5410
|
||||||
|
|
||||||
|
### Get rid of silly `if (not ...` expressions (#713)
|
||||||
|
3a3092902ee8a5fda71996d264f981b98375c6a3
|
||||||
|
|
||||||
|
### Fix docbook2x handling.
|
||||||
|
# Large diff, affects only docbook2x which is no longer used
|
||||||
|
c6ad28074af3ec1bb4b3cc052df58062ce2a7c9b
|
||||||
|
|
||||||
|
### Fix MAINTAINER_MODE (-Wall -Werror -Wpedantic) (#714)
|
||||||
|
# Large diff, minor refactoring changes
|
||||||
|
9af6fa7903c5cb6f05614deac23373d4d0cf5959
|
||||||
|
|
||||||
|
### Refactor docs, make a new website
|
||||||
|
# Large diff, no changes affecting code
|
||||||
|
47ad3f9982baea4069a5c37ffdb2e1523e504f18
|
||||||
|
|
||||||
|
### Fix issues building without BUILD_ARGB flag
|
||||||
|
# Changes a lot of indentations in x11.cc
|
||||||
|
f6d42c5a69fed134a8b4ed0602c892f6f7b6e242
|
||||||
|
### Fix DependentOptions splitting arguments on spaces
|
||||||
|
# Again, indentation changes in x11.cc
|
||||||
|
cbebe447078e28c50957d568303f42d6b8aae126
|
||||||
|
|
||||||
|
### Cleanup build flags, global namespace and includes (#1841)
|
||||||
|
# Large refactor of global namespace
|
||||||
|
# Includes changes to functionality so it can't be ignored:
|
||||||
|
# color parsing, text alignment, output registration
|
||||||
|
# 6adf6b9dd4d368640bf7ef57f3e6199d83154d78
|
80
extras/git_ranked.py
Executable file
80
extras/git_ranked.py
Executable file
@ -0,0 +1,80 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
def get_first_number(s):
|
||||||
|
number = ""
|
||||||
|
found_digit = False
|
||||||
|
|
||||||
|
for char in s:
|
||||||
|
if char.isdigit():
|
||||||
|
number += char
|
||||||
|
found_digit = True
|
||||||
|
elif found_digit:
|
||||||
|
break
|
||||||
|
|
||||||
|
return int(number) if number else None
|
||||||
|
|
||||||
|
|
||||||
|
def git_log():
|
||||||
|
entries = []
|
||||||
|
try:
|
||||||
|
result = subprocess.run(
|
||||||
|
["git", "log", "--no-merges", "--shortstat", "--pretty=format:%H %n %s"],
|
||||||
|
stdout=subprocess.PIPE,
|
||||||
|
stderr=subprocess.PIPE,
|
||||||
|
text=True,
|
||||||
|
check=True,
|
||||||
|
)
|
||||||
|
entries = result.stdout.split("\n\n")
|
||||||
|
except subprocess.CalledProcessError as e:
|
||||||
|
print(f"Error running git command: {e.stderr}")
|
||||||
|
return []
|
||||||
|
|
||||||
|
commits = []
|
||||||
|
for line in entries:
|
||||||
|
info = line.split("\n")
|
||||||
|
changes = info[2].split(",")
|
||||||
|
files_changed = get_first_number(changes[0])
|
||||||
|
insertions = 0
|
||||||
|
deletions = 0
|
||||||
|
if len(changes) > 1:
|
||||||
|
if "insertions" in changes[1]:
|
||||||
|
insertions = get_first_number(changes[1])
|
||||||
|
elif "deletions" in changes[1]:
|
||||||
|
deletions = get_first_number(changes[1])
|
||||||
|
if len(changes) > 2:
|
||||||
|
if "insertions" in changes[2]:
|
||||||
|
insertions = get_first_number(changes[2])
|
||||||
|
elif "deletions" in changes[2]:
|
||||||
|
deletions = get_first_number(changes[2])
|
||||||
|
commit = {
|
||||||
|
"hash": info[0].strip(),
|
||||||
|
"message": info[1].strip(),
|
||||||
|
"changes": {
|
||||||
|
"files": files_changed,
|
||||||
|
"insertions": insertions,
|
||||||
|
"deletions": deletions,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
commits.append(commit)
|
||||||
|
|
||||||
|
return commits
|
||||||
|
|
||||||
|
def main():
|
||||||
|
log = git_log()
|
||||||
|
if len(log) == 0:
|
||||||
|
return
|
||||||
|
|
||||||
|
large_changes = sorted(log, key=lambda it: it["changes"]["insertions"] + it["changes"]["deletions"], reverse=True)
|
||||||
|
|
||||||
|
print(f"{'Hash':41} {'Insertions':11} {'Deletions':11} {'Message'}")
|
||||||
|
print("-" * 90)
|
||||||
|
for commit in large_changes:
|
||||||
|
print(
|
||||||
|
f"{commit['hash']:41} {commit["changes"]['insertions']:11} {commit["changes"]['deletions']:11} {commit['message']}"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
Loading…
Reference in New Issue
Block a user