omdev 0.0.0.dev111__py3-none-any.whl → 0.0.0.dev113__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 omdev might be problematic. Click here for more details.
- omdev/.manifests.json +13 -1
- omdev/git.py +313 -14
- omdev/pycharm/__init__.py +0 -0
- omdev/pycharm/__main__.py +11 -0
- omdev/pycharm/cli.py +98 -0
- omdev/scripts/pyproject.py +1421 -1127
- omdev/tools/git.py +54 -0
- {omdev-0.0.0.dev111.dist-info → omdev-0.0.0.dev113.dist-info}/METADATA +2 -2
- {omdev-0.0.0.dev111.dist-info → omdev-0.0.0.dev113.dist-info}/RECORD +13 -10
- {omdev-0.0.0.dev111.dist-info → omdev-0.0.0.dev113.dist-info}/LICENSE +0 -0
- {omdev-0.0.0.dev111.dist-info → omdev-0.0.0.dev113.dist-info}/WHEEL +0 -0
- {omdev-0.0.0.dev111.dist-info → omdev-0.0.0.dev113.dist-info}/entry_points.txt +0 -0
- {omdev-0.0.0.dev111.dist-info → omdev-0.0.0.dev113.dist-info}/top_level.txt +0 -0
omdev/tools/git.py
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import os
|
|
2
2
|
import re
|
|
3
3
|
import subprocess
|
|
4
|
+
import typing as ta
|
|
4
5
|
import urllib.parse
|
|
5
6
|
|
|
6
7
|
from omlish import argparse as ap
|
|
7
8
|
from omlish import check
|
|
8
9
|
from omlish import logs
|
|
10
|
+
from omlish.formats import json
|
|
9
11
|
|
|
10
12
|
from ..cli import CliModule
|
|
13
|
+
from ..git import GitStatusLine
|
|
14
|
+
from ..git import get_git_status
|
|
11
15
|
|
|
12
16
|
|
|
13
17
|
def rev_parse(rev: str) -> str:
|
|
@@ -124,6 +128,56 @@ class Cli(ap.Cli):
|
|
|
124
128
|
else:
|
|
125
129
|
print(base_rev)
|
|
126
130
|
|
|
131
|
+
@ap.command(
|
|
132
|
+
ap.arg('-v', '--verbose', action='store_true'),
|
|
133
|
+
)
|
|
134
|
+
def status(self) -> None:
|
|
135
|
+
st = get_git_status()
|
|
136
|
+
|
|
137
|
+
def gsl_dct(gsl: GitStatusLine) -> ta.Mapping[str, ta.Any]:
|
|
138
|
+
return {
|
|
139
|
+
'x': gsl.x.name,
|
|
140
|
+
'y': gsl.y.name,
|
|
141
|
+
'a': gsl.a,
|
|
142
|
+
**({'b': gsl.b} if gsl.b is not None else {}),
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
def gsl_dct_lst(gsls: ta.Iterable[GitStatusLine]) -> ta.Sequence[ta.Mapping[str, ta.Any]]:
|
|
146
|
+
return [gsl_dct(gsl) for gsl in sorted(gsls, key=lambda gsl: gsl.a)]
|
|
147
|
+
|
|
148
|
+
if self.args.verbose:
|
|
149
|
+
dct = {
|
|
150
|
+
'by_x': {x.name: gsl_dct_lst(lst) for x, lst in st.by_x.items()},
|
|
151
|
+
'by_y': {y.name: gsl_dct_lst(lst) for y, lst in st.by_x.items()},
|
|
152
|
+
|
|
153
|
+
'by_a': {a: gsl_dct(gsl) for a, gsl in sorted(st.by_a.items(), key=lambda t: t[0])},
|
|
154
|
+
'by_b': {b: gsl_dct(gsl) for b, gsl in sorted(st.by_b.items(), key=lambda t: t[0])},
|
|
155
|
+
|
|
156
|
+
'has_unmerged': st.has_unmerged,
|
|
157
|
+
'has_staged': st.has_staged,
|
|
158
|
+
'has_dirty': st.has_dirty,
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
print(json.dumps_pretty(dct))
|
|
162
|
+
|
|
163
|
+
else:
|
|
164
|
+
print(json.dumps_pretty([gsl_dct(gsl) for gsl in st]))
|
|
165
|
+
|
|
166
|
+
@ap.command(
|
|
167
|
+
ap.arg('-m', '--message', default='--'),
|
|
168
|
+
aliases=['acp'],
|
|
169
|
+
)
|
|
170
|
+
def add_commit_push(self) -> None:
|
|
171
|
+
st = get_git_status()
|
|
172
|
+
|
|
173
|
+
if st.has_dirty:
|
|
174
|
+
subprocess.check_call(['git', 'add', '.'])
|
|
175
|
+
|
|
176
|
+
if st.has_staged or st.has_dirty:
|
|
177
|
+
subprocess.check_call(['git', 'commit', '-m', self.args.message])
|
|
178
|
+
|
|
179
|
+
subprocess.check_call(['git', 'push'])
|
|
180
|
+
|
|
127
181
|
|
|
128
182
|
# @omlish-manifest
|
|
129
183
|
_CLI_MODULE = CliModule('git', __name__)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: omdev
|
|
3
|
-
Version: 0.0.0.
|
|
3
|
+
Version: 0.0.0.dev113
|
|
4
4
|
Summary: omdev
|
|
5
5
|
Author: wrmsr
|
|
6
6
|
License: BSD-3-Clause
|
|
@@ -12,7 +12,7 @@ Classifier: Operating System :: OS Independent
|
|
|
12
12
|
Classifier: Operating System :: POSIX
|
|
13
13
|
Requires-Python: >=3.12
|
|
14
14
|
License-File: LICENSE
|
|
15
|
-
Requires-Dist: omlish ==0.0.0.
|
|
15
|
+
Requires-Dist: omlish ==0.0.0.dev113
|
|
16
16
|
Provides-Extra: all
|
|
17
17
|
Requires-Dist: black ~=24.10 ; extra == 'all'
|
|
18
18
|
Requires-Dist: pycparser ~=2.22 ; extra == 'all'
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
omdev/.manifests.json,sha256=
|
|
1
|
+
omdev/.manifests.json,sha256=CYQZv4g8omAD0yoqcBx5TU55gcBdD4B3aVbcOLLawiQ,7479
|
|
2
2
|
omdev/__about__.py,sha256=n5x-SO70OgbDQFzQ1d7sZDVMsnkQc4PxQZPFaIQFa0E,1281
|
|
3
3
|
omdev/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
omdev/bracepy.py,sha256=I8EdqtDvxzAi3I8TuMEW-RBfwXfqKbwp06CfOdj3L1o,2743
|
|
5
5
|
omdev/classdot.py,sha256=YOvgy6x295I_8NKBbBlRVd3AN7Osirm_Lqt4Wj0j9rY,1631
|
|
6
6
|
omdev/cmake.py,sha256=Diy2ry65806dQP125DAstD3w46z_wszMH7PwC2-6iik,4578
|
|
7
7
|
omdev/findimports.py,sha256=2t8QP852saEEJFeXySEzhi_nxRSxghlkXz2jVdvy08M,2392
|
|
8
|
-
omdev/git.py,sha256=
|
|
8
|
+
omdev/git.py,sha256=B3gnqL75OZqwMvANdZL3cyah6izdM5bZfPJhG134lD0,10520
|
|
9
9
|
omdev/imgur.py,sha256=il12R3t19tALolteYCZywvcdQUEOcgvPyUYgWtKiqt4,2993
|
|
10
10
|
omdev/revisions.py,sha256=U657hf4zeEN32y3g4CzqCAodx_HlfkHj2cIIKALNFDo,5009
|
|
11
11
|
omdev/secrets.py,sha256=bcquaBIDKqX4UIKOzUuKrX7nxVCenj67rRHIMIrd9bk,540
|
|
@@ -106,6 +106,9 @@ omdev/precheck/scripts.py,sha256=Xw9kkQzlDd_2V9av9qlaNpNZG9jZdy3TTo7x60MeR2I,127
|
|
|
106
106
|
omdev/ptk/__init__.py,sha256=StAwXQ96e8Xkkg7ciR9oBBhcSgqHT76vhoZML82BuY0,447
|
|
107
107
|
omdev/ptk/apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
108
108
|
omdev/ptk/apps/ncdu.py,sha256=dOkEJoc2Wjv1u_Uge7Vpei_LvXldoPP5833Eia355tc,4548
|
|
109
|
+
omdev/pycharm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
110
|
+
omdev/pycharm/__main__.py,sha256=hUPp11D024eMdT86BxXiRVtF7AGBk5W6Zn8_mEHSksY,163
|
|
111
|
+
omdev/pycharm/cli.py,sha256=WyUlFuG4jAmd7pB5tnZJ54FH1y1orDX3sjB1EWgbmmQ,2343
|
|
109
112
|
omdev/pyproject/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
|
|
110
113
|
omdev/pyproject/__main__.py,sha256=gn3Rl1aYPYdiTtEqa9ifi0t-e4ZwPY0vhJ4UXvYdJDY,165
|
|
111
114
|
omdev/pyproject/cexts.py,sha256=x13piOOnNrYbA17qZLDVuR0p1sqhgEwpk4FtImX-klM,4281
|
|
@@ -119,7 +122,7 @@ omdev/scripts/execrss.py,sha256=mR0G0wERBYtQmVIn63lCIIFb5zkCM6X_XOENDFYDBKc,651
|
|
|
119
122
|
omdev/scripts/exectime.py,sha256=sFb376GflU6s9gNX-2-we8hgH6w5MuQNS9g6i4SqJIo,610
|
|
120
123
|
omdev/scripts/importtrace.py,sha256=Jbo3Yk2RAbE8_tJ97iTcVNpoxCJxrRb2tl1W_CV3NG0,14067
|
|
121
124
|
omdev/scripts/interp.py,sha256=U6mU2RPZjwcBhn4Vl4SrAyDUFcf7bBxBnPY5FHCxosw,72496
|
|
122
|
-
omdev/scripts/pyproject.py,sha256=
|
|
125
|
+
omdev/scripts/pyproject.py,sha256=e2Ncxiju1GinYaXa_PJ3qAyiOApWepS-_uWjcKcJwtw,173682
|
|
123
126
|
omdev/scripts/slowcat.py,sha256=lssv4yrgJHiWfOiHkUut2p8E8Tq32zB-ujXESQxFFHY,2728
|
|
124
127
|
omdev/scripts/tmpexec.py,sha256=WTYcf56Tj2qjYV14AWmV8SfT0u6Y8eIU6cKgQRvEK3c,1442
|
|
125
128
|
omdev/toml/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
|
|
@@ -128,7 +131,7 @@ omdev/toml/writer.py,sha256=lk3on3YXVbWuLJa-xsOzOhs1bBAT1vXqw4mBbluZl_w,3040
|
|
|
128
131
|
omdev/tools/__init__.py,sha256=iVJAOQ0viGTQOm0DLX4uZLro-9jOioYJGLg9s0kDx1A,78
|
|
129
132
|
omdev/tools/doc.py,sha256=mv9XfitzqXl3vFHSenv01xHCxWf8g03rUAb_sqoty98,2556
|
|
130
133
|
omdev/tools/docker.py,sha256=k2BrVvFYwyGov064CPHd_HWo9aqR1zHc2UeEsVwPth4,6827
|
|
131
|
-
omdev/tools/git.py,sha256=
|
|
134
|
+
omdev/tools/git.py,sha256=sj3I8chXVzcZQyBIP8trq5_96EOXNTmu5YPOWePkR9A,5995
|
|
132
135
|
omdev/tools/importscan.py,sha256=QeGjR3UGcuuuDUiisFuAXWHlcKJScGxGEcU6tfOh2CM,4069
|
|
133
136
|
omdev/tools/mkrelimp.py,sha256=wsJAjTIf3nqcSfnT9TkDpS1VUOoM9W2Az5tZdWuzyLM,4054
|
|
134
137
|
omdev/tools/notebook.py,sha256=M8Xi_gfZdlahnyFLtp0RBgYZPSHWQStMMDYZc71Zync,3494
|
|
@@ -139,9 +142,9 @@ omdev/tools/sqlrepl.py,sha256=tmFZh80-xsGM62dyQ7_UGLebChrj7IHbIPYBWDJMgVk,5741
|
|
|
139
142
|
omdev/tools/pawk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
140
143
|
omdev/tools/pawk/__main__.py,sha256=VCqeRVnqT1RPEoIrqHFSu4PXVMg4YEgF4qCQm90-eRI,66
|
|
141
144
|
omdev/tools/pawk/pawk.py,sha256=Eckymn22GfychCQcQi96BFqRo_LmiJ-EPhC8TTUJdB4,11446
|
|
142
|
-
omdev-0.0.0.
|
|
143
|
-
omdev-0.0.0.
|
|
144
|
-
omdev-0.0.0.
|
|
145
|
-
omdev-0.0.0.
|
|
146
|
-
omdev-0.0.0.
|
|
147
|
-
omdev-0.0.0.
|
|
145
|
+
omdev-0.0.0.dev113.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
|
146
|
+
omdev-0.0.0.dev113.dist-info/METADATA,sha256=OEbh_tGsx98S71e87wp4wNTZkVEVZLj8_rpjpiAPQo0,1810
|
|
147
|
+
omdev-0.0.0.dev113.dist-info/WHEEL,sha256=a7TGlA-5DaHMRrarXjVbQagU3Man_dCnGIWMJr5kRWo,91
|
|
148
|
+
omdev-0.0.0.dev113.dist-info/entry_points.txt,sha256=dHLXFmq5D9B8qUyhRtFqTGWGxlbx3t5ejedjrnXNYLU,33
|
|
149
|
+
omdev-0.0.0.dev113.dist-info/top_level.txt,sha256=1nr7j30fEWgLYHW3lGR9pkdHkb7knv1U1ES1XRNVQ6k,6
|
|
150
|
+
omdev-0.0.0.dev113.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|