medicafe 0.250806.0__tar.gz → 0.250806.1__tar.gz
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 medicafe might be problematic. Click here for more details.
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot.bat +22 -3
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/update_medicafe.py +104 -4
- {medicafe-0.250806.0 → medicafe-0.250806.1}/PKG-INFO +1 -1
- {medicafe-0.250806.0 → medicafe-0.250806.1}/medicafe.egg-info/PKG-INFO +1 -1
- {medicafe-0.250806.0 → medicafe-0.250806.1}/setup.py +1 -1
- {medicafe-0.250806.0 → medicafe-0.250806.1}/LICENSE +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MANIFEST.in +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_Charges.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_Crosswalk_Library.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_Crosswalk_Utils.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_Post.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_Preprocessor.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_Preprocessor_lib.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_UI.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_dataformat_library.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_docx_decoder.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/MediBot_smart_import.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/__init__.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/get_medicafe_version.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediBot/update_json.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/MediLink_ConfigLoader.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/__init__.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/__main__.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/api_core.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/api_core_backup.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/api_factory.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/api_utils.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/core_utils.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/graphql_utils.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/logging_config.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/logging_demo.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/migration_helpers.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediCafe/smart_import.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_837p_cob_library.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_837p_encoder.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_837p_encoder_library.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_837p_utilities.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_API_Generator.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Azure.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_ClaimStatus.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_DataMgmt.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Decoder.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Deductible.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Deductible_Validator.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Display_Utils.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Down.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Gmail.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Mailer.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Parser.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_PatientProcessor.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Scan.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Scheduler.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_UI.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_Up.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_insurance_utils.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_main.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/MediLink_smart_import.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/Soumit_api.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/__init__.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/insurance_type_integration_test.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/openssl.cnf +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/test.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/test_cob_library.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/test_timing.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/test_validation.py +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/MediLink/webapp.html +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/medicafe.egg-info/SOURCES.txt +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/medicafe.egg-info/dependency_links.txt +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/medicafe.egg-info/entry_points.txt +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/medicafe.egg-info/not-zip-safe +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/medicafe.egg-info/requires.txt +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/medicafe.egg-info/top_level.txt +0 -0
- {medicafe-0.250806.0 → medicafe-0.250806.1}/setup.cfg +0 -0
|
@@ -307,14 +307,17 @@ if "!internet_available!"=="1" (
|
|
|
307
307
|
)
|
|
308
308
|
echo 6. Run MediBot
|
|
309
309
|
echo.
|
|
310
|
-
echo 7. Open Log File
|
|
310
|
+
echo 7. Troubleshooting: Open Log File
|
|
311
311
|
echo.
|
|
312
|
-
echo 8.
|
|
312
|
+
echo 8. Troubleshooting: Clear Python Cache
|
|
313
|
+
echo.
|
|
314
|
+
echo 9. Exit
|
|
313
315
|
echo.
|
|
314
316
|
set /p choice=Enter your choice:
|
|
315
317
|
|
|
316
318
|
:: Update option numbers
|
|
317
|
-
if "!choice!"=="
|
|
319
|
+
if "!choice!"=="9" goto end_script
|
|
320
|
+
if "!choice!"=="8" goto clear_cache
|
|
318
321
|
if "!choice!"=="7" goto open_latest_log
|
|
319
322
|
if "!choice!"=="6" goto medibot_flow
|
|
320
323
|
if "!choice!"=="5" goto united_deductible
|
|
@@ -520,6 +523,22 @@ py "%python_script%" "%config_file%" "!new_csv_path!"
|
|
|
520
523
|
echo CSV Processor Complete...
|
|
521
524
|
goto :eof
|
|
522
525
|
|
|
526
|
+
:: Clear Python Cache
|
|
527
|
+
:clear_cache
|
|
528
|
+
cls
|
|
529
|
+
echo Clearing Python cache for MediCafe...
|
|
530
|
+
echo.
|
|
531
|
+
cd /d "%~dp0.."
|
|
532
|
+
python "MediBot\update_medicafe.py" --clear-cache
|
|
533
|
+
if errorlevel 1 (
|
|
534
|
+
echo Cache clearing failed.
|
|
535
|
+
pause
|
|
536
|
+
) else (
|
|
537
|
+
echo Cache clearing completed successfully.
|
|
538
|
+
pause
|
|
539
|
+
)
|
|
540
|
+
goto main_menu
|
|
541
|
+
|
|
523
542
|
:: Exit Script
|
|
524
543
|
:end_script
|
|
525
544
|
echo Exiting MediCafe.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#update_medicafe.py
|
|
2
|
-
import subprocess, sys, time, platform
|
|
2
|
+
import subprocess, sys, time, platform, os, shutil
|
|
3
3
|
|
|
4
4
|
# Safe import for pkg_resources with fallback
|
|
5
5
|
try:
|
|
@@ -112,6 +112,87 @@ def check_internet_connection():
|
|
|
112
112
|
except requests.ConnectionError:
|
|
113
113
|
return False
|
|
114
114
|
|
|
115
|
+
def clear_python_cache(workspace_path=None):
|
|
116
|
+
"""
|
|
117
|
+
Clear Python bytecode cache files to prevent import issues after updates.
|
|
118
|
+
|
|
119
|
+
Args:
|
|
120
|
+
workspace_path (str, optional): Path to the workspace root. If None,
|
|
121
|
+
will attempt to detect automatically.
|
|
122
|
+
|
|
123
|
+
Returns:
|
|
124
|
+
bool: True if cache was cleared successfully, False otherwise
|
|
125
|
+
"""
|
|
126
|
+
try:
|
|
127
|
+
print_status("Clearing Python bytecode cache...", "INFO")
|
|
128
|
+
|
|
129
|
+
# If no workspace path provided, try to detect it
|
|
130
|
+
if not workspace_path:
|
|
131
|
+
# Try to find the MediCafe workspace by looking for common directories
|
|
132
|
+
current_dir = os.getcwd()
|
|
133
|
+
potential_paths = [
|
|
134
|
+
current_dir,
|
|
135
|
+
os.path.dirname(current_dir),
|
|
136
|
+
os.path.join(current_dir, '..'),
|
|
137
|
+
os.path.join(current_dir, '..', '..')
|
|
138
|
+
]
|
|
139
|
+
|
|
140
|
+
for path in potential_paths:
|
|
141
|
+
if os.path.exists(os.path.join(path, 'MediCafe')) and \
|
|
142
|
+
os.path.exists(os.path.join(path, 'MediBot')) and \
|
|
143
|
+
os.path.exists(os.path.join(path, 'MediLink')):
|
|
144
|
+
workspace_path = path
|
|
145
|
+
break
|
|
146
|
+
|
|
147
|
+
if not workspace_path:
|
|
148
|
+
print_status("Could not detect workspace path. Cache clearing skipped.", "WARNING")
|
|
149
|
+
return False
|
|
150
|
+
|
|
151
|
+
print("Workspace path: {}".format(workspace_path))
|
|
152
|
+
|
|
153
|
+
# Directories to clear cache from
|
|
154
|
+
cache_dirs = [
|
|
155
|
+
os.path.join(workspace_path, 'MediCafe'),
|
|
156
|
+
os.path.join(workspace_path, 'MediBot'),
|
|
157
|
+
os.path.join(workspace_path, 'MediLink'),
|
|
158
|
+
workspace_path # Root workspace
|
|
159
|
+
]
|
|
160
|
+
|
|
161
|
+
cleared_count = 0
|
|
162
|
+
for cache_dir in cache_dirs:
|
|
163
|
+
if os.path.exists(cache_dir):
|
|
164
|
+
# Remove __pycache__ directories
|
|
165
|
+
pycache_path = os.path.join(cache_dir, '__pycache__')
|
|
166
|
+
if os.path.exists(pycache_path):
|
|
167
|
+
try:
|
|
168
|
+
shutil.rmtree(pycache_path)
|
|
169
|
+
print("Cleared cache: {}".format(pycache_path))
|
|
170
|
+
cleared_count += 1
|
|
171
|
+
except Exception as e:
|
|
172
|
+
print("Warning: Could not clear cache at {}: {}".format(pycache_path, e))
|
|
173
|
+
|
|
174
|
+
# Remove .pyc files
|
|
175
|
+
for root, dirs, files in os.walk(cache_dir):
|
|
176
|
+
for file in files:
|
|
177
|
+
if file.endswith('.pyc'):
|
|
178
|
+
try:
|
|
179
|
+
os.remove(os.path.join(root, file))
|
|
180
|
+
print("Removed .pyc file: {}".format(os.path.join(root, file)))
|
|
181
|
+
cleared_count += 1
|
|
182
|
+
except Exception as e:
|
|
183
|
+
print("Warning: Could not remove .pyc file {}: {}".format(file, e))
|
|
184
|
+
|
|
185
|
+
if cleared_count > 0:
|
|
186
|
+
print_status("Successfully cleared {} cache items".format(cleared_count), "SUCCESS")
|
|
187
|
+
return True
|
|
188
|
+
else:
|
|
189
|
+
print_status("No cache files found to clear", "INFO")
|
|
190
|
+
return True
|
|
191
|
+
|
|
192
|
+
except Exception as e:
|
|
193
|
+
print_status("Error clearing cache: {}".format(e), "ERROR")
|
|
194
|
+
return False
|
|
195
|
+
|
|
115
196
|
def compare_versions(version1, version2):
|
|
116
197
|
v1_parts = list(map(int, version1.split(".")))
|
|
117
198
|
v2_parts = list(map(int, version2.split(".")))
|
|
@@ -306,6 +387,14 @@ def main():
|
|
|
306
387
|
new_version = get_installed_version(package)
|
|
307
388
|
if compare_versions(new_version, latest_version) >= 0:
|
|
308
389
|
print_status("Upgrade successful. New version: {}".format(new_version), "SUCCESS")
|
|
390
|
+
|
|
391
|
+
# Clear Python cache after successful upgrade
|
|
392
|
+
print_status("Clearing Python cache to prevent import issues...", "INFO")
|
|
393
|
+
if clear_python_cache():
|
|
394
|
+
print_status("Cache cleared successfully. Update complete.", "SUCCESS")
|
|
395
|
+
else:
|
|
396
|
+
print_status("Cache clearing failed, but update was successful.", "WARNING")
|
|
397
|
+
|
|
309
398
|
print_final_result(True, "Successfully upgraded to version {}".format(new_version))
|
|
310
399
|
else:
|
|
311
400
|
print_status("Upgrade failed. Current version remains: {}".format(new_version), "ERROR")
|
|
@@ -317,8 +406,19 @@ def main():
|
|
|
317
406
|
print_final_result(True, "Already running latest version")
|
|
318
407
|
|
|
319
408
|
if __name__ == "__main__":
|
|
320
|
-
if len(sys.argv) > 1
|
|
321
|
-
|
|
322
|
-
|
|
409
|
+
if len(sys.argv) > 1:
|
|
410
|
+
if sys.argv[1] == "--check-only":
|
|
411
|
+
check_for_updates_only()
|
|
412
|
+
sys.exit(0)
|
|
413
|
+
elif sys.argv[1] == "--clear-cache":
|
|
414
|
+
# Standalone cache clearing mode
|
|
415
|
+
print_status("MediCafe Cache Clearing Utility", "INFO")
|
|
416
|
+
workspace_path = sys.argv[2] if len(sys.argv) > 2 else None
|
|
417
|
+
if clear_python_cache(workspace_path):
|
|
418
|
+
print_status("Cache clearing completed successfully", "SUCCESS")
|
|
419
|
+
sys.exit(0)
|
|
420
|
+
else:
|
|
421
|
+
print_status("Cache clearing failed", "ERROR")
|
|
422
|
+
sys.exit(1)
|
|
323
423
|
else:
|
|
324
424
|
main()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|