omlish 0.0.0.dev189__py3-none-any.whl → 0.0.0.dev190__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
omlish/__about__.py CHANGED
@@ -1,5 +1,5 @@
1
- __version__ = '0.0.0.dev189'
2
- __revision__ = 'a07761c6eb75b56d0c159dd576f686dec5845963'
1
+ __version__ = '0.0.0.dev190'
2
+ __revision__ = '665c02c2d09dc2dac75b06a9ff65ae5a91740426'
3
3
 
4
4
 
5
5
  #
omlish/os/atomics.py CHANGED
@@ -114,6 +114,7 @@ class AtomicPathSwapping(abc.ABC):
114
114
  *,
115
115
  name_hint: ta.Optional[str] = None,
116
116
  make_dirs: bool = False,
117
+ skip_root_dir_check: bool = False,
117
118
  **kwargs: ta.Any,
118
119
  ) -> AtomicPathSwap:
119
120
  raise NotImplementedError
@@ -177,10 +178,15 @@ class TempDirAtomicPathSwapping(AtomicPathSwapping):
177
178
  *,
178
179
  name_hint: ta.Optional[str] = None,
179
180
  make_dirs: bool = False,
181
+ skip_root_dir_check: bool = False,
180
182
  **kwargs: ta.Any,
181
183
  ) -> AtomicPathSwap:
182
184
  dst_path = os.path.abspath(dst_path)
183
- if self._root_dir is not None and not dst_path.startswith(check.non_empty_str(self._root_dir)):
185
+ if (
186
+ not skip_root_dir_check and
187
+ self._root_dir is not None and
188
+ not dst_path.startswith(check.non_empty_str(self._root_dir))
189
+ ):
184
190
  raise RuntimeError(f'Atomic path swap dst must be in root dir: {dst_path}, {self._root_dir}')
185
191
 
186
192
  dst_dir = os.path.dirname(dst_path)
omlish/text/indent.py CHANGED
@@ -1,19 +1,20 @@
1
+ # ruff: noqa: UP006 UP007
2
+ # @omlish-lite
1
3
  import contextlib
2
4
  import io
3
5
  import typing as ta
4
6
 
5
- from .. import check
7
+ from omlish.lite.check import check
6
8
 
7
9
 
8
10
  class IndentWriter:
9
-
10
11
  DEFAULT_INDENT = ' ' * 4
11
12
 
12
13
  def __init__(
13
14
  self,
14
15
  *,
15
- buf: io.StringIO | None = None,
16
- indent: str | None = None,
16
+ buf: ta.Optional[io.StringIO] = None,
17
+ indent: ta.Optional[str] = None,
17
18
  ) -> None:
18
19
  super().__init__()
19
20
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: omlish
3
- Version: 0.0.0.dev189
3
+ Version: 0.0.0.dev190
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -1,5 +1,5 @@
1
1
  omlish/.manifests.json,sha256=lRkBDFxlAbf6lN5upo3WSf-owW8YG1T21dfpbQL-XHM,7598
2
- omlish/__about__.py,sha256=Gs9hXW7PiNiRdGtxDHSxJf4Q0yutVUp9BalCHX8po30,3409
2
+ omlish/__about__.py,sha256=YAdrjqRGNK8wbn_isHlQaTCZzTsEQb12Yk0_RcquwZs,3409
3
3
  omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
4
4
  omlish/c3.py,sha256=ubu7lHwss5V4UznbejAI0qXhXahrU01MysuHOZI9C4U,8116
5
5
  omlish/cached.py,sha256=UI-XTFBwA6YXWJJJeBn-WkwBkfzDjLBBaZf4nIJA9y0,510
@@ -442,7 +442,7 @@ omlish/math/bits.py,sha256=yip1l8agOYzT7bFyMGc0RR3XlnGCfHMpjw_SECLLh1I,3477
442
442
  omlish/math/floats.py,sha256=UimhOT7KRl8LXTzOI5cQWoX_9h6WNWe_3vcOuO7-h_8,327
443
443
  omlish/math/stats.py,sha256=MegzKVsmv2kra4jDWLOUgV0X7Ee2Tbl5u6ql1v4-dEY,10053
444
444
  omlish/os/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
445
- omlish/os/atomics.py,sha256=NQfwifLu48ZniOvaqAuDy8dBTB3tKZntL22T0-8NYwM,5074
445
+ omlish/os/atomics.py,sha256=AKap761fcRqr44jnJNLbNwh6ju5drWJc3WWqTO0BcAs,5256
446
446
  omlish/os/deathsig.py,sha256=hk9Yq2kyDdI-cI7OQH7mOfpRbOKzY_TfPKEqgrjVYbA,641
447
447
  omlish/os/files.py,sha256=1tNy1z5I_CgYKA5c6lOfsXc-hknP4tQDbSShdz8HArw,1308
448
448
  omlish/os/journald.py,sha256=2nI8Res1poXkbLc31--MPUlzYMESnCcPUkIxDOCjZW0,3903
@@ -575,13 +575,13 @@ omlish/text/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
575
575
  omlish/text/asdl.py,sha256=AS3irh-sag5pqyH3beJif78PjCbOaFso1NeKq-HXuTs,16867
576
576
  omlish/text/delimit.py,sha256=ubPXcXQmtbOVrUsNh5gH1mDq5H-n1y2R4cPL5_DQf68,4928
577
577
  omlish/text/glyphsplit.py,sha256=Ug-dPRO7x-OrNNr8g1y6DotSZ2KH0S-VcOmUobwa4B0,3296
578
- omlish/text/indent.py,sha256=6Jj6TFY9unaPa4xPzrnZemJ-fHsV53IamP93XGjSUHs,1274
578
+ omlish/text/indent.py,sha256=XixaVnk9bvtBlH0n_cwN6yS5IyfrTWpe_alfu3_saLY,1341
579
579
  omlish/text/minja.py,sha256=KAmZ2POcLcxwF4DPKxdWa16uWxXmVz1UnJXLSwt4oZo,5761
580
580
  omlish/text/parts.py,sha256=7vPF1aTZdvLVYJ4EwBZVzRSy8XB3YqPd7JwEnNGGAOo,6495
581
581
  omlish/text/random.py,sha256=jNWpqiaKjKyTdMXC-pWAsSC10AAP-cmRRPVhm59ZWLk,194
582
- omlish-0.0.0.dev189.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
583
- omlish-0.0.0.dev189.dist-info/METADATA,sha256=JRj7SgIl1vGF733weElFasb6_IEBNT8cTHUdlW4Aq98,4264
584
- omlish-0.0.0.dev189.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
585
- omlish-0.0.0.dev189.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
586
- omlish-0.0.0.dev189.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
587
- omlish-0.0.0.dev189.dist-info/RECORD,,
582
+ omlish-0.0.0.dev190.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
583
+ omlish-0.0.0.dev190.dist-info/METADATA,sha256=yG3JMlWQnxVCa940f6hR7i2f7LcinJNC1ptqRHO34JQ,4264
584
+ omlish-0.0.0.dev190.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
585
+ omlish-0.0.0.dev190.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
586
+ omlish-0.0.0.dev190.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
587
+ omlish-0.0.0.dev190.dist-info/RECORD,,