skilleter-thingy 0.0.45__tar.gz → 0.0.47__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 (75) hide show
  1. {skilleter_thingy-0.0.45/skilleter_thingy.egg-info → skilleter_thingy-0.0.47}/PKG-INFO +1 -1
  2. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/pyproject.toml +1 -1
  3. skilleter_thingy-0.0.47/skilleter_thingy/box.py +33 -0
  4. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/readable.py +7 -0
  5. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/tidy.py +10 -10
  6. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/venv_create.py +7 -16
  7. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47/skilleter_thingy.egg-info}/PKG-INFO +1 -1
  8. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy.egg-info/SOURCES.txt +3 -3
  9. skilleter_thingy-0.0.45/skilleter_thingy/thingy/fish_venv.py +0 -41
  10. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/LICENSE +0 -0
  11. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/README.md +0 -0
  12. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/setup.cfg +0 -0
  13. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/__init__.py +0 -0
  14. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/addpath.py +0 -0
  15. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/borger.py +0 -0
  16. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/console_colours.py +0 -0
  17. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/diskspacecheck.py +0 -0
  18. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/docker_purge.py +0 -0
  19. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/ffind.py +0 -0
  20. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/ggit.py +0 -0
  21. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/ggrep.py +0 -0
  22. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_br.py +0 -0
  23. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_ca.py +0 -0
  24. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_cleanup.py +0 -0
  25. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_co.py +0 -0
  26. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_common.py +0 -0
  27. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_hold.py +0 -0
  28. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_mr.py +0 -0
  29. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_parent.py +0 -0
  30. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_review.py +0 -0
  31. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_update.py +0 -0
  32. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/git_wt.py +0 -0
  33. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/gitcmp_helper.py +0 -0
  34. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/gitprompt.py +0 -0
  35. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/gl.py +0 -0
  36. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/gphotosync.py +0 -0
  37. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/linecount.py +0 -0
  38. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/moviemover.py +0 -0
  39. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/photodupe.py +0 -0
  40. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/phototidier.py +0 -0
  41. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/py_audit.py +0 -0
  42. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/remdir.py +0 -0
  43. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/rmdupe.py +0 -0
  44. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/rpylint.py +0 -0
  45. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/splitpics.py +0 -0
  46. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/strreplace.py +0 -0
  47. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/sysmon.py +0 -0
  48. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/tfm.py +0 -0
  49. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/tfparse.py +0 -0
  50. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/__init__.py +0 -0
  51. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/colour.py +0 -0
  52. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/dc_curses.py +0 -0
  53. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/dc_defaults.py +0 -0
  54. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/dc_util.py +0 -0
  55. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/dircolors.py +0 -0
  56. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/docker.py +0 -0
  57. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/files.py +0 -0
  58. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/git.py +0 -0
  59. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/git2.py +0 -0
  60. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/gitlab.py +0 -0
  61. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/logger.py +0 -0
  62. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/path.py +0 -0
  63. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/popup.py +0 -0
  64. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/process.py +0 -0
  65. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/run.py +0 -0
  66. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/thingy/tfm_pane.py +0 -0
  67. /skilleter_thingy-0.0.45/skilleter_thingy/thingy/bash_venv.py → /skilleter_thingy-0.0.47/skilleter_thingy/thingy/venv_template.py +0 -0
  68. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/trimpath.py +0 -0
  69. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/window_rename.py +0 -0
  70. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/xchmod.py +0 -0
  71. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy/yamlcheck.py +0 -0
  72. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy.egg-info/dependency_links.txt +0 -0
  73. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy.egg-info/entry_points.txt +0 -0
  74. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/skilleter_thingy.egg-info/requires.txt +0 -0
  75. {skilleter_thingy-0.0.45 → skilleter_thingy-0.0.47}/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.45
3
+ Version: 0.0.47
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.45"
10
+ version = "0.0.47"
11
11
 
12
12
  authors = [
13
13
  {name="John Skilleter", email="john@skilleter.org.uk"},
@@ -0,0 +1,33 @@
1
+ #! /usr/bin/env python3
2
+
3
+ ################################################################################
4
+ """ Draw a box with text in
5
+ """
6
+ ################################################################################
7
+
8
+ import os
9
+ import sys
10
+ import argparse
11
+ import thingy.colour as colour
12
+
13
+ ################################################################################
14
+
15
+ def main():
16
+ """The guts"""
17
+ return
18
+ ################################################################################
19
+
20
+ def box():
21
+ """Entry point"""
22
+
23
+ try:
24
+ main()
25
+ except KeyboardInterrupt:
26
+ sys.exit(1)
27
+ except BrokenPipeError:
28
+ sys.exit(2)
29
+
30
+ ################################################################################
31
+
32
+ if __name__ == '__main__':
33
+ box()
@@ -39,6 +39,11 @@ TF_UNCHANGED_TAG = re.compile(r' +".*" += +".*"')
39
39
  TF_OBJECTS_CHANGED = 'Note: Objects have changed outside of Terraform'
40
40
  TF_UNCHANGED_HIDDEN = re.compile(r' +# \(\d+ unchanged (?:attribute|block|element)s? hidden\)')
41
41
 
42
+ TF_MISC_REGEX = \
43
+ [
44
+ { 'regex': re.compile(r'(Read complete after) \d+s'), 'replace': r'\1 {SECONDS}'}
45
+ ]
46
+
42
47
  ################################################################################
43
48
 
44
49
  def parse_command_line():
@@ -146,6 +151,8 @@ def cleanfile(args, infile, outfile):
146
151
  # Do things with Terraform log data
147
152
 
148
153
  if args.terraform:
154
+ clean = tidy.regex_replace(clean, TF_MISC_REGEX)
155
+
149
156
  if TF_HAS_CHANGED.fullmatch(clean):
150
157
  ignore_until = ' }'
151
158
 
@@ -59,30 +59,30 @@ RE_TIME = [
59
59
 
60
60
  {'regex': re.compile(r'[0-9]([.][0-9]*)*\s*(second[s]?)'), 'replace': '{ELAPSED}'},
61
61
 
62
- {'find': '{DATE} {TIME}', 'replace': '{DATE+TIME}'},
62
+ {'find': r'{DATE} {TIME}', 'replace': '{DATE+TIME}'},
63
63
  ]
64
64
 
65
65
  # SHA values
66
66
 
67
67
  RE_SHA256 = [
68
- {'regex': re.compile('[0-9a-f]{64}'), 'replace': '{SHA256}'},
68
+ {'regex': re.compile(r'[0-9a-f]{64}'), 'replace': '{SHA256}'},
69
69
  ]
70
70
 
71
71
  RE_SHA1 = [
72
- {'regex': re.compile('[0-9a-f]{40}'), 'replace': '{SHA1}'},
72
+ {'regex': re.compile(r'[0-9a-f]{40}'), 'replace': '{SHA1}'},
73
73
  ]
74
74
 
75
75
  # AWS ids
76
76
 
77
77
  RE_AWS = \
78
78
  [
79
- {'regex': re.compile('eni-0[0-9a-f]{16}'), 'replace': '{ENI-ID}'},
80
- {'regex': re.compile('ami-0[0-9a-f]{16}'), 'replace': '{AMI-ID}'},
81
- {'regex': re.compile('snap-0[0-9a-f]{16}'), 'replace': '{AMI-SNAP}'},
82
- {'regex': re.compile('vol-0[0-9a-f]{16}'), 'replace': '{AMI-VOL}'},
83
- {'regex': re.compile('sir-[0-9a-z]{8}'), 'replace': '{SPOT-INSTANCE}'},
84
- {'regex': re.compile('i-0[0-9a-f]{16}'), 'replace': '{EC2-ID}'},
85
- {'regex': re.compile('request id: [0-0a-f]{8}-[0-0a-f]{4}-[0-0a-f]{4}-[0-0a-f]{4}-[0-0a-f]{12}'), 'replace': 'request id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'},
79
+ {'regex': re.compile(r'eni-0[0-9a-f]{16}'), 'replace': '{ENI-ID}'},
80
+ {'regex': re.compile(r'ami-0[0-9a-f]{16}'), 'replace': '{AMI-ID}'},
81
+ {'regex': re.compile(r'snap-0[0-9a-f]{16}'), 'replace': '{AMI-SNAP}'},
82
+ {'regex': re.compile(r'vol-0[0-9a-f]{16}'), 'replace': '{AMI-VOL}'},
83
+ {'regex': re.compile(r'sir-[0-9a-z]{8}'), 'replace': '{SPOT-INSTANCE}'},
84
+ {'regex': re.compile(r'i-0[0-9a-f]{16}'), 'replace': '{EC2-ID}'},
85
+ {'regex': re.compile(r'request id: [0-0a-f]{8}-[0-0a-f]{4}-[0-0a-f]{4}-[0-0a-f]{4}-[0-0a-f]{12}'), 'replace': 'request id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'},
86
86
  ]
87
87
 
88
88
  ################################################################################
@@ -4,8 +4,7 @@ import os
4
4
  import stat
5
5
  import argparse
6
6
 
7
- import thingy.bash_venv as bash_venv
8
- import thingy.fish_venv as fish_venv
7
+ import thingy.venv_template as venv_template
9
8
 
10
9
  ################################################################################
11
10
 
@@ -17,24 +16,16 @@ def main():
17
16
 
18
17
  args = parser.parse_args()
19
18
 
20
- shell = os.getenv('SHELL').split('/')[-1]
19
+ script = args.name[0]
21
20
 
22
- if shell == 'fish':
23
- template = fish_venv.TEMPLATE
24
- else:
25
- if shell != 'bash':
26
- print(f'Warning: Unknown shell: {shell} - using Bash template by default')
21
+ with open(script, 'wt') as scriptfile:
22
+ scriptfile.write(venv_template.TEMPLATE)
27
23
 
28
- template = bash_venv.TEMPLATE
24
+ statinfo = os.stat(script)
29
25
 
30
- with open(args.name[0], 'wt') as scriptfile:
31
- scriptfile.write(template)
26
+ os.chmod(script, statinfo.st_mode|stat.S_IXUSR|stat.S_IXGRP|stat.S_IXOTH)
32
27
 
33
- statinfo = os.stat(args.name[0])
34
-
35
- os.chmod(args.name[0], statinfo.st_mode|stat.S_IXUSR|stat.S_IXGRP|stat.S_IXOTH)
36
-
37
- print(f'Created virtual environment: {args.name[0]}')
28
+ print(f'Created virtual environment: {script}')
38
29
 
39
30
  ################################################################################
40
31
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: skilleter_thingy
3
- Version: 0.0.45
3
+ Version: 0.0.47
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
@@ -4,6 +4,7 @@ pyproject.toml
4
4
  skilleter_thingy/__init__.py
5
5
  skilleter_thingy/addpath.py
6
6
  skilleter_thingy/borger.py
7
+ skilleter_thingy/box.py
7
8
  skilleter_thingy/console_colours.py
8
9
  skilleter_thingy/diskspacecheck.py
9
10
  skilleter_thingy/docker_purge.py
@@ -51,7 +52,6 @@ skilleter_thingy.egg-info/entry_points.txt
51
52
  skilleter_thingy.egg-info/requires.txt
52
53
  skilleter_thingy.egg-info/top_level.txt
53
54
  skilleter_thingy/thingy/__init__.py
54
- skilleter_thingy/thingy/bash_venv.py
55
55
  skilleter_thingy/thingy/colour.py
56
56
  skilleter_thingy/thingy/dc_curses.py
57
57
  skilleter_thingy/thingy/dc_defaults.py
@@ -59,7 +59,6 @@ skilleter_thingy/thingy/dc_util.py
59
59
  skilleter_thingy/thingy/dircolors.py
60
60
  skilleter_thingy/thingy/docker.py
61
61
  skilleter_thingy/thingy/files.py
62
- skilleter_thingy/thingy/fish_venv.py
63
62
  skilleter_thingy/thingy/git.py
64
63
  skilleter_thingy/thingy/git2.py
65
64
  skilleter_thingy/thingy/gitlab.py
@@ -69,4 +68,5 @@ skilleter_thingy/thingy/popup.py
69
68
  skilleter_thingy/thingy/process.py
70
69
  skilleter_thingy/thingy/run.py
71
70
  skilleter_thingy/thingy/tfm_pane.py
72
- skilleter_thingy/thingy/tidy.py
71
+ skilleter_thingy/thingy/tidy.py
72
+ skilleter_thingy/thingy/venv_template.py
@@ -1,41 +0,0 @@
1
- TEMPLATE = \
2
- """#!/usr/bin/env fish
3
-
4
- ################################################################################
5
-
6
- set VENV_NAME $(basename "$0")
7
- set VENV_DIR __venv__
8
-
9
- set GREEN "\e[42m"
10
- set NORMAL "\e[0m"
11
-
12
- ################################################################################
13
-
14
- function box
15
- echo -e "$GREEN################################################################################$NORMAL"
16
- echo -e "$GREEN# $argv$NORMAL"
17
- echo -e "$GREEN################################################################################$NORMAL"
18
- end
19
-
20
- ################################################################################
21
-
22
- box "Creating & activating $VENV_NAME virtual environment"
23
-
24
- python3 -m venv $VENV_DIR
25
-
26
- source $VENV_DIR/bin/activate.fish
27
-
28
- if test -f requirements.txt
29
- box "Installing/Upgrading packages"
30
-
31
- python3 -m pip install -r requirements.txt
32
- end
33
-
34
- if test -f $VENV_NAME.py
35
- box "Running $VENV_NAME script"
36
-
37
- python3 ./$VENV_NAME.py $argv
38
-
39
- deactivate
40
- end
41
- """