pyegeria 5.4.4.1__py3-none-any.whl → 5.4.4.3__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 pyegeria might be problematic. Click here for more details.

pyegeria/utils.py CHANGED
@@ -57,70 +57,6 @@ def print_guid_list(guids):
57
57
  #
58
58
 
59
59
 
60
- def print_response(response):
61
- """
62
-
63
- Args:
64
- response:
65
-
66
- Returns:
67
- : str
68
- """
69
- pretty_response = json.dumps(response.json(), indent=4)
70
- print(" ")
71
- print("Response: ")
72
- print(pretty_response)
73
- print(" ")
74
-
75
-
76
- def print_unexpected_response(server_name, platform_name, platform_url, response):
77
- """
78
-
79
- Args:
80
- server_name:
81
- platform_name:
82
- platform_url:
83
- response:
84
- """
85
- if response.status_code == 200:
86
- related_http_code = response.json().get("related_http_code")
87
- if related_http_code == 200:
88
- print("Unexpected response from server " + server_name)
89
- print_response(response)
90
- else:
91
- exceptionErrorMessage = response.json().get("exceptionErrorMessage")
92
- exceptionSystemAction = response.json().get("exceptionSystemAction")
93
- exceptionUserAction = response.json().get("exceptionUserAction")
94
- if exceptionErrorMessage is not None:
95
- print(exceptionErrorMessage)
96
- print(" * " + exceptionSystemAction)
97
- print(" * " + exceptionUserAction)
98
- else:
99
- print("Unexpected response from server " + server_name)
100
- print_response(response)
101
- else:
102
- print(
103
- "Unexpected response from server platform "
104
- + platform_name
105
- + " at "
106
- + platform_url
107
- )
108
- print_response(response)
109
-
110
-
111
- def get_last_guid(guids):
112
- """
113
-
114
- Args:
115
- guids:
116
-
117
- Returns:
118
-
119
- """
120
- if guids is None:
121
- return None
122
- else:
123
- return guids[-1]
124
60
 
125
61
 
126
62
  def body_slimmer(body: dict) -> dict:
@@ -246,11 +182,126 @@ def flatten_dict_to_string(d: dict) -> str:
246
182
  # The decorator logic, which applies @logger.catch dynamically
247
183
 
248
184
 
185
+ import json
186
+ import re
187
+
188
+
189
+ # def parse_to_dict(input_str: str):
190
+ # """
191
+ # Check if a string is valid JSON or a name:value list without braces and convert to a dictionary.
192
+ #
193
+ # Args:
194
+ # input_str: The input string to parse.
195
+ #
196
+ # Returns:
197
+ # dict: A dictionary converted from the input string.
198
+ # None: If the input is neither valid JSON nor a valid name:value list.
199
+ # """
200
+ #
201
+ # if input_str is None:
202
+ # return None
203
+ #
204
+ # # Check if the input string is valid JSON
205
+ # try:
206
+ # result = json.loads(input_str)
207
+ # if isinstance(result, dict): # Ensure it's a dictionary
208
+ # return result
209
+ # except json.JSONDecodeError:
210
+ # pass
211
+ #
212
+ # # Check if input string looks like a name:value list
213
+ # # Supports both comma and newline as separators
214
+ # pattern = r'^(\s*("[^"]+"|\'[^\']+\'|[a-zA-Z0-9_-]+)\s*:\s*("[^"]+"|\'[^\']+\'|[a-zA-Z0-9 _-]*)\s*)' \
215
+ # r'(\s*[,|\n]\s*("[^"]+"|\'[^\']+\'|[a-zA-Z0-9_-]+)\s*:\s*("[^"]+"|\'[^\']+\'|[a-zA-Z0-9 _-]*)\s*)*$'
216
+ # if re.match(pattern, input_str.strip()):
217
+ # try:
218
+ # # Split by ',' or '\n' and process key-value pairs
219
+ # pairs = [pair.split(":", 1) for pair in re.split(r'[,|\n]+', input_str.strip())]
220
+ # return {key.strip().strip('\'"'): value.strip().strip('\'"') for key, value in pairs}
221
+ # except Exception:
222
+ # return None
223
+ #
224
+ # # If neither pattern matches, return None
225
+ # return None
226
+
227
+
228
+ def parse_to_dict(input_str: str) -> dict | None:
229
+ """
230
+ Parse input strings into a dictionary, handling both JSON and key-value pairs.
231
+ Recovers from malformed JSON (e.g., where commas are missing between key-value pairs)
232
+ and supports multiline values.
233
+
234
+ Args:
235
+ input_str (str): The input string to parse.
236
+
237
+ Returns:
238
+ dict: A parsed dictionary if validation is successful, or None if the string cannot be parsed.
239
+ """
240
+ if not input_str:
241
+ return None
242
+
243
+ # Attempt to parse valid JSON
244
+ try:
245
+ result = json.loads(input_str)
246
+ if isinstance(result, dict):
247
+ return result
248
+ except json.JSONDecodeError:
249
+ pass
250
+
251
+ # Fix malformed JSON or attempt alternate parsing for "key: value" patterns
252
+ try:
253
+ # Step 1: Inject missing commas where they are omitted between key-value pairs
254
+ fixed_input = re.sub(
255
+ r'("\s*:[^,}\n]+)\s*("(?![:,}\n]))', # Find missing commas (key-value-value sequences)
256
+ r'\1,\2', # Add a comma between the values
257
+ input_str
258
+ )
259
+
260
+ # Attempt to parse the fixed string as JSON
261
+ try:
262
+ result = json.loads(fixed_input)
263
+ if isinstance(result, dict):
264
+ return result
265
+ except json.JSONDecodeError:
266
+ pass
267
+
268
+ # Step 2: Handle key-value format fallback (supports multiline strings)
269
+ # Matches `key: value` pairs, including multiline quoted values
270
+ key_value_pattern = re.compile(r'''
271
+ (?:"([^"]+)"|'([^']+)'|([a-zA-Z0-9_-]+)) # Key: quoted "key", 'key', or unquoted key
272
+ \s*:\s* # Key-value separator
273
+ (?:"((?:\\.|[^"\\])*?)"|'((?:\\.|[^'\\])*?)'|([^\n,]+)) # Value: quoted or unquoted
274
+ ''', re.VERBOSE | re.DOTALL)
275
+
276
+ matches = key_value_pattern.findall(input_str)
277
+
278
+ # Build dictionary from matches
279
+ result_dict = {}
280
+ for match in matches:
281
+ key = next((group for group in match[:3] if group), "").strip()
282
+ value = next((group for group in match[3:] if group), "").strip()
283
+ result_dict[key] = value
284
+
285
+ if result_dict:
286
+ return result_dict
287
+ except Exception as e:
288
+ # Log or handle parsing exception if needed
289
+ pass
290
+
291
+ # If all parsing attempts fail, return None
292
+ return None
293
+
294
+
249
295
  def dynamic_catch(func: T) -> T:
250
296
  if app_settings.get("enable_logger_catchh", False):
251
297
  return logger.catch(func) # Apply the logger.catch decorator
252
298
  else:
253
299
  return func # Return the function unwrapped
254
300
 
301
+ def make_format_set_name_from_type(obj_type: str)-> str:
302
+ formatted_name = obj_type.replace(" ", "-")
303
+ return f"{formatted_name}-DrE"
304
+
305
+
255
306
  if __name__ == "__main__":
256
307
  print("Main-Utils")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyegeria
3
- Version: 5.4.4.1
3
+ Version: 5.4.4.3
4
4
  Summary: A python client for Egeria
5
5
  License: Apache 2.0
6
6
  Keywords: egeria,metadata,governance
@@ -22,7 +22,7 @@ commands/cat/list_deployed_catalogs.py,sha256=VdN6R9kRVWX-fGIgubOigvMVPzhF-hKQep
22
22
  commands/cat/list_deployed_database_schemas.py,sha256=1Qicke1R2_7Xi3Qf5sp8KJ3_reAIt0z1iaz2sG8Z0Qs,9458
23
23
  commands/cat/list_deployed_databases.py,sha256=ryrBW1CxJRfOeLP978qQwxb5oImqhIsHghtcpWeBIrw,7587
24
24
  commands/cat/list_deployed_servers.py,sha256=_xR7EaaCsxIjTphxmoCZlARoja_vQqZ881pFiEuhw-8,5719
25
- commands/cat/list_format_set.py,sha256=D6SExBioc357H21Eetx8SAF8yQY9fIUkNta8kPIsDXU,19088
25
+ commands/cat/list_format_set.py,sha256=5PFkEO_YmnQ89PAVIJFBSAyHXMBa6zIpcrK6I9Fm6fc,19286
26
26
  commands/cat/list_glossaries.py,sha256=ilac-SpeizOV78-OWgPLY-Xew5RTd4TjRgtdYNFfH_w,7623
27
27
  commands/cat/list_projects.py,sha256=NzWTuepTGUEyxK-eWvuUxtBgCtNWubVwmz2eqm2UN1c,7997
28
28
  commands/cat/list_tech_type_elements.py,sha256=-9omj5en9dSP1xMSljYVHyfXsuhuE1bO2IFj_bZPhAs,6873
@@ -231,7 +231,7 @@ md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/hooks/pre-receive.sa
231
231
  md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/hooks/prepare-commit-msg.sample,sha256=6d3KpBif3dJe2X_Ix4nsp7bKFjkLI5KuMnbwyOGqRhk,1492
232
232
  md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/hooks/push-to-checkout.sample,sha256=pT0HQXmLKHxt16-mSu5HPzBeZdP0lGO7nXQI7DsSv18,2783
233
233
  md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/hooks/update.sample,sha256=jV8vqD4QPPCLV-qmdSHfkZT0XL28s32lKtWGCXoU0QY,3650
234
- md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/index,sha256=LdPFx0lQBswU0VfFT9Ca8qTtLJhXLbTh1SxfEq5Deww,1234
234
+ md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/index,sha256=3bDRES8J2OkinHm-kuFJlTKlQujc_6CZFyXt89nCclE,1234
235
235
  md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/info/exclude,sha256=ZnH-g7egfIky7okWTR8nk7IxgFjri5jcXAbuClo7DsE,240
236
236
  md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/logs/HEAD,sha256=OG2VAYp_x-p2OasX4aK8nbMkys1OSH-8X8nWwGWOPd4,216
237
237
  md_processing/.obsidian/plugins/obsidian-sample-plugin/.git/logs/refs/heads/master,sha256=OG2VAYp_x-p2OasX4aK8nbMkys1OSH-8X8nWwGWOPd4,216
@@ -4294,25 +4294,24 @@ md_processing/data/generated_format_sets.py,sha256=ZUWlUi5BHdetUQP-Hx8nQqzd3mCEu
4294
4294
  md_processing/dr_egeria.py,sha256=OlzP8LkXqZ79lxsWOnz8zOpcOdhpLp7m_PDE0fi-YPs,19963
4295
4295
  md_processing/dr_egeria_inbox/glossary_creation_experiment.ipynb,sha256=dbzNu90fCKNohOWVSRBOB1GLyd95x8Qw51I5AkaPtso,11552
4296
4296
  md_processing/md_commands/__init__.py,sha256=ssEojzFlSYtY2bHqqOoKo8PFaANZ_kq_gIbtlXnuc2s,93
4297
- md_processing/md_commands/data_designer_commands.py,sha256=oUXM6wvyictQZVzSH43GJdmy5Zm7nWogWuoCNo8Yskw,64389
4298
- md_processing/md_commands/ext_ref_commands.py,sha256=uxVMz3QSJbMxMVYYaDQs9YlBH65Jsw0Wa0oJFcn5GnQ,24546
4299
- md_processing/md_commands/glossary_commands.py,sha256=BEWcJYCWybTvbqcZD7_IFbBKiMpX6b55avrn1nckqO4,33811
4300
- md_processing/md_commands/governance_officer_commands.py,sha256=NCYrx6k1q_duVoF0bMdbyLMjHOn7Xvc0-c50a4NWcGA,21990
4301
- md_processing/md_commands/old_solution_architect_commands.py,sha256=Hk-_-2aJWoG8LYzTmf84z3rakN9kIQWEM9HM9_lz6xw,55157
4302
- md_processing/md_commands/product_manager_commands.py,sha256=aLagu4Tljd0gITdmvxXIe_sMGcJVkNTrncigG5TXFmo,45749
4303
- md_processing/md_commands/project_commands.py,sha256=s9-n_a0lUU-oAZMYeaW6Nq_Tii9nG4hVIuBuf3q-heI,17762
4297
+ md_processing/md_commands/data_designer_commands.py,sha256=cT2godlpPS5vbWvpZbzTDlTMjZFPm8ggKTER0U0yb7U,65116
4298
+ md_processing/md_commands/ext_ref_commands.py,sha256=YPoEm_gitLvJXr7E4-9feLNpnoLnjSamti_lxlIoO5k,24675
4299
+ md_processing/md_commands/glossary_commands.py,sha256=IOQxXxmyhwPAAZy1jha91qhXQBqzhhxUFDuVj6QkRbA,33970
4300
+ md_processing/md_commands/governance_officer_commands.py,sha256=IRCh0HOuz8C14WhZh8iooLFuUOHP6FamdzwbE28Os9s,22265
4301
+ md_processing/md_commands/product_manager_commands.py,sha256=6RCWyxfQcCw_q41bcqFswuP4fOHgm20zePzYggVWFdc,46112
4302
+ md_processing/md_commands/project_commands.py,sha256=mjBSreHVkGCluChlO_p_5cEQ0CHlG5XJ3Fo6lL9C--w,17882
4304
4303
  md_processing/md_commands/solution_architect_commands.py,sha256=4Ghb8j2wlDdWtHoSCrx5jCJFEJfqII4mnFJ_tqduRKI,52569
4305
4304
  md_processing/md_commands/view_commands.py,sha256=dvRD0Vjv1w9FTfV5W-4EMQBTk2NAUJlIP2jQ411kHS4,11815
4306
4305
  md_processing/md_processing_utils/__init__.py,sha256=LxAmxlcji26ziKV4gGar01d95gL9vgToRIeJW8N-Ifs,80
4307
- md_processing/md_processing_utils/common_md_proc_utils.py,sha256=TWQyypm9xNSf1sipnjEWQqyuaShRSldbooBBd42gODo,56637
4308
- md_processing/md_processing_utils/common_md_utils.py,sha256=dWoJEpp-yF-CPThZ1I5hMM0CSXkqfXBkgxH8rklZz8A,26452
4306
+ md_processing/md_processing_utils/common_md_proc_utils.py,sha256=wZQvmFLryko-Of-MaZ9BspejTSW27V9y6Azoaeb-w0o,58607
4307
+ md_processing/md_processing_utils/common_md_utils.py,sha256=X8Kzva-sRyM6RZ6RbkUeP4fJaVhif0q6z7WhP-hhdm8,26711
4309
4308
  md_processing/md_processing_utils/debug_log,sha256=dDkHai9YpY-9k9-DSFzbaMgZ-AavFw-Vxk2Q1r_34Ls,43746
4310
4309
  md_processing/md_processing_utils/debug_log.2025-09-09_11-10-03_528597.zip,sha256=2hK1jdCdG7aR9FPxFdtmU_OxHBNYLA2vlr-OPqR6sXs,1863
4311
4310
  md_processing/md_processing_utils/determine_width.py,sha256=nzinSuSF9SeuVOfKXsg-l1cqLkNYKZnF6HYfJpft44A,4236
4312
4311
  md_processing/md_processing_utils/dr-egeria-help-2025-09-09T11:10:03.md,sha256=x_J_baA18EsMHW_O-EZiNkXAQ3MEwta8ZLsKPil55O8,166018
4313
4312
  md_processing/md_processing_utils/dr-egeria-help-2025-09-10T14:49:49.md,sha256=qnu8YS-7Ra0GQtPPiCKb4PpQBcJAmfaG50ufFpr9b-s,175356
4314
4313
  md_processing/md_processing_utils/dr-egeria-help-2025-09-10T14:57:46.md,sha256=1gBIR4iuBsAXpGdg4nPgFHOGcLcDCZbNvvg-9cHD4fM,55188
4315
- md_processing/md_processing_utils/extraction_utils.py,sha256=bTeoiAC0DcNl5LjYuXkyk8V3cLhAshp_IFPMeROq7Qk,20930
4314
+ md_processing/md_processing_utils/extraction_utils.py,sha256=nCtsnx_iSNV-h1StZ54GQLzSIqfx3hCNnmdDTWUKC10,22350
4316
4315
  md_processing/md_processing_utils/gen_format_sets.py,sha256=R5IvrajER0Xj9kZ99UxRS5Zoa5dAVPcLwCI7kf2iUak,16476
4317
4316
  md_processing/md_processing_utils/generate_dr_help.py,sha256=MJWlr_22Y9pjWqQbfSLb6C-t1GlQNlbWXkCmDnphfME,7419
4318
4317
  md_processing/md_processing_utils/generate_md_cmd_templates.py,sha256=SVdtlA6Nc9JIN-pORGbf-_shEP7egReuVejEcMjxRYM,5797
@@ -4320,15 +4319,15 @@ md_processing/md_processing_utils/generate_md_templates.py,sha256=DMnMQ7_LbmQCS8
4320
4319
  md_processing/md_processing_utils/md_processing_constants.py,sha256=m-Vq0qPMkyF3riGcHWNid1_uRXPhCto8UdRxBKS3WvE,19458
4321
4320
  md_processing/md_processing_utils/message_constants.py,sha256=UBf18obM83umM6zplR7ychre4xLRbBnTzidHDZ2gNvM,548
4322
4321
  pyegeria/README.md,sha256=PwX5OC7-YSZUCIsoyHh1O-WBM2hE84sm3Bd4O353NOk,1464
4323
- pyegeria/__init__.py,sha256=u7tEEPU7j88Kov4SSZHTSisSHN17PID22LSpauFSX4c,11859
4322
+ pyegeria/__init__.py,sha256=XxELwaqinmpSsdHaTd-5TGKRe-3Abi220tjZ6svIhLQ,11842
4324
4323
  pyegeria/_client.py,sha256=hJHn5pD8sbelP_M9dK-M5Z2CYqpRXzXfg1UCgAdQ6dQ,33416
4325
- pyegeria/_client_new.py,sha256=-8RBlmQmrpfg7iYwah7dwO5KMntIUx4PvHQooeUVu_w,49644
4324
+ pyegeria/_client_new.py,sha256=SZJkA2HJQXBU0-DrFvqtP2yD7kH_GPjy0dRwIGn6PtE,65415
4326
4325
  pyegeria/_deprecated_gov_engine.py,sha256=dWNcwVsE5__dF2u4QiIyQrssozzzOjBbLld8MdpmVCQ,17264
4327
4326
  pyegeria/_exceptions.py,sha256=1SrnV194V4_YJNnNAU0myTHQ3dhLn4GF2B2gZcj1u90,18153
4328
4327
  pyegeria/_exceptions_new.py,sha256=srmrlqoWy7VvOJOhPcYFKW32MCIovgEg5J7PrYDxzQA,19706
4329
4328
  pyegeria/_globals.py,sha256=qSU5hM4uuJZPp-YapEEKxfcdgH9hauc6R7gRkELLroY,1132
4330
4329
  pyegeria/_output_format_models.py,sha256=p9fTYaIa5KyTMIR4-JAbE9g66_gGMPTnUqjIq20Zr1o,14494
4331
- pyegeria/_output_formats.py,sha256=nVp-4JiYdHjz-kb7Z9c1lxRpo8BpkT4m18nclxUABvw,101115
4330
+ pyegeria/_output_formats.py,sha256=LU36dzdUaNqVzQ6n0SV4tKfODcmmL2mm0-pEurCMPA4,171416
4332
4331
  pyegeria/_validators.py,sha256=pNxND0dN2qvyuGE52N74l1Ezfrh2p9Hao2ziR_t1ENI,7425
4333
4332
  pyegeria/asset_catalog_omvs.py,sha256=P6FceMP0FgakGSOt3ePxpEbsF7nnypzo1aQahjdL_94,29021
4334
4333
  pyegeria/automated_curation_omvs.py,sha256=tzwCyXL0Hx8UjryBBWcPoEuBRajXZpLuwPQ1vuOg2yc,130349
@@ -4344,11 +4343,11 @@ pyegeria/egeria_client.py,sha256=bjhdJNwzIC1lapa8a4v2cNLPWN4Nae4HIQYjqeIHr4Y,610
4344
4343
  pyegeria/egeria_config_client.py,sha256=YkgndiZ6-CfhwVeBW9ErS7l95SIrd0G9--H8kAfeBJY,2479
4345
4344
  pyegeria/egeria_my_client.py,sha256=3dSBUlrivzih75hodNHe-2BM9pGB8AQVLru-_NbhYNE,3186
4346
4345
  pyegeria/egeria_tech_client.py,sha256=TjuwE9APWQZ4cRsxM0MoVrsikF8e4vkISDt_ra93tY8,4712
4347
- pyegeria/external_references.py,sha256=XPJxE57d4e7ooasSZiYTpoppo43z1oLYvthD58__vNA,77641
4346
+ pyegeria/external_references.py,sha256=DyOmGhG0LWIN4INABCiJRrHxfZ5FWE7TFtc3S_k5iEI,74360
4348
4347
  pyegeria/feedback_manager_omvs.py,sha256=0xBs0p54vmdfVYYgQ8pOanLC4fxfgTk1Z61Y6D1U7_I,152978
4349
4348
  pyegeria/full_omag_server_config.py,sha256=CQqLCy_3DZFvJZEOcGf50HWdFaWpiAIs6z-kKyjvpDA,47464
4350
- pyegeria/glossary_manager.py,sha256=LsemH2bC1jj6mquLxZMXsoZY77D8gTdWKXNs9Gee6mQ,110173
4351
- pyegeria/governance_officer.py,sha256=3c-8PFUzWzPHc7OOX-Kt7vVaj4rSttCvOsgXSDX3POw,100217
4349
+ pyegeria/glossary_manager.py,sha256=NIq2YV-uQHuCVmylL52lI7S3YFwiC_8n7kjxIvE1uZ8,110258
4350
+ pyegeria/governance_officer.py,sha256=d-hflvrMt-7hH6j47OicoolpU8rf6uzV-IZRgWL485Y,100023
4352
4351
  pyegeria/load_config.py,sha256=XDwPAHB3MvGRuoP8kg1lJJAI4BgMWZ3TYxfxYROgJj4,1188
4353
4352
  pyegeria/load_config_orig.py,sha256=lOM37vdIBcYfLQFTLP5bDuNc7vTFGBNYPfqHtWGNvA4,11624
4354
4353
  pyegeria/logging_configuration.py,sha256=BxTQRN-7OOdk5t1f1xSn8gKU8iT-MfWEgbn6cYWrRsY,7674
@@ -4359,7 +4358,7 @@ pyegeria/mermaid_utilities.py,sha256=Zcn8JRrqtf62oHoxuvP9tQ5G-BFxOGMNfr7-peuykgY
4359
4358
  pyegeria/metadata_explorer_omvs.py,sha256=xHnZTQKbd6XwOhYia-RiIisrvZcqHi0SL1l6OCf04Gk,86911
4360
4359
  pyegeria/models.py,sha256=JX81Wfskn5G4vTXFYl9Ctk-dnr6X2zuto-4gqbuAI9Y,19963
4361
4360
  pyegeria/my_profile_omvs.py,sha256=d0oJYCJG7pS9BINPuGciVa00ac0jwPHNANXDCLginEc,34720
4362
- pyegeria/output_formatter.py,sha256=oBV9BACzE7edPY1e9PegXwZEegie4evPt_JqawrM968,41721
4361
+ pyegeria/output_formatter.py,sha256=Fvup9Z-QKsG8JII2lR4kkXwAGhkhcyCVuBkdJd8si4Y,41856
4363
4362
  pyegeria/platform_services.py,sha256=AJNa8n2mKfAMK68q886YCD-p5bpCxIlCxBsRdr0R9O4,41708
4364
4363
  pyegeria/project_manager.py,sha256=0rqR0Y-nVhtvkhXlGcSk4v1t1ImepHW34gGNXFnN7LQ,65843
4365
4364
  pyegeria/registered_info.py,sha256=y0-LgDIQXpph0lEWxIOG3_HsqX_Z2iAIb3xu4Aa4B70,6344
@@ -4367,11 +4366,11 @@ pyegeria/runtime_manager_omvs.py,sha256=bVAFJPRnIbTxdzmDHx7XgJBlyh_ZyHiKeUGqFT1O
4367
4366
  pyegeria/server_operations.py,sha256=dTqUEmX1B77b0x61OSU0aonsW8KwIpfzb3eioRpwaiI,16832
4368
4367
  pyegeria/solution_architect.py,sha256=hZQOEtenUGfTGYtI7kD0zI_Nf2IBy-RMNoasfp8BgGs,236903
4369
4368
  pyegeria/template_manager_omvs.py,sha256=chBljs1vy5wr9DRAtbvIt4Cob_7HxGfxLkCNlDTM-rQ,42755
4370
- pyegeria/utils.py,sha256=qgiYEdCRrrL6SpX1sceZQVYR40-rfFAhUJEhsubcx80,6889
4369
+ pyegeria/utils.py,sha256=xOTxk9PH8ZGZmgIwz_a6rczTVLADLEjucr10ZJTUnY4,9272
4371
4370
  pyegeria/valid_metadata_omvs.py,sha256=Xq9DqBQvBFFJzaFIRKcVZ2k4gJvSh9yeXs_j-O3vn1w,65050
4372
4371
  pyegeria/x_action_author_omvs.py,sha256=RcqSzahUKCtvb_3u_wyintAlc9WFkC_2v0E12TZs8lQ,6433
4373
- pyegeria-5.4.4.1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
4374
- pyegeria-5.4.4.1.dist-info/METADATA,sha256=YzOue9FT_FkpqffG-4ZxbbZbWq-A0lzdbjpbjz4Sxbw,6292
4375
- pyegeria-5.4.4.1.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
4376
- pyegeria-5.4.4.1.dist-info/entry_points.txt,sha256=HAS-LHaaBfkaZ19XU9g5mXwn2uj2HK99isdijI-VIDk,6353
4377
- pyegeria-5.4.4.1.dist-info/RECORD,,
4372
+ pyegeria-5.4.4.3.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
4373
+ pyegeria-5.4.4.3.dist-info/METADATA,sha256=-8F48a3OjwTXYvU8AepZ6MiZ3SNq2piVYCmu-UFiqoc,6292
4374
+ pyegeria-5.4.4.3.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
4375
+ pyegeria-5.4.4.3.dist-info/entry_points.txt,sha256=HAS-LHaaBfkaZ19XU9g5mXwn2uj2HK99isdijI-VIDk,6353
4376
+ pyegeria-5.4.4.3.dist-info/RECORD,,