sysnet-pyutils 1.2.0__py3-none-any.whl → 1.2.1__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.
sysnet_pyutils/ident.py CHANGED
@@ -9,6 +9,7 @@
9
9
  # -------------------------------------------------------------------------------
10
10
  import os
11
11
  import uuid
12
+ from typing import Optional
12
13
 
13
14
  import sysnet_pyutils.barcode as barcode
14
15
 
@@ -53,7 +54,7 @@ def generate_tiny_uuid():
53
54
  return out[-ID_LENGTH:]
54
55
 
55
56
 
56
- def generate_id12(three_char_prefix: str) -> str:
57
+ def generate_id12(three_char_prefix: Optional[str]) -> str:
57
58
  """
58
59
  Vygeneruje 12místný alfanumerický identifikátor s pevným prefixem
59
60
 
@@ -105,7 +106,7 @@ def correct_pid(pid: str) -> str:
105
106
 
106
107
  def generate_pid() -> str:
107
108
  """
108
- Vybeneruje nový PID
109
+ Vygeneruje nový PID
109
110
 
110
111
  :return: PID
111
112
  """
sysnet_pyutils/utils.py CHANGED
@@ -7,7 +7,7 @@ import secrets
7
7
  import sys
8
8
  import traceback
9
9
  from datetime import datetime, timedelta, date
10
- from typing import Tuple, Union, List, Any
10
+ from typing import Tuple, Union, List, Any, Optional
11
11
  from urllib.parse import quote
12
12
  from uuid import UUID, uuid4, uuid1
13
13
 
@@ -16,7 +16,7 @@ import pytz
16
16
  import xmltodict
17
17
  import yaml
18
18
 
19
- from sysnet_pyutils.ident import generate_pid, check_pid, correct_pid, generate_id12
19
+ from sysnet_pyutils.ident import generate_pid, check_pid, correct_pid, generate_id12, PID_PREFIX
20
20
 
21
21
  TZ = os.getenv('TZ', 'Europe/Prague')
22
22
  DEBUG = os.getenv("DEBUG", 'True').lower() in ('true', '1', 't')
@@ -177,6 +177,10 @@ def api_keys_init(agenda: str='main', amount: int =4) -> List[dict]:
177
177
  return out
178
178
 
179
179
 
180
+ def uuid_factory():
181
+ return str(uuid4())
182
+
183
+
180
184
  def uuid_next(uuid_type: int = 4) -> UUID:
181
185
  """
182
186
  Vygeneruje UUID
@@ -191,6 +195,13 @@ def uuid_next(uuid_type: int = 4) -> UUID:
191
195
  return out
192
196
 
193
197
 
198
+ def pid_factory(prefix=None) -> str:
199
+ p = PID_PREFIX
200
+ if prefix not in [None, ''] and len(prefix) > 2:
201
+ p = prefix[:3].upper()
202
+ return generate_id12(three_char_prefix=p)
203
+
204
+
194
205
  def pid_next() -> str:
195
206
  """
196
207
  Vygeneruje korektní PID
@@ -865,7 +876,7 @@ def timestamp(local=False) -> str:
865
876
  return out.strftime('%Y%m%d%H%M%S')
866
877
 
867
878
 
868
- def local_datetime(value=None) -> datetime:
879
+ def local_datetime(value=None) -> Optional[datetime]:
869
880
  """
870
881
  Vrací datum a čas v lokální
871
882
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sysnet-pyutils
3
- Version: 1.2.0
3
+ Version: 1.2.1
4
4
  Summary: Python Utilities
5
5
  Author-email: Data Developer <info@sysnet.cz>
6
6
  Project-URL: Homepage, https://github.com/SYSNET-CZ/pyutils
@@ -11,7 +11,7 @@ Classifier: License :: Free For Home Use
11
11
  Classifier: Natural Language :: Czech
12
12
  Classifier: Operating System :: OS Independent
13
13
  Classifier: Topic :: Software Development :: Libraries
14
- Requires-Python: >=3.9
14
+ Requires-Python: >=3.10
15
15
  Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
17
  Requires-Dist: PyYAML>=6.0.1
@@ -3,15 +3,15 @@ sysnet_pyutils/barcode.py,sha256=5dM1ISvVVP966JQxGiZBUYJoPx_jgzWEpEQ2uIOxTd4,262
3
3
  sysnet_pyutils/data_utils.py,sha256=foePXYsPJyl7zdzb4RENO937uNV5G05GdW_En6ql4kw,9673
4
4
  sysnet_pyutils/domino.py,sha256=dGmg9d1PMPOyA_ysXBHVu_zabKGCJEuno3Yw3DexExQ,2671
5
5
  sysnet_pyutils/geo.py,sha256=smAkRfobvKqjr3_UIjU5huDbnkb3_edD_xmv4R0r5Q0,2938
6
- sysnet_pyutils/ident.py,sha256=GyNPF_LNqssMtMzuegpL1GK-0B-ysDiH18kYAdiE2hg,2807
6
+ sysnet_pyutils/ident.py,sha256=OkGne8xLEFd2zNdIm7HTPJ_K-fIN9rz7tOR-H0PWDRE,2845
7
7
  sysnet_pyutils/log.py,sha256=SFuCPvFTg31LFvnyG24hCTe73FonfS0_FaAHRBhEvlw,2165
8
8
  sysnet_pyutils/ses.py,sha256=WJzs0y2QnF4XGDGjls_W0p0v6DJ4fZ4_97m3XbzpaFw,2713
9
9
  sysnet_pyutils/tools.py,sha256=ZioHvUIufrhuJyZLdPnuMUD8Li5LTljSMSCxqRnKIi4,377
10
- sysnet_pyutils/utils.py,sha256=Y95MyEuZlSlTVsQ2rOArdkTN7xqcGsCA7RA6VoBHSSk,23257
10
+ sysnet_pyutils/utils.py,sha256=4dOqlP8JhKaIzWlbYw4PLckBf1SigBJK-MzK1EWTgYk,23523
11
11
  sysnet_pyutils/models/__init__.py,sha256=oozOr_DKhenkM9BDaPOmtbLXhP5vtMUCjBPEjZDW4GQ,167
12
12
  sysnet_pyutils/models/general.py,sha256=cvAO-_RxZVv_It2rLRFiFEJCYEwApggqIG9KMKDDKhc,15928
13
- sysnet_pyutils-1.2.0.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
14
- sysnet_pyutils-1.2.0.dist-info/METADATA,sha256=36GuWVJDlPDCjXLah-tppvSTg_RSeb4VBreVDwq1yp0,15284
15
- sysnet_pyutils-1.2.0.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
16
- sysnet_pyutils-1.2.0.dist-info/top_level.txt,sha256=ZKTltQWbLlWBXw4oovo1w7ui-JQ1WoyECqMSWdBj6XE,15
17
- sysnet_pyutils-1.2.0.dist-info/RECORD,,
13
+ sysnet_pyutils-1.2.1.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
14
+ sysnet_pyutils-1.2.1.dist-info/METADATA,sha256=IQl54ywb0jyWSVeJ2yu4bHYMBwGeB2UtunTubtErSxM,15285
15
+ sysnet_pyutils-1.2.1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
16
+ sysnet_pyutils-1.2.1.dist-info/top_level.txt,sha256=ZKTltQWbLlWBXw4oovo1w7ui-JQ1WoyECqMSWdBj6XE,15
17
+ sysnet_pyutils-1.2.1.dist-info/RECORD,,