skilleter-thingy 0.0.53__tar.gz → 0.0.55__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of skilleter-thingy might be problematic. Click here for more details.

Files changed (74) hide show
  1. {skilleter_thingy-0.0.53/skilleter_thingy.egg-info → skilleter_thingy-0.0.55}/PKG-INFO +1 -1
  2. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/pyproject.toml +1 -1
  3. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_parent.py +4 -2
  4. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_update.py +15 -8
  5. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_wt.py +4 -4
  6. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55/skilleter_thingy.egg-info}/PKG-INFO +1 -1
  7. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/LICENSE +0 -0
  8. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/README.md +0 -0
  9. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/setup.cfg +0 -0
  10. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/__init__.py +0 -0
  11. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/addpath.py +0 -0
  12. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/borger.py +0 -0
  13. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/box.py +0 -0
  14. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/console_colours.py +0 -0
  15. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/diskspacecheck.py +0 -0
  16. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/docker_purge.py +0 -0
  17. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/ffind.py +0 -0
  18. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/ggit.py +0 -0
  19. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/ggrep.py +0 -0
  20. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_br.py +0 -0
  21. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_ca.py +0 -0
  22. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_cleanup.py +0 -0
  23. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_co.py +0 -0
  24. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_common.py +0 -0
  25. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_hold.py +0 -0
  26. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_mr.py +0 -0
  27. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/git_review.py +0 -0
  28. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/gitcmp_helper.py +0 -0
  29. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/gitprompt.py +0 -0
  30. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/gl.py +0 -0
  31. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/gphotosync.py +0 -0
  32. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/linecount.py +0 -0
  33. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/moviemover.py +0 -0
  34. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/photodupe.py +0 -0
  35. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/phototidier.py +0 -0
  36. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/py_audit.py +0 -0
  37. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/readable.py +0 -0
  38. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/remdir.py +0 -0
  39. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/rmdupe.py +0 -0
  40. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/rpylint.py +0 -0
  41. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/splitpics.py +0 -0
  42. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/strreplace.py +0 -0
  43. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/sysmon.py +0 -0
  44. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/tfm.py +0 -0
  45. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/tfparse.py +0 -0
  46. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/__init__.py +0 -0
  47. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/colour.py +0 -0
  48. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/dc_curses.py +0 -0
  49. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/dc_defaults.py +0 -0
  50. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/dc_util.py +0 -0
  51. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/dircolors.py +0 -0
  52. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/docker.py +0 -0
  53. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/files.py +0 -0
  54. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/git.py +0 -0
  55. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/git2.py +0 -0
  56. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/gitlab.py +0 -0
  57. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/logger.py +0 -0
  58. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/path.py +0 -0
  59. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/popup.py +0 -0
  60. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/process.py +0 -0
  61. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/run.py +0 -0
  62. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/tfm_pane.py +0 -0
  63. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/tidy.py +0 -0
  64. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/thingy/venv_template.py +0 -0
  65. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/trimpath.py +0 -0
  66. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/venv_create.py +0 -0
  67. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/window_rename.py +0 -0
  68. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/xchmod.py +0 -0
  69. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy/yamlcheck.py +0 -0
  70. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy.egg-info/SOURCES.txt +0 -0
  71. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy.egg-info/dependency_links.txt +0 -0
  72. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy.egg-info/entry_points.txt +0 -0
  73. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy.egg-info/requires.txt +0 -0
  74. {skilleter_thingy-0.0.53 → skilleter_thingy-0.0.55}/skilleter_thingy.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: skilleter_thingy
3
- Version: 0.0.53
3
+ Version: 0.0.55
4
4
  Summary: A collection of useful utilities, mainly aimed at making Git more friendly
5
5
  Author-email: John Skilleter <john@skilleter.org.uk>
6
6
  Project-URL: Home, https://skilleter.org.uk
@@ -7,7 +7,7 @@ name = "skilleter_thingy"
7
7
 
8
8
  # Version must be incremented to install updated Thingy
9
9
 
10
- version = "0.0.53"
10
+ version = "0.0.55"
11
11
 
12
12
  authors = [
13
13
  {name="John Skilleter", email="john@skilleter.org.uk"},
@@ -18,10 +18,12 @@ import thingy.colour as colour
18
18
  def main():
19
19
  """ Main function """
20
20
 
21
+ current_branch = git.branch()
22
+
21
23
  parser = argparse.ArgumentParser(description='Attempt to determine the parent branch for the specified branch (defaulting to the current one)')
22
24
  parser.add_argument('-a', '--all', action='store_true', help='Include feature branches as possible parents')
23
25
  parser.add_argument('-v', '--verbose', action='store_true', help='Report verbose results (includes number of commits between branch and parent)')
24
- parser.add_argument('branch', action='store', nargs='?', type=str, default='HEAD', help='Branch, commit or commit')
26
+ parser.add_argument('branch', action='store', nargs='?', type=str, default=current_branch, help=f'Branch, commit or commit (defaults to current branch; {current_branch})')
25
27
 
26
28
  args = parser.parse_args()
27
29
 
@@ -53,7 +55,7 @@ def main():
53
55
  if len(parents) == 1:
54
56
  colour.write(f'Parent branch [BLUE:{parents[0]}] is [BLUE:{distance}] commits away from [BLUE:{args.branch}]')
55
57
  else:
56
- colour.write(f'Parent branches [BLUE:%s] are [BLUE:{distance}] commits away from [BLUE:{args.branch}[' % (', '.join(parents)))
58
+ colour.write(f'Parent branches [BLUE:%s] are [BLUE:{distance}] commits away from [BLUE:{args.branch}]' % (', '.join(parents)))
57
59
  else:
58
60
  print(', '.join(parents))
59
61
  else:
@@ -78,16 +78,20 @@ def branch_rebase(args, results, branch):
78
78
  colour.error(exc.msg)
79
79
  sys.exit(1)
80
80
 
81
- parents, _ = git.parents()
82
-
83
81
  # Ignore feature branches as potential alternative parents unless told otherwise
84
82
  # If they are the only possible parent(s) then we still consider them.
85
83
 
86
- if not args.all_parents:
87
- filtered_parents = [p for p in parents if not p.startswith('feature/')]
84
+ if args.all_parents:
85
+ parents, _ = git.parents()
86
+ else:
87
+ parents, _ = git.parents(ignore='feature/*' )
88
+
89
+ logging.debug('Probable parents of %s: %s', branch, parents)
90
+
91
+ if not parents:
92
+ parents, _ = git.parents()
88
93
 
89
- if filtered_parents:
90
- parents = filtered_parents
94
+ logging.debug('No non-feature-branch parents found for %s. Feature branch parents could be: %s', branch, parents)
91
95
 
92
96
  # Cheat - if we have multiple possible parents and one is 'develop', 'main' or 'master'
93
97
  # choose it.
@@ -184,10 +188,11 @@ def branch_pull(args, results, branch, fail=True):
184
188
  output = git.pull()
185
189
 
186
190
  colour.write(output, indent=4)
191
+
187
192
  if output[0] == 'Already up-to-date.':
188
193
  results['unchanged'].add(branch)
189
- else:
190
- results['pulled'].add(branch)
194
+
195
+ results['pulled'].add(branch)
191
196
 
192
197
  except git.GitError as exc:
193
198
  if exc.msg.startswith('There is no tracking information for the current branch.'):
@@ -345,6 +350,8 @@ def main():
345
350
  for entry in ('rebased', 'unchanged', 'pulled', 'failed', 'no-tracking'):
346
351
  results[entry] -= results['deleted']
347
352
 
353
+ results['pulled'] -= results['unchanged']
354
+
348
355
  if results['rebased']:
349
356
  report_branches('[BOLD:The following branches have been rebased:]', results['rebased'])
350
357
 
@@ -39,9 +39,9 @@ def main():
39
39
 
40
40
  # Try to get the current working tree
41
41
 
42
- git_dir = pygit2.discover_repository(args.dir)
43
-
44
- if not git_dir:
42
+ try:
43
+ git_dir = pygit2.Repository(args.dir).workdir
44
+ except pygit2.GitError:
45
45
  print(f'Directory {args.dir} is not in a Git working tree')
46
46
  sys.exit(2)
47
47
 
@@ -57,7 +57,7 @@ def main():
57
57
  if os.path.samefile(working_tree, current_directory):
58
58
  os.chdir('..')
59
59
 
60
- working_tree = pygit2.discover_repository(current_directory)
60
+ working_tree = pygit2.Repository(current_directory).workdir
61
61
 
62
62
  # If we are also looking for a multi-repo control file or directory, and haven't
63
63
  # found the git working tree root scan up the tree until we find one.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: skilleter_thingy
3
- Version: 0.0.53
3
+ Version: 0.0.55
4
4
  Summary: A collection of useful utilities, mainly aimed at making Git more friendly
5
5
  Author-email: John Skilleter <john@skilleter.org.uk>
6
6
  Project-URL: Home, https://skilleter.org.uk