skilleter-thingy 0.2.0__py3-none-any.whl → 0.2.3__py3-none-any.whl
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.
- skilleter_thingy/git_retag.sync-conflict-20250928-192600-TVSLRWK.py +54 -0
- {skilleter_thingy-0.2.0.dist-info → skilleter_thingy-0.2.3.dist-info}/METADATA +1 -1
- skilleter_thingy-0.2.3.dist-info/PKG-INFO 2 +193 -0
- {skilleter_thingy-0.2.0.dist-info → skilleter_thingy-0.2.3.dist-info}/RECORD +8 -6
- {skilleter_thingy-0.2.0.dist-info → skilleter_thingy-0.2.3.dist-info}/WHEEL +0 -0
- {skilleter_thingy-0.2.0.dist-info → skilleter_thingy-0.2.3.dist-info}/entry_points.txt +0 -0
- {skilleter_thingy-0.2.0.dist-info → skilleter_thingy-0.2.3.dist-info}/licenses/LICENSE +0 -0
- {skilleter_thingy-0.2.0.dist-info → skilleter_thingy-0.2.3.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
#! /usr/bin/env python3
|
|
2
|
+
|
|
3
|
+
################################################################################
|
|
4
|
+
""" Apply or update a tag, optionally updating it on the remote as well.
|
|
5
|
+
|
|
6
|
+
Copyright (C) 2025 John Skilleter
|
|
7
|
+
|
|
8
|
+
Licence: GPL v3 or later
|
|
9
|
+
"""
|
|
10
|
+
################################################################################
|
|
11
|
+
|
|
12
|
+
import sys
|
|
13
|
+
import argparse
|
|
14
|
+
|
|
15
|
+
import thingy.git2 as git
|
|
16
|
+
|
|
17
|
+
################################################################################
|
|
18
|
+
|
|
19
|
+
def main():
|
|
20
|
+
""" Main function """
|
|
21
|
+
|
|
22
|
+
# Command line parameters
|
|
23
|
+
|
|
24
|
+
parser = argparse.ArgumentParser(description='Apply or update a tag, optionally updating it on the remote as well.')
|
|
25
|
+
parser.add_argument('--push', '-p', action='store_true', help='Push the tag to the remote')
|
|
26
|
+
parser.add_argument('tag', nargs=1, help='The tag')
|
|
27
|
+
|
|
28
|
+
args = parser.parse_args()
|
|
29
|
+
|
|
30
|
+
# Delete the tag if it currently exists, optionally pushing the deletion
|
|
31
|
+
|
|
32
|
+
if args.tag in git.tags():
|
|
33
|
+
git.tag_delete(args.tag, push=args.push)
|
|
34
|
+
|
|
35
|
+
# Apply the tag
|
|
36
|
+
|
|
37
|
+
git.tag_apply(args.tag, push=args.push)
|
|
38
|
+
|
|
39
|
+
################################################################################
|
|
40
|
+
|
|
41
|
+
def git_retag():
|
|
42
|
+
"""Entry point"""
|
|
43
|
+
|
|
44
|
+
try:
|
|
45
|
+
main()
|
|
46
|
+
except KeyboardInterrupt:
|
|
47
|
+
sys.exit(1)
|
|
48
|
+
except BrokenPipeError:
|
|
49
|
+
sys.exit(2)
|
|
50
|
+
|
|
51
|
+
################################################################################
|
|
52
|
+
|
|
53
|
+
if __name__ == '__main__':
|
|
54
|
+
git_retag()
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: skilleter_thingy
|
|
3
|
+
Version: 0.0.49
|
|
4
|
+
Summary: A collection of useful utilities, mainly aimed at making Git more friendly
|
|
5
|
+
Author-email: John Skilleter <john@skilleter.org.uk>
|
|
6
|
+
Project-URL: Home, https://skilleter.org.uk
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
|
|
9
|
+
Classifier: Operating System :: OS Independent
|
|
10
|
+
Requires-Python: >=3.6
|
|
11
|
+
Description-Content-Type: text/markdown
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Requires-Dist: imagehash
|
|
14
|
+
Requires-Dist: inotify
|
|
15
|
+
Requires-Dist: pillow
|
|
16
|
+
Requires-Dist: psutil
|
|
17
|
+
Requires-Dist: pyaml
|
|
18
|
+
Requires-Dist: pygit2
|
|
19
|
+
Requires-Dist: python-dateutil
|
|
20
|
+
Requires-Dist: requests
|
|
21
|
+
|
|
22
|
+
# Thingy
|
|
23
|
+
|
|
24
|
+
Licence: GPL v3
|
|
25
|
+
|
|
26
|
+
Author: John Skilleter v0.99
|
|
27
|
+
|
|
28
|
+
Collection of shell utilities and configuration stuff for Linux and MacOS. Untested on other operating systems.
|
|
29
|
+
|
|
30
|
+
Permanently (for the forseeable future!) in a beta stage - usable, with a few rough edges, and probably with bugs when used in way I'm not expecting!
|
|
31
|
+
|
|
32
|
+
The following commands are documented in detail in the help output that can be displayed by running the command with the '--help' option.
|
|
33
|
+
|
|
34
|
+
This README just contains a summary of the functionality of each command.
|
|
35
|
+
|
|
36
|
+
# General Commands
|
|
37
|
+
|
|
38
|
+
## addpath
|
|
39
|
+
|
|
40
|
+
Update a $PATH-type variable by adding or removing entries.
|
|
41
|
+
|
|
42
|
+
## borger
|
|
43
|
+
|
|
44
|
+
Wrapper for the borg backup utility to make it easier to use with a fixed set of options.
|
|
45
|
+
|
|
46
|
+
## console-colours
|
|
47
|
+
|
|
48
|
+
Display all available colours in the console.
|
|
49
|
+
|
|
50
|
+
## diskspacecheck
|
|
51
|
+
|
|
52
|
+
Check how much free space is available on all filesystems, ignoring read-only filesystems, /dev and tmpfs.
|
|
53
|
+
|
|
54
|
+
Issue a warning if any are above 90% used.
|
|
55
|
+
|
|
56
|
+
## docker-purge
|
|
57
|
+
|
|
58
|
+
Stop or kill docker instances and/or remove docker images.
|
|
59
|
+
|
|
60
|
+
## ffind
|
|
61
|
+
|
|
62
|
+
Simple file find utility
|
|
63
|
+
|
|
64
|
+
Implements the functionality of the find command that is regularly used in a simpler fashion and ignores all the options that nobody ever uses.
|
|
65
|
+
|
|
66
|
+
## gl
|
|
67
|
+
|
|
68
|
+
### gphotosync
|
|
69
|
+
|
|
70
|
+
Utility for syncing photos from Google Photos to local storage
|
|
71
|
+
|
|
72
|
+
## linecount
|
|
73
|
+
|
|
74
|
+
Count lines of code in a directory tree organised by file type.
|
|
75
|
+
|
|
76
|
+
## moviemover
|
|
77
|
+
|
|
78
|
+
Search for files matching a wildcard in a directory tree and move them to an equivalent location in a different tree
|
|
79
|
+
|
|
80
|
+
## phototidier
|
|
81
|
+
|
|
82
|
+
Perform various tidying operations on a directory full of photos:
|
|
83
|
+
|
|
84
|
+
* Remove leading '$' and '_' from filenames
|
|
85
|
+
* Move files in hidden directories up 1 level
|
|
86
|
+
* If the EXIF data in a photo indicates that it was taken on date that doesn't match the name of the directory it is stored in (in YYYY-MM-DD format) then it is moved to the correct directory, creating it if necessary.
|
|
87
|
+
|
|
88
|
+
All move/rename operations are carried out safely with the file being moved having
|
|
89
|
+
a numeric suffix added to the name if it conflicts with an existing file.
|
|
90
|
+
|
|
91
|
+
## photodupe
|
|
92
|
+
|
|
93
|
+
## py-audit
|
|
94
|
+
|
|
95
|
+
Query api.osv.dev to determine whether a specified version of a particular Python package is subject to known security vulnerabilities
|
|
96
|
+
|
|
97
|
+
## readable
|
|
98
|
+
|
|
99
|
+
Pipe for converting colour combinations to make them readable on a light background
|
|
100
|
+
|
|
101
|
+
## remdir
|
|
102
|
+
|
|
103
|
+
Recursively delete empty directories
|
|
104
|
+
|
|
105
|
+
## rmdupe
|
|
106
|
+
|
|
107
|
+
Search for duplicate files
|
|
108
|
+
|
|
109
|
+
## rpylint
|
|
110
|
+
|
|
111
|
+
Run pylint on all the Python source files in the current tree
|
|
112
|
+
|
|
113
|
+
## s3-sync
|
|
114
|
+
|
|
115
|
+
Synchronise files from S3 to local storage.
|
|
116
|
+
|
|
117
|
+
## splitpics
|
|
118
|
+
|
|
119
|
+
Copy a directory full of pictures to a destination, creating subdiretories with a fixed number of pictures in each in the destination directory for use with FAT filesystems and digital photo frames.
|
|
120
|
+
|
|
121
|
+
## strreplace
|
|
122
|
+
|
|
123
|
+
Simple search and replace utility for those times when trying to escape characters in a regexp to use sed is more hassle than it is worth.
|
|
124
|
+
|
|
125
|
+
## sysmon
|
|
126
|
+
|
|
127
|
+
## tfm
|
|
128
|
+
|
|
129
|
+
Console-based file-manager, similar to Midnight Commander but better.
|
|
130
|
+
|
|
131
|
+
## tfparse
|
|
132
|
+
|
|
133
|
+
Read JSON Terraform output and convert back to human-readable text
|
|
134
|
+
This allows multiple errors and warnings to be reported as there's
|
|
135
|
+
no way of doing this directly from Terraform
|
|
136
|
+
|
|
137
|
+
## trimpath
|
|
138
|
+
|
|
139
|
+
Intelligently trim a path to fit a given width (used by gitprompt)
|
|
140
|
+
|
|
141
|
+
## window-rename
|
|
142
|
+
|
|
143
|
+
## xchmod
|
|
144
|
+
|
|
145
|
+
WIP: Command to run chmod only on files that need it (only modifies files that don't have the required permissions already).
|
|
146
|
+
|
|
147
|
+
Currently implements a *very* restricted set of functionality.
|
|
148
|
+
|
|
149
|
+
## yamlcheck
|
|
150
|
+
|
|
151
|
+
YAML validator - checks that a file is valid YAML (use yamllint to verify that it is nicely-formatted YAML).
|
|
152
|
+
|
|
153
|
+
# Git Utilities
|
|
154
|
+
|
|
155
|
+
## ggit
|
|
156
|
+
|
|
157
|
+
Run a git command in all repos under the current directory
|
|
158
|
+
|
|
159
|
+
## ggrep
|
|
160
|
+
|
|
161
|
+
Run 'git grep' in all repos under the current directory
|
|
162
|
+
|
|
163
|
+
## gitprompt
|
|
164
|
+
|
|
165
|
+
Output a string containing colour-coded shell nesting level, current directory and git working tree status (used in the shell prompt).
|
|
166
|
+
|
|
167
|
+
## git ca
|
|
168
|
+
|
|
169
|
+
Improved version of 'git commit --amend'. Updates files that are already in the commit and, optionally, adds and commits additional files.
|
|
170
|
+
|
|
171
|
+
## git cleanup
|
|
172
|
+
|
|
173
|
+
List or delete branches that have already been merged and delete tracking branches that are no longer on ther remote.
|
|
174
|
+
|
|
175
|
+
## git co
|
|
176
|
+
|
|
177
|
+
## git mr
|
|
178
|
+
|
|
179
|
+
## git parent
|
|
180
|
+
|
|
181
|
+
## git update
|
|
182
|
+
|
|
183
|
+
Update the repo from the remote, rebase branches against their parents, optionally run git cleanup
|
|
184
|
+
|
|
185
|
+
## git wt
|
|
186
|
+
|
|
187
|
+
Output the top level directory of the git working tree or return an error if we are not in a git working tree.
|
|
188
|
+
|
|
189
|
+
## git review
|
|
190
|
+
|
|
191
|
+
## venv-create
|
|
192
|
+
|
|
193
|
+
Create a script to create/update a virtual environment and run a python script in it.
|
|
@@ -14,6 +14,7 @@ skilleter_thingy/git_hold.py,sha256=EkIHzubG7BsR-Vv-UCj8rl-9Hx7ft31t7IEf1nGW6WE,
|
|
|
14
14
|
skilleter_thingy/git_mr.py,sha256=g33FaRtJTbIQI0tfXv_a042YpGwtbg5fKw072aqjAdw,3086
|
|
15
15
|
skilleter_thingy/git_parent.py,sha256=s0HYTuVlEHLQCI9ZQ6EcR_9rSU9Ps3U2oSUABLX-YQI,2800
|
|
16
16
|
skilleter_thingy/git_retag.py,sha256=_e-oODX4mMV5o3OXSBlSYeqCCx-S4EWHEmu6Az8ABgY,1450
|
|
17
|
+
skilleter_thingy/git_retag.sync-conflict-20250928-192600-TVSLRWK.py,sha256=70rbybb1M2sCUblmD2-iLVG0xdFq-Bl5HG0U1LRnAvs,1442
|
|
17
18
|
skilleter_thingy/git_review.py,sha256=Z_e0wyQJ2AzOSy5cPI3jmAWystpJbHH4ygENjFagepo,52576
|
|
18
19
|
skilleter_thingy/git_update.py,sha256=Z3p3E33ZJ2DVa107UzaFR9V8LXADRuHjJL8TX3IhEa4,14348
|
|
19
20
|
skilleter_thingy/git_wt.py,sha256=93mbh8AKej8_y3aL6mVxKjKLEqMczaDtHoYcWf70eU0,2231
|
|
@@ -52,9 +53,10 @@ skilleter_thingy/thingy/run.py,sha256=6SNKWF01fSxzB10GMU9ajraXYZqAL1w0PXkqjJdr1U
|
|
|
52
53
|
skilleter_thingy/thingy/tfm_pane.py,sha256=XTTpSm71CyQyGmlVLuCthioOwech0jhUiFUXb-chS_Q,19792
|
|
53
54
|
skilleter_thingy/thingy/tidy.py,sha256=AQ2RawsZJg6WHrgayi_ZptFL9occ7suSdCHbU3P-cys,5971
|
|
54
55
|
skilleter_thingy/thingy/venv_template.py,sha256=SsVNvSwojd8NnFeQaZPCRQYTNdwJRplpZpygbUEXRnY,1015
|
|
55
|
-
skilleter_thingy-0.2.
|
|
56
|
-
skilleter_thingy-0.2.
|
|
57
|
-
skilleter_thingy-0.2.
|
|
58
|
-
skilleter_thingy-0.2.
|
|
59
|
-
skilleter_thingy-0.2.
|
|
60
|
-
skilleter_thingy-0.2.
|
|
56
|
+
skilleter_thingy-0.2.3.dist-info/licenses/LICENSE,sha256=ljOS4DjXvqEo5VzGfdaRwgRZPbNScGBmfwyC8PChvmQ,32422
|
|
57
|
+
skilleter_thingy-0.2.3.dist-info/METADATA,sha256=nHx-ihEZhMQJLSWOSoWPzebuTnNWMe-euOyqJ3R5x6g,28913
|
|
58
|
+
skilleter_thingy-0.2.3.dist-info/PKG-INFO 2,sha256=BryF-1KGwXobPiiN60EmDKuqAtIBSPadlgmJ72xZhMk,5313
|
|
59
|
+
skilleter_thingy-0.2.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
60
|
+
skilleter_thingy-0.2.3.dist-info/entry_points.txt,sha256=MTNWf8jOx8Fy3tSwVLCZPlEyzlDF36odw-IN-cSefP8,1784
|
|
61
|
+
skilleter_thingy-0.2.3.dist-info/top_level.txt,sha256=8-JhgToBBiWURunmvfpSxEvNkDHQQ7r25-aBXtZv61g,17
|
|
62
|
+
skilleter_thingy-0.2.3.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|