omlish 0.0.0.dev4__py3-none-any.whl → 0.0.0.dev5__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 omlish might be problematic. Click here for more details.

Files changed (86) hide show
  1. omlish/__about__.py +1 -1
  2. omlish/__init__.py +1 -1
  3. omlish/asyncs/__init__.py +1 -4
  4. omlish/asyncs/anyio.py +66 -0
  5. omlish/asyncs/flavors.py +27 -1
  6. omlish/asyncs/trio_asyncio.py +24 -18
  7. omlish/c3.py +1 -1
  8. omlish/cached.py +1 -2
  9. omlish/collections/__init__.py +4 -1
  10. omlish/collections/cache/impl.py +1 -1
  11. omlish/collections/indexed.py +1 -1
  12. omlish/collections/utils.py +38 -6
  13. omlish/configs/__init__.py +5 -0
  14. omlish/configs/classes.py +53 -0
  15. omlish/configs/dotenv.py +586 -0
  16. omlish/configs/props.py +589 -49
  17. omlish/dataclasses/impl/api.py +1 -1
  18. omlish/dataclasses/impl/as_.py +1 -1
  19. omlish/dataclasses/impl/fields.py +1 -0
  20. omlish/dataclasses/impl/init.py +1 -1
  21. omlish/dataclasses/impl/main.py +1 -0
  22. omlish/dataclasses/impl/metaclass.py +6 -1
  23. omlish/dataclasses/impl/order.py +1 -1
  24. omlish/dataclasses/impl/reflect.py +15 -2
  25. omlish/defs.py +1 -1
  26. omlish/diag/procfs.py +29 -1
  27. omlish/diag/procstats.py +32 -0
  28. omlish/diag/replserver/console.py +3 -3
  29. omlish/diag/replserver/server.py +6 -5
  30. omlish/diag/threads.py +86 -0
  31. omlish/docker.py +19 -0
  32. omlish/fnpairs.py +26 -18
  33. omlish/graphs/dags.py +113 -0
  34. omlish/graphs/domination.py +268 -0
  35. omlish/graphs/trees.py +2 -2
  36. omlish/http/__init__.py +25 -0
  37. omlish/http/asgi.py +131 -0
  38. omlish/http/consts.py +31 -4
  39. omlish/http/cookies.py +194 -0
  40. omlish/http/dates.py +70 -0
  41. omlish/http/encodings.py +6 -0
  42. omlish/http/json.py +273 -0
  43. omlish/http/sessions.py +197 -0
  44. omlish/inject/__init__.py +8 -2
  45. omlish/inject/bindings.py +3 -3
  46. omlish/inject/exceptions.py +3 -3
  47. omlish/inject/impl/elements.py +33 -24
  48. omlish/inject/impl/injector.py +1 -0
  49. omlish/inject/impl/multis.py +74 -0
  50. omlish/inject/impl/providers.py +19 -39
  51. omlish/inject/{proxy.py → impl/proxy.py} +2 -2
  52. omlish/inject/impl/scopes.py +1 -0
  53. omlish/inject/injector.py +1 -0
  54. omlish/inject/keys.py +3 -9
  55. omlish/inject/multis.py +70 -0
  56. omlish/inject/providers.py +23 -23
  57. omlish/inject/scopes.py +7 -3
  58. omlish/inject/types.py +0 -8
  59. omlish/iterators.py +13 -0
  60. omlish/json.py +2 -1
  61. omlish/lang/__init__.py +4 -0
  62. omlish/lang/classes/restrict.py +1 -1
  63. omlish/lang/classes/virtual.py +2 -2
  64. omlish/lang/contextmanagers.py +64 -0
  65. omlish/lang/datetimes.py +6 -5
  66. omlish/lang/functions.py +10 -0
  67. omlish/lang/imports.py +11 -2
  68. omlish/lang/typing.py +1 -0
  69. omlish/logs/utils.py +1 -1
  70. omlish/marshal/datetimes.py +1 -1
  71. omlish/reflect.py +8 -2
  72. omlish/sync.py +70 -0
  73. omlish/term.py +6 -1
  74. omlish/testing/pytest/__init__.py +5 -0
  75. omlish/testing/pytest/helpers.py +0 -24
  76. omlish/testing/pytest/inject/harness.py +1 -1
  77. omlish/testing/pytest/marks.py +48 -0
  78. omlish/testing/pytest/plugins/__init__.py +2 -0
  79. omlish/testing/pytest/plugins/managermarks.py +60 -0
  80. omlish/testing/testing.py +10 -0
  81. omlish/text/delimit.py +4 -0
  82. {omlish-0.0.0.dev4.dist-info → omlish-0.0.0.dev5.dist-info}/METADATA +1 -1
  83. {omlish-0.0.0.dev4.dist-info → omlish-0.0.0.dev5.dist-info}/RECORD +86 -69
  84. {omlish-0.0.0.dev4.dist-info → omlish-0.0.0.dev5.dist-info}/WHEEL +1 -1
  85. {omlish-0.0.0.dev4.dist-info → omlish-0.0.0.dev5.dist-info}/LICENSE +0 -0
  86. {omlish-0.0.0.dev4.dist-info → omlish-0.0.0.dev5.dist-info}/top_level.txt +0 -0
@@ -1,37 +1,38 @@
1
- omlish/__about__.py,sha256=NmLFQDO4CRzemxQzOuD9dQdlaNKZkVw4DwBlKkI355I,153
2
- omlish/__init__.py,sha256=WQMALSGEyPfcQUmuYQkwv3bC_A5v6IfQ6C6rOYETQHA,200
1
+ omlish/__about__.py,sha256=DRRTcsdRyiFWy3v2CwRHzPSEQhEan56BOP410TJVaNE,153
2
+ omlish/__init__.py,sha256=AGJOJExzKB9Ugu7eI6nTRys4D-Kd4fseT2-PCM9-1Rg,196
3
3
  omlish/argparse.py,sha256=QRQmX9G0-L_nATkFtGHvpd4qrpYzKATdjuFLbBqzJPM,6224
4
- omlish/c3.py,sha256=yhescciIJWoJ9nIWJSrUOtyqIu4uLyPjRHk8RbAJ3f4,8039
5
- omlish/cached.py,sha256=i7uWLRrUrE5N1ofzUf9D3OIsxf-dXkgu4OxCep0CCBk,197
4
+ omlish/c3.py,sha256=W5EwYx9Por3rWYLkKUitJ6OoRMLLgVTfLTyroOz41Y0,8047
5
+ omlish/cached.py,sha256=UAizxlH4eMWHPzQtmItmyE6FEpFEUFzIkxaO2BHWZ5s,196
6
6
  omlish/check.py,sha256=h66jWSwaiuaaIKPI6_pIfolWYYK3WTR43X1CBO5-PQA,5538
7
- omlish/defs.py,sha256=IvUL5i-iyBh5HUhf-gY6sonw3tIozL8066QL71CnoiY,4729
8
- omlish/docker.py,sha256=oLyJQg4Mu-k_WfDVP7PU9yK1cI-JCdcrTVjrQg2sQsE,4140
7
+ omlish/defs.py,sha256=N8O1murtr4mdSE_vjAcWGfnN7GyBXbW8rJM4qPF8na0,4737
8
+ omlish/docker.py,sha256=5UWw0H8kCjKEEE_q2lVaParbdWkgXVtg1t3Bv1YYEt8,4371
9
9
  omlish/dynamic.py,sha256=35C_cCX_Vq2HrHzGk5T-zbrMvmUdiIiwDzDNixczoDo,6541
10
- omlish/fnpairs.py,sha256=f9UfdkDCvfKLivN1H-eKbdOYe-8y1f2aPB6AuRGKLIM,9124
11
- omlish/iterators.py,sha256=YJUTyfqY_calFFOU40TEuptYBqKeavi6L6kc2gXn9s4,5524
12
- omlish/json.py,sha256=ffsWL9o29ejtGoV0kzEMdDPn5gAI0Ezi3CSQasg41uY,6781
10
+ omlish/fnpairs.py,sha256=nVXfpVG4Ntv74P5El0LzuLs_kMQsDBOvcms1RVOxRnQ,9225
11
+ omlish/iterators.py,sha256=Z6oXZwV3aDx4A0z6mvwEahVLqopMQBZ-b2yHr4tUfmQ,5912
12
+ omlish/json.py,sha256=sRpnqiRoaciqdrVqZ9CJCwSsMpvOaYRT5gsKCvW4gGM,6785
13
13
  omlish/libc.py,sha256=u0481imCiTFqP_e-v9g0pD-0WD249j5vYzhtn-fnNkY,15308
14
14
  omlish/math.py,sha256=AVqp5Y8yxKA-wO0BgrzaxA0Ga3PZiCXnYcwivMneC-0,3804
15
15
  omlish/os.py,sha256=T77P7_U7jShPXsm_byvXwPoumcmtA0a7KPRvE2GAOhw,950
16
- omlish/reflect.py,sha256=3dJ9ZGrBan5RRW_Q0OTbl9--oi3B05-ZV4uu0VH-m1c,9891
16
+ omlish/reflect.py,sha256=opsshZYQS5hqpBxePA4kwkHMrRpHCcye5-ghVI9BmtE,10014
17
17
  omlish/runmodule.py,sha256=PWvuAaJ9wQQn6bx9ftEL3_d04DyotNn8dR_twm2pgw0,700
18
18
  omlish/stats.py,sha256=uqjN-focDVssFZMagj22HqmyJ1TBO4Wt-XnHp8-EtVw,9927
19
- omlish/term.py,sha256=OmD3QXntycYHNDCZ-ZV5x2Rz9tw49CoYEn-rld7x_r8,5963
20
- omlish/asyncs/__init__.py,sha256=e7cMiu0S-Rqg98TT7NBVNZ_DkScqRBqJLxI7Aeb5ToY,680
21
- omlish/asyncs/anyio.py,sha256=oYU7FGxMlzPhj5Aa1p7XSdKeD6icoyTPxZRWDc9-YGc,3226
19
+ omlish/sync.py,sha256=AqwIfIuCMVHLwlJUa7dmaSjfA4sM5AYPCD5-nsz3XVQ,1516
20
+ omlish/term.py,sha256=CZnTrvjSSB5HrMJV7sIk8Eqk010DGk7MYQMtF8l4nds,6100
21
+ omlish/asyncs/__init__.py,sha256=V11Jg0NXbbfYwO2gTuTXoHaL0OiPdjnNEZdLedJpRzg,636
22
+ omlish/asyncs/anyio.py,sha256=EkjycVPBBwnHgxWg1ZHsTHA1-38E0LKj757Glw5HLPs,4762
22
23
  omlish/asyncs/asyncio.py,sha256=pSldCmtE9AgVATXb_Vnhjhhz0v2LtqgVXxe7-OFjH0g,414
23
24
  omlish/asyncs/asyncs.py,sha256=MmIz8Gw4PbZd0LUIro_u5kUjobR8i2qGCo6l2hb4U74,2014
24
- omlish/asyncs/flavors.py,sha256=c8w0M_lTtpm38Vi78cy2jk6pRH7MH_DgR_H9z6PoCpE,4247
25
+ omlish/asyncs/flavors.py,sha256=kp1RdcsNrvDQZMB4Q_hlHyjrREJqEWjY9BI1lbE1AQ8,4820
25
26
  omlish/asyncs/futures.py,sha256=3KkTj5TOPmvNOcuK9LtOQwmkuLzoEYQfcuaHTXSQ0Ts,5424
26
27
  omlish/asyncs/trio.py,sha256=GKG3wgelFr7gIKKHZhcflvMyCvxXHNZe862KB0Xw2uA,370
27
- omlish/asyncs/trio_asyncio.py,sha256=-CV9hjjIl3JcLIDhcRNkhoNhbVLIyzoJFe-_dvyOyc0,1112
28
- omlish/collections/__init__.py,sha256=H1_J6VNBqdmdMb8vjc7LBJ8ULoiawxoz-1cR41twB2k,1526
28
+ omlish/asyncs/trio_asyncio.py,sha256=sBcKn4wTjzwd2HKmNm-UkTzBEBZC05ucbMOKCk8zMa0,1216
29
+ omlish/collections/__init__.py,sha256=2Eu5Tj_YusZoJlKVFLE9lHQvZEffNIZVimPkkboqMVI,1577
29
30
  omlish/collections/_abc.py,sha256=sP7BpTVhx6s6C59mTFeosBi4rHOWC6tbFBYbxdZmvh0,2365
30
31
  omlish/collections/_io_abc.py,sha256=Cxs8KB1B_69rxpUYxI-MTsilAmNooJJn3w07DKqYKkE,1255
31
32
  omlish/collections/coerce.py,sha256=o11AMrUiyoadd8WkdqeKPIpXf2xd0LyylzNCyJivCLU,7036
32
33
  omlish/collections/frozen.py,sha256=DGxemj_pVID85tSBm-Wns_x4ov0wOEIT6X5bVgJtmkA,4152
33
34
  omlish/collections/identity.py,sha256=3X4J-LqdzM-9QA1bJ_FIxqxsei_ESS3oJHFlD1VX7KQ,2550
34
- omlish/collections/indexed.py,sha256=lbMBqMjwy8VRZhEsh0o_PIkP9mk4LP3MHQZxa18Hlzg,2143
35
+ omlish/collections/indexed.py,sha256=YHs_q0GALisXPKKMgeDQxZ6hMzYndqDL3m3ag8cnzH0,2143
35
36
  omlish/collections/mappings.py,sha256=5D7xZabUY6n1nB-BrZlcrPy_AdzLZ6IyihuLeDL48pA,3188
36
37
  omlish/collections/ordered.py,sha256=RzEC3fHvrDeJQSWThVDNYQKke263Vje1II5YwtDwT1Q,2335
37
38
  omlish/collections/persistent.py,sha256=KG471s0bhhReQrjlmX0xaN9HeAIcrtT264ddZCxsExo,875
@@ -40,90 +41,104 @@ omlish/collections/sorted.py,sha256=E5ZOdNn7Jju1EcQ7CX2Ltk9StIXsBOzqvh7EsT3ZA2U,
40
41
  omlish/collections/treap.py,sha256=wq9L5hvxq4QgPvIpHmueZMF8t7UrvX5vmlNN4BOqY4g,7720
41
42
  omlish/collections/treapmap.py,sha256=TxOM-ZRF5PK2xe5wRIhESNt7DGh9b_MeZfE7HLkCOs4,5804
42
43
  omlish/collections/unmodifiable.py,sha256=QmUEi9IBXqiM_KGgH2rqg15VmkHJo1MZ6kwq2twEMho,4750
43
- omlish/collections/utils.py,sha256=2mqczC8lnIfpuYxdBJACqRqXup5YGcVNhwgw2r5MVy4,3022
44
+ omlish/collections/utils.py,sha256=iRVkffZlLRbYPjli8EO62bgN-X1rtORwoUiZTNGLQqA,3754
44
45
  omlish/collections/cache/__init__.py,sha256=Cv8RX-Ehit3um0QLDq7uRDqJUCcdqTKoAB9T0pM_5hg,392
45
46
  omlish/collections/cache/descriptor.py,sha256=t-1Gh4DTABDuNmeDJlpoW4LV3gi_uSlBd9ZfBINfYCM,5023
46
- omlish/collections/cache/impl.py,sha256=WDmF_WSGpVsFRbUAB7GMAA-z5-nr7rGNB7TiKfK53dY,15129
47
+ omlish/collections/cache/impl.py,sha256=nQox5kChhns9h2a5gnX-ayQGBQJ5-B1aZkLQ2Aej19g,15137
47
48
  omlish/collections/cache/types.py,sha256=yNjwd6CGyTJQdxN2CQxFqqBAlcs1Z7vvNV-aU1K7p8E,685
48
- omlish/configs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
+ omlish/configs/__init__.py,sha256=3uh09ezodTwkMI0nRmAMP0eEuJ_0VdF-LYyNmPjHiCE,77
50
+ omlish/configs/classes.py,sha256=GLbB8xKjHjjoUQRCUQm3nEjM8z1qNTx9gPV7ODSt5dg,1317
51
+ omlish/configs/dotenv.py,sha256=rC0-j6FjoBqHbwhXPFQD-pLxs_9s0NFR_QaGGM_1kPA,17463
49
52
  omlish/configs/flattening.py,sha256=AOlRpBHm449MxwMp3CiIRGunStOC1DUNs1f3CLou0wc,4731
50
- omlish/configs/props.py,sha256=nwbg4uzFMbiNnTxOhRQ67AREbrLB8lMoiGMjmjjdVBE,1693
53
+ omlish/configs/props.py,sha256=diYjZDsG1s50ImJhkpeinMwjr8952nIVI-0gYhBIvCY,18897
51
54
  omlish/dataclasses/__init__.py,sha256=xx4l1C6bgo75DMcZZwhIJr9UZpo8LranMqa_1hOkiMk,972
52
55
  omlish/dataclasses/impl/__init__.py,sha256=rQJRcE9fVsGEvRUOZ18r4DE0xiLbSRjspyJRXgbLS3I,348
53
- omlish/dataclasses/impl/api.py,sha256=7w-SXif9e2Driz_HyR2depJRQL76EwRai3jdNrQAjB0,6243
54
- omlish/dataclasses/impl/as_.py,sha256=lXSMsRgzsewSaub8SUmNXvxVRsDpeAOhL1xMOK-d4RI,2598
56
+ omlish/dataclasses/impl/api.py,sha256=NOuw5dlwztG5AA_gwdF2PJAqvouMdbUf1Si80G26qAY,6244
57
+ omlish/dataclasses/impl/as_.py,sha256=CD-t7hkC1EP2F_jvZKIA_cVoDuwZ-Ln_xC4fJumPYX0,2598
55
58
  omlish/dataclasses/impl/exceptions.py,sha256=EDuVPeyjBu8jHYUFIASRNupRL-krpytSeuNIkD4N6Ok,38
56
- omlish/dataclasses/impl/fields.py,sha256=_ICwU0aCYLQYV5i0gmO3bLJlyMG4OxOa89xemPY_gcQ,4242
59
+ omlish/dataclasses/impl/fields.py,sha256=pjWwq4xiqXrjrUQrPGaYp24sDqU_v_VobIXX9_98XkQ,4243
57
60
  omlish/dataclasses/impl/frozen.py,sha256=5wKtt8WvPYCkHPrwR024mpvbFzqcbPQfgiFvy3orRJo,1692
58
61
  omlish/dataclasses/impl/hashing.py,sha256=FKnHuXCg9ylrzK2TLGqO5yfRN4HX3F415CSLlVYXtYE,3190
59
- omlish/dataclasses/impl/init.py,sha256=O5UAUysLKWPg3e4KiJ5Dsv8CJnrdwJErMWkgQVERXpA,5558
62
+ omlish/dataclasses/impl/init.py,sha256=G6cJ3Zh04LdNcIapHf9SZdTFgLR3EdqBGk_fADROU4A,5558
60
63
  omlish/dataclasses/impl/internals.py,sha256=LTCqGT8AhyGTWwioGrBpTJzDzPvAtizQKb0NBNKcNs0,2989
61
- omlish/dataclasses/impl/main.py,sha256=gANq32eOkNXWDLdJ3MgPFKiviE-m0ao8ryjF52Hg1xs,5129
62
- omlish/dataclasses/impl/metaclass.py,sha256=UaNdJjD-Y6aJ178Et5_1erORsJ9PzO1xfR0K5rGOCjs,2722
64
+ omlish/dataclasses/impl/main.py,sha256=91aThf9cdWuSJn8pcWsyWasC8LT06Ym6FjbnDM3GeG4,5130
65
+ omlish/dataclasses/impl/metaclass.py,sha256=dlQEIN9MHBirll7Nx3StpzxYxXjrqxJ-QsorMcCNt7w,2828
63
66
  omlish/dataclasses/impl/metadata.py,sha256=HGqAtMcP422X4kPx93btcxE-n4guBFm6-N-S4nobgk4,1407
64
- omlish/dataclasses/impl/order.py,sha256=8aWqDgf4sPhn04tdAaFwA8tjvuIhf2D8f4mpk5LvPqw,1369
67
+ omlish/dataclasses/impl/order.py,sha256=zWvWDkSTym8cc7vO1cLHqcBhhjOlucHOCUVJcdh4jt0,1369
65
68
  omlish/dataclasses/impl/params.py,sha256=M-xg9IeFftVy795oqlp7Yw8jE-7wG2K4vaFhXHKmL1k,2538
66
69
  omlish/dataclasses/impl/processing.py,sha256=iUvaNwRAt8rQsLIIkvRye5rfk6xhgR35EbcdwZCZec8,366
67
- omlish/dataclasses/impl/reflect.py,sha256=nw8OkZkVloQEhpIwXkuQAIQKT8XxI_eOmi0ZNAIb_IY,5000
70
+ omlish/dataclasses/impl/reflect.py,sha256=9aVgupzs75wif-5tZ6oAEZ3bFcsJBvLgxJ5fL8raZc4,5292
68
71
  omlish/dataclasses/impl/replace.py,sha256=wS9GHX4fIwaPv1JBJzIewdBfXyK3X3V7_t55Da87dYo,1217
69
72
  omlish/dataclasses/impl/repr.py,sha256=oLXBTxqp88NKmz82HrJeGiTEiwK4l5LlXQT9Q0-tX3c,1605
70
73
  omlish/dataclasses/impl/simple.py,sha256=EovA-GpmQYtB_svItO2byTAWqbKGF4njz0MdQts3QBU,3157
71
74
  omlish/dataclasses/impl/slots.py,sha256=_sm-x9v1tPnXEHBHNUMTHZocgVyhZaPdvamIPPBUVyk,2635
72
75
  omlish/dataclasses/impl/utils.py,sha256=aER2iL3UAtgS1BdLuEvTr9Tr2wC28wk1kiOeO-jIymw,6138
73
76
  omlish/diag/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
- omlish/diag/procfs.py,sha256=94o3xDtJn4PWsUUwZjnE7m0aJM80rykDssG_R1OH98w,9274
77
+ omlish/diag/procfs.py,sha256=RudRvwWV42fmxpHLIryRgbT4zSRlPZJ1624lAPbRioY,9562
78
+ omlish/diag/procstats.py,sha256=9uQMvVL7Yzf_1F8dW55pcZeCFtP5yUbK1KuGn9bt2Qg,502
75
79
  omlish/diag/ps.py,sha256=1JWxZen3fVG-20R6ZZ8BtO_gpzw_5bhHZiKdoHkgxoU,1004
80
+ omlish/diag/threads.py,sha256=Vs05WqH0C6GlTcQo2CiSH5SbT1YlnETRX5slT7YBl9M,2058
76
81
  omlish/diag/replserver/__init__.py,sha256=uLo6V2aQ29v9z3IMELlPDSlG3_2iOT4-_X8VniF-EgE,235
77
82
  omlish/diag/replserver/__main__.py,sha256=LmU41lQ58bm1h4Mx7S8zhE_uEBSC6kPcp9mn5JRpulA,32
78
- omlish/diag/replserver/console.py,sha256=hzY3sCpUF_C9Nvlc5QT75OqHbfnPQkUz3keWRMITmjY,7396
79
- omlish/diag/replserver/server.py,sha256=L8qHxVx4JBPzWs18m2t82fW0Uloi7Kvv7xnUGyN1pAk,4865
83
+ omlish/diag/replserver/console.py,sha256=XzBDVhYlr8FY6ym4OwoaIHuFOHnGK3dTYlMDIOMUUlA,7410
84
+ omlish/diag/replserver/server.py,sha256=MBLMouRuJ7eMXBHVsMQS8KGHwZuDThPoNkiJb32UVI0,4896
80
85
  omlish/dispatch/__init__.py,sha256=GsiGJ91NKiQptSROtnCSkrZExBkvfDwYvdoTu5dBqF0,117
81
86
  omlish/dispatch/dispatch.py,sha256=8B66wOat30HckcIsCq4pnutBy20iSPwPQOqJ4msHaGU,3739
82
87
  omlish/dispatch/functions.py,sha256=S8ElsLi6DKxTdtFGigWaF0vAquwy2sK-3f4iRLaYq70,1522
83
88
  omlish/dispatch/methods.py,sha256=utLvLioBgEqa0gR0fpfNEtMDZFGPM4G5p3XHnPt-oIw,5865
84
89
  omlish/graphs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
- omlish/graphs/trees.py,sha256=_N8Z-gBVzreY0NWpzzitD4iR3e40ojoFLVXjJlGViTI,8150
90
+ omlish/graphs/dags.py,sha256=JpTGxt5rsK7hy5EUy9rNUlIeDStT9ri86m8xEKiHQLE,3063
91
+ omlish/graphs/domination.py,sha256=45iTyn7mZWPJ1ANrqD96aPXqzEeyFpybMvvcVxo9XvQ,7592
92
+ omlish/graphs/trees.py,sha256=TWWpCiOXak782jWkeJXZsAAZTzUrFpKHTCMufeqkXs8,8143
86
93
  omlish/graphs/dot/__init__.py,sha256=6-LAx7ytHFQvfLrnxVQG1s8xmApgblERJJCTB2knOHk,642
87
94
  omlish/graphs/dot/items.py,sha256=OWPf0-hjBgS1uyy2QgAEn4IgFHJcEg7sHVWeTx1ghZc,4083
88
95
  omlish/graphs/dot/rendering.py,sha256=hUSJ5HvSvxnTIC9ynSxxP8IJnVH6quEeDbLzNlUnmuk,3626
89
96
  omlish/graphs/dot/utils.py,sha256=_FMwn77WfiiAfLsRTOKWm4IYbNv5kQN22YJ5psw6CWg,801
90
- omlish/http/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
- omlish/http/consts.py,sha256=reOpgv7NHAHLqUblYgfT5-hZVngkZfMJfCz9P41JdlU,696
97
+ omlish/http/__init__.py,sha256=v2f9Hh6bTgcz0MkG9T2JQarzeIgHlDxDT2cbINbpyw8,367
98
+ omlish/http/asgi.py,sha256=Vi0kG-EmqPOimk8pdMsoXe0qRh1ckIwKjxcNlT8N5z8,3204
99
+ omlish/http/consts.py,sha256=Buo8xx1Zo89O2Hgsoqu_uPOQW193K47OufKfXMquZ70,1600
100
+ omlish/http/cookies.py,sha256=x56AvYtwNyQKFzVD1zSGIsfg9oiArd6ICTMEdugP008,6356
101
+ omlish/http/dates.py,sha256=Otgp8wRxPgNGyzx8LFowu1vC4EKJYARCiAwLFncpfHM,2875
102
+ omlish/http/encodings.py,sha256=w2WoKajpaZnQH8j-IBvk5ZFL2O2pAU_iBvZnkocaTlw,164
103
+ omlish/http/json.py,sha256=9XwAsl4966Mxrv-1ytyCqhcE6lbBJw-0_tFZzGszgHE,7440
104
+ omlish/http/sessions.py,sha256=hCah0tXZ7ZiYeThqhYHWv9qvFDQbKGabSIV5sxy9QvY,4574
92
105
  omlish/http/wsgi.py,sha256=czZsVUX-l2YTlMrUjKN49wRoP4rVpS0qpeBn4O5BoMY,948
93
- omlish/inject/__init__.py,sha256=kgHhZHYW-A1z99HhBKsk13RrjQXFL1-JjfU3hF3IQ4M,1207
106
+ omlish/inject/__init__.py,sha256=xg4T-n-nOGmSug3Jxx2YCwVRRSvxIyn5s4YDk9OmC4c,1299
94
107
  omlish/inject/binder.py,sha256=hkT2dw_VSOkYTP4Mn1gvEFKeWPb-O_koFeSSsB8eNx4,278
95
- omlish/inject/bindings.py,sha256=_GeM_w-QdPa_UMeVFluuGPf-9UCzvOqzo1gL0AEfqtc,1129
108
+ omlish/inject/bindings.py,sha256=Jl3wXCeVz_K5i6NA0vGMC9kV3kgkI0pNmCFXakaRqps,1101
96
109
  omlish/inject/eagers.py,sha256=ITpV2FoIzP2xJs4XtzEKTWP0QktLw1aPSWTxmNVJcPA,372
97
110
  omlish/inject/elements.py,sha256=HXG5rt2IMczK3eJCkEhj73wcCIliJnqFzQv3evPwOGI,957
98
- omlish/inject/exceptions.py,sha256=UCNc8s8O6_2c28VeqvB7oVR2SmnnXb55Vd0MWx-YS20,612
99
- omlish/inject/injector.py,sha256=ewnyHj50KfanQFJU8Il2MtulpaHQYgXuDZMqWud_IHE,927
111
+ omlish/inject/exceptions.py,sha256=BcO9fmA0OJmf9V62Wnh_CaxvoEscB9ArwzCcx-0QC9U,624
112
+ omlish/inject/injector.py,sha256=CnQNDM_8g2ZyZ4-aXfYsMKgBryJVWHeVR-L6f2kTuf8,928
100
113
  omlish/inject/inspect.py,sha256=PriB5cqqTYSz_FnLxoxIRAOp9fR9CMSILfvh-V26wxA,206
101
- omlish/inject/keys.py,sha256=ihDlt4b8mPNRyEmg2EOEsTQ7e4NSVh7nVDq2JEC4OVY,759
114
+ omlish/inject/keys.py,sha256=MOGv8MaCd6j_v3r6n3rZM02q482GVbRfsgIiA6E9eYw,608
102
115
  omlish/inject/managed.py,sha256=hXVl8eLMrCaEwPv6glB9Dfr5EM_y1fBQwrZ2eu2XxsQ,627
116
+ omlish/inject/multis.py,sha256=PYy60YK-FMhSo6ukppcyFx3WBG6UazhrWY93leJW1xQ,1634
103
117
  omlish/inject/overrides.py,sha256=k-WjyslF-pZmsYwzrDDsFNgqcl0Ao3CufHCoN0LDCAU,391
104
118
  omlish/inject/private.py,sha256=brBCsI-lZHPoouAij7_Eja44nkT-HxweG6eSVIhtXMA,592
105
- omlish/inject/providers.py,sha256=VKc2vKiJN4GdWn7Vp1Su3zTBZe2PnH0h256qusrHMnU,1999
106
- omlish/inject/proxy.py,sha256=4ACSV3iy0lIbMvM3dZUCG6BnmmOTAVqA4mvjRxlcdX8,1634
107
- omlish/inject/scopes.py,sha256=hecYiZwZ3H31cnTgfP01-duTM8OgllwxtvQKpzyHDSU,2033
108
- omlish/inject/types.py,sha256=CP3ltWxRtmR2Iqz1Qd7CvaTHQYV4st5FPiNDBN8tmn0,235
119
+ omlish/inject/providers.py,sha256=XfdwI-puW9kCBuZb4ARmjrMDAprytrgOWcTQ-GSH8hk,2025
120
+ omlish/inject/scopes.py,sha256=J57bdqpsfRfkZfwnUZxkKmS4vrdz9qKpzZDQJ3n-6tY,2049
121
+ omlish/inject/types.py,sha256=miEDsShQ-5syB53KeR4PbG3X6VOsXll5fjZuRh3ERDw,183
109
122
  omlish/inject/impl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
110
123
  omlish/inject/impl/bindings.py,sha256=8H586RCgmvwq53XBL9WMbb-1-Tdw_hh9zxIDCwcHA1c,414
111
- omlish/inject/impl/elements.py,sha256=f_eGd-AbyBO0g7Qsu8gA-IKPVKWSUOZcD2MbXxISXoE,4898
112
- omlish/inject/impl/injector.py,sha256=DeweCOLcij_kYkY1g6i3gjcJ2FSTAe83fO4vnbX7Qmo,5639
124
+ omlish/inject/impl/elements.py,sha256=tXtLqutL2KJEzmttNo9MukJAK3F0viNsPEgLj2qd-BQ,5107
125
+ omlish/inject/impl/injector.py,sha256=9zePrgMII0NepJrDtDrONI777cMyAhiU0CmE5170b2U,5715
113
126
  omlish/inject/impl/inspect.py,sha256=ZQScAStbjWi_5InA6M52ll3cdyfPRuLwYo6kc4kFsmM,2525
127
+ omlish/inject/impl/multis.py,sha256=rRIWNCiTGaSWQUz_jxEy8LUmzdJDAlG94sLHYDS-ncg,2048
114
128
  omlish/inject/impl/private.py,sha256=MiYvs-EiFrla4FQnoqmqGpYx784ij33p0obAS57HOCQ,2611
115
- omlish/inject/impl/providers.py,sha256=m0c9AAY849P6egYBOsSCkSoSBc8So7Zbmlo6gZwzTIw,3302
116
- omlish/inject/impl/scopes.py,sha256=itwf_r8hhiYZVHHAzAvAEKRza4M2ST8LJJLOHrhSM2c,5711
117
- omlish/lang/__init__.py,sha256=mqnnt6K54ROzSLWVJZrLz51ufcSM66RUy9jPtczjegI,2768
129
+ omlish/inject/impl/providers.py,sha256=QnwhsujJFIHC0JTgd2Wlo1kP53i3CWTrj1nKU2DNxwg,2375
130
+ omlish/inject/impl/proxy.py,sha256=1ko0VaKqzu9UG8bIldp9xtUrAVUOFTKWKTjOCqIGr4s,1636
131
+ omlish/inject/impl/scopes.py,sha256=M9-5RceNCz1bHMqBNf1xO0obxck0mVpJ0R4oy4NgGA0,5712
132
+ omlish/lang/__init__.py,sha256=hfJ1tLMZpZfBTq7Wj6d_EOjd-3b3BE3V6ehp1hyD7jY,2843
118
133
  omlish/lang/cached.py,sha256=MgBHfT83Rrl8tFr98hGBgEeA3ugse077_w6n3S35QYM,7603
119
134
  omlish/lang/clsdct.py,sha256=LXwLCULeI_8Np-7-pZkyNAHpUZLcQiBEQiHwKYQ0WRo,1742
120
135
  omlish/lang/cmp.py,sha256=5vbzWWbqdzDmNKAGL19z6ZfUKe5Ci49e-Oegf9f4BsE,1346
121
- omlish/lang/contextmanagers.py,sha256=bbtQM8qK8dXAiGzNHdpXfIqFTyr9i5cgxeI5PoD6x60,6071
122
- omlish/lang/datetimes.py,sha256=vZ-wZXcQUuYKv59FcWfBD36d5DiHUDG5nIPW8-nhYng,2022
136
+ omlish/lang/contextmanagers.py,sha256=VuadG_0cDAjPXtC1JiaB2jWlsv-mr2jMT5gkpODvS7c,8298
137
+ omlish/lang/datetimes.py,sha256=fqpgW5lF1oRYbzmrHvh-rNKKH1gRe5KTdYm0yNNmma0,2088
123
138
  omlish/lang/descriptors.py,sha256=dJ5wQlKK3H-gyddFnmDO8_IOQ290SR7VxFyF-RdV2FE,2056
124
139
  omlish/lang/exceptions.py,sha256=qJBo3NU1mOWWm-NhQUHCY5feYXR3arZVyEHinLsmRH4,47
125
- omlish/lang/functions.py,sha256=wN21Uyxt4zmT4MH6VWNsKsf8-oBphvVW-cd8KQXwfJs,3858
126
- omlish/lang/imports.py,sha256=f_Dqv4aMasl_UiEc3CJ-4t-cRaRjkUtFzfofNbDrn7M,4093
140
+ omlish/lang/functions.py,sha256=gowqmjGshjToExtmThusVoplU_HVAO8_h243L38ezcE,4052
141
+ omlish/lang/imports.py,sha256=QjqGP3le0XbptADTfyeT9Rj9d8ssN71yycGpfbHuj6o,4248
127
142
  omlish/lang/iterables.py,sha256=_WK-AvXOUUVOk5073uqCKc48vH8uXI_vNV5o5OOgiUU,1034
128
143
  omlish/lang/maybes.py,sha256=J2N3IDOnSSeGbrN342ln2adt0TDpz2SkyCIiZ0pVRDQ,3425
129
144
  omlish/lang/objects.py,sha256=TAD84PYsD0cGtaQpqo3fQSm99tP4-hckixkQ_K_Iaic,2820
@@ -131,24 +146,24 @@ omlish/lang/resolving.py,sha256=UgrX-vxXtCGGEmnAMUYP4bUZ6-Ok0EcHVEKAZYbAS-o,1597
131
146
  omlish/lang/strings.py,sha256=wdLo3m9GkV76ZKak3QqtwiR6rWqUd1XlZ-divZppcek,2372
132
147
  omlish/lang/sys.py,sha256=Q316Bzy9cC6bFwztkgpc8CKnsCaz4ldYvjIGpTXlxf4,145
133
148
  omlish/lang/timeouts.py,sha256=vECdWYhc_IZgcal1Ng1Y42wf2FV3KAx-i8As-MgGHIQ,1186
134
- omlish/lang/typing.py,sha256=pN7Eh8X-1iDqaZ_nZQJaheHBYdkuYTSs0yCN0LcKfDU,2341
149
+ omlish/lang/typing.py,sha256=m9I4I0jp3wMZWXHXxNQm93NSa2ucfQRZaU96i8ArRBc,2358
135
150
  omlish/lang/classes/__init__.py,sha256=j1p0_uuMznKrY2EhMoj20uv6vx4LXljMzp7AaKe0mmU,530
136
151
  omlish/lang/classes/abstract.py,sha256=goIV14oY24EOs88eVe6E6NyrSPOOLMOcWTXTMuYKiqc,2304
137
- omlish/lang/classes/restrict.py,sha256=Fb18KwWo-o7N0OEXpomzsdQpQvJZIK_dAf4d4oAiTsk,3108
152
+ omlish/lang/classes/restrict.py,sha256=XMYHtp3g5NwGAObN03ts_JijyzWXKDCl1dgc1JFKFJk,3116
138
153
  omlish/lang/classes/simple.py,sha256=p30A4dJxXrtG3ztRF50uBZoBwt84hMqOt_c7cyNx5ec,2672
139
- omlish/lang/classes/virtual.py,sha256=hEVeosXKwG4sK_9dqBoNjkK2jF2mV9QoZGOtLqg7L_Q,3315
154
+ omlish/lang/classes/virtual.py,sha256=54D4qOpDWHpP28Oc6bbBjdxquLvdvqMqLXj2XOnAeaQ,3323
140
155
  omlish/logs/__init__.py,sha256=V8jEdb5rj9Dli0b9qtR0ZYstRoIlxWqbU38UmEOXbfY,419
141
156
  omlish/logs/_abc.py,sha256=UgrCUQVUi_PvT3p1CEkb3P74CFrFcZq2AFby3GEUv9M,5974
142
157
  omlish/logs/configs.py,sha256=vW4QMZKqeEBbtQY0JEi-VKBIt0CuLgcGDgG8aTlgmC0,1762
143
158
  omlish/logs/filters.py,sha256=dk-_sRQhp_rCGF48qpPj5viHOBEOu78quXe9pHHs78c,187
144
159
  omlish/logs/formatters.py,sha256=sFboMGuDdK-FuLc13KJ0gexvLrPz2nuzlajGiStVRQw,1905
145
- omlish/logs/utils.py,sha256=xDSt0bMv9VPPsMxHGQNG5mPw53VgmC9u2biBi9ghr34,392
160
+ omlish/logs/utils.py,sha256=MgGovbP0zUrZ3FGD3qYNQWn-l0jy0Y0bStcQvv5BOmQ,391
146
161
  omlish/marshal/__init__.py,sha256=8kNPJUBApx6pt2-M3wiaC0o3JXF-c9nu8MUZ_h_fg4E,821
147
162
  omlish/marshal/any.py,sha256=uWGEeBWaJvh5hjaGKIBL0ogGCg1jKH0Rq_onECYpHVs,821
148
163
  omlish/marshal/base.py,sha256=w1zfL-eU5ZvVsoPWOwy_P8qi3VcxgI4I_3NuHNFUeww,5124
149
164
  omlish/marshal/base64.py,sha256=kdkkFXjYaKx6iHxMM_7vYfaX-KUM3wXN3vzsOmBbou4,863
150
165
  omlish/marshal/dataclasses.py,sha256=uTjpSxRtVJLWJr5-Bmb_PMGpRhr2gJjaL3oR2pToR1I,3522
151
- omlish/marshal/datetimes.py,sha256=5q1CQEadI5OMDYrToHNrl3NyIuD_0GAohCgKU-HjkEs,2287
166
+ omlish/marshal/datetimes.py,sha256=ANTgeUm8AuTKoxW6fLkwvsRPPBoUtAD6mfrOS5f4Xuc,2314
152
167
  omlish/marshal/enums.py,sha256=xItDDXHoIsCL_wnhRZmTpK1zy6P0dYouOcbfPGFvyxE,1224
153
168
  omlish/marshal/exceptions.py,sha256=5ub1eA0Wfd3gs8mT8XbPvPdqMVFUoCJfxvgbIjI5Uo0,142
154
169
  omlish/marshal/factories.py,sha256=4Vt5Vr4r_toZQHGt_fTmcmG-gJoaZcpr6GJMU1P2lhA,2932
@@ -171,25 +186,27 @@ omlish/sql/asyncs.py,sha256=Wye3dwh7oZEGYz2Y4DZQSHtW4xjI2AH5qjW-BSS2IfU,3688
171
186
  omlish/sql/dbs.py,sha256=JxcJm3JIcsb7i-t9L0KU9WhAc26QsKUL6ZL6puy3IXI,1763
172
187
  omlish/testing/__init__.py,sha256=l13axR7dyVE9T1e6w1pMYtAkW3vS2J97nBcYQ1FUv18,136
173
188
  omlish/testing/pydevd.py,sha256=xOeAithe-XMiwhc0sqnmVe4FRfr2DOkKVgSH0jp5C0U,6352
174
- omlish/testing/testing.py,sha256=TaLELNrPx42_-EEqJygDYyQOtEdjXP4KqgLGu6juHmU,2470
175
- omlish/testing/pytest/__init__.py,sha256=diebkOX565JdY7HIDMJVLlj3pcFnlK-spv6YIlD77oA,176
176
- omlish/testing/pytest/helpers.py,sha256=DKZXQGqKpDiQAh0SuYrzvJ8usJbTnuVQFDpuDmQD_Oc,912
189
+ omlish/testing/testing.py,sha256=p1bP9fnxmYzOvPJ_7S1wq7PrKMzclK8PgYH5DwaQiHk,2918
190
+ omlish/testing/pytest/__init__.py,sha256=hTW1rBfdBWP1STliyHPw2-2dT0hKdrkJCIFGU1JGdO8,246
191
+ omlish/testing/pytest/helpers.py,sha256=TJpD60mBtLi9FtxX4TThfuXvg5FIRPSiZk1aeRwe-D4,197
192
+ omlish/testing/pytest/marks.py,sha256=2WJ0Kk4Rs1rntxbIENBjU3MtSkMmyr4ujTtomjdG_1Q,1376
177
193
  omlish/testing/pytest/inject/__init__.py,sha256=pdRKv1HcDmJ_yArKJbYITPXXZthRSGgBJWqITr0Er38,117
178
- omlish/testing/pytest/inject/harness.py,sha256=-zeQIeD9NvpTo9DNbkb_jv_dPMrSCUbj8UDQrZ4cCPs,5042
179
- omlish/testing/pytest/plugins/__init__.py,sha256=BVXbNpxBMvncdMoyfuVAnnV9DqCdvrICC5zY6bzYVDQ,374
194
+ omlish/testing/pytest/inject/harness.py,sha256=E5nayIma7dkHsZAKRtxj_IZXnQ5xBAjYZcRinoV0SjI,5042
195
+ omlish/testing/pytest/plugins/__init__.py,sha256=0AeGnffmW7LoUnA6MxTNekOXPKQguH4yXb08YEStiW4,393
180
196
  omlish/testing/pytest/plugins/_registry.py,sha256=IK04KlBgiOJxKAyCCgjpX2R-9tE-btalYJkgjLc8Te8,77
181
197
  omlish/testing/pytest/plugins/logging.py,sha256=1zs6Xe54wiaSjabCviaFXwKkoN97CKm3mA5mEoUeJGs,380
198
+ omlish/testing/pytest/plugins/managermarks.py,sha256=pDEcCNdDAcTS4jjZHSnAfmzqMJDBcJcSsM3QNhbJ6Gs,1485
182
199
  omlish/testing/pytest/plugins/pydevd.py,sha256=xCBAbBmn-WGwSzLCgUZlAXM6c0fWChydoUf2Lr5SERg,314
183
200
  omlish/testing/pytest/plugins/repeat.py,sha256=flSQzE9GFOWksVKz-mUGnpxJpv3yRqn1G4K8pW7JHs0,498
184
201
  omlish/testing/pytest/plugins/skips.py,sha256=EoZDg1uWccgbAegmzqI85c7RliycD1e2J4Y7vfDRhwM,1041
185
202
  omlish/testing/pytest/plugins/spacing.py,sha256=JQQhi9q3c523Ro1a_K_9RGAb7HotiO74N8bYX2VESFE,707
186
203
  omlish/testing/pytest/plugins/switches.py,sha256=qeCp3aDtZjnh6-po1FU4JEKCrR97q0MI9nJmIF_LRkg,1809
187
204
  omlish/text/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
188
- omlish/text/delimit.py,sha256=gAdbVES35IT-maH_M084SJEaf1LRoyXG8Z3pIS6OSCI,4878
205
+ omlish/text/delimit.py,sha256=ubPXcXQmtbOVrUsNh5gH1mDq5H-n1y2R4cPL5_DQf68,4928
189
206
  omlish/text/indent.py,sha256=6Jj6TFY9unaPa4xPzrnZemJ-fHsV53IamP93XGjSUHs,1274
190
207
  omlish/text/parts.py,sha256=KGgo0wHOIMVMZtDso-rhSWKAcAkYAH2IGpg9tULabu8,6505
191
- omlish-0.0.0.dev4.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
192
- omlish-0.0.0.dev4.dist-info/METADATA,sha256=nuRX2RRNrFfyR75hu2D3EK0MrAlueKOhq6dBz6khV-o,1058
193
- omlish-0.0.0.dev4.dist-info/WHEEL,sha256=Wyh-_nZ0DJYolHNn1_hMa4lM7uDedD_RGVwbmTjyItk,91
194
- omlish-0.0.0.dev4.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
195
- omlish-0.0.0.dev4.dist-info/RECORD,,
208
+ omlish-0.0.0.dev5.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
209
+ omlish-0.0.0.dev5.dist-info/METADATA,sha256=iNsf7d5t_JCAX1U6uE4b2QaWWCIOR1mRdgdTcmwpozc,1058
210
+ omlish-0.0.0.dev5.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
211
+ omlish-0.0.0.dev5.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
212
+ omlish-0.0.0.dev5.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (71.1.0)
2
+ Generator: setuptools (72.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5