medicafe 0.250805.2__tar.gz → 0.250806.0__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.

Files changed (74) hide show
  1. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/update_medicafe.py +63 -32
  2. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Gmail.py +14 -0
  3. {medicafe-0.250805.2 → medicafe-0.250806.0}/PKG-INFO +1 -1
  4. {medicafe-0.250805.2 → medicafe-0.250806.0}/medicafe.egg-info/PKG-INFO +1 -1
  5. {medicafe-0.250805.2 → medicafe-0.250806.0}/setup.py +1 -1
  6. {medicafe-0.250805.2 → medicafe-0.250806.0}/LICENSE +0 -0
  7. {medicafe-0.250805.2 → medicafe-0.250806.0}/MANIFEST.in +0 -0
  8. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot.bat +0 -0
  9. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot.py +0 -0
  10. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_Charges.py +0 -0
  11. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_Crosswalk_Library.py +0 -0
  12. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_Crosswalk_Utils.py +0 -0
  13. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_Post.py +0 -0
  14. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_Preprocessor.py +0 -0
  15. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_Preprocessor_lib.py +0 -0
  16. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_UI.py +0 -0
  17. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_dataformat_library.py +0 -0
  18. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_docx_decoder.py +0 -0
  19. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/MediBot_smart_import.py +0 -0
  20. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/__init__.py +0 -0
  21. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/get_medicafe_version.py +0 -0
  22. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediBot/update_json.py +0 -0
  23. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/MediLink_ConfigLoader.py +0 -0
  24. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/__init__.py +0 -0
  25. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/__main__.py +0 -0
  26. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/api_core.py +0 -0
  27. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/api_core_backup.py +0 -0
  28. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/api_factory.py +0 -0
  29. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/api_utils.py +0 -0
  30. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/core_utils.py +0 -0
  31. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/graphql_utils.py +0 -0
  32. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/logging_config.py +0 -0
  33. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/logging_demo.py +0 -0
  34. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/migration_helpers.py +0 -0
  35. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediCafe/smart_import.py +0 -0
  36. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_837p_cob_library.py +0 -0
  37. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_837p_encoder.py +0 -0
  38. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_837p_encoder_library.py +0 -0
  39. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_837p_utilities.py +0 -0
  40. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_API_Generator.py +0 -0
  41. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Azure.py +0 -0
  42. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_ClaimStatus.py +0 -0
  43. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_DataMgmt.py +0 -0
  44. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Decoder.py +0 -0
  45. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Deductible.py +0 -0
  46. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Deductible_Validator.py +0 -0
  47. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Display_Utils.py +0 -0
  48. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Down.py +0 -0
  49. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Mailer.py +0 -0
  50. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Parser.py +0 -0
  51. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_PatientProcessor.py +0 -0
  52. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Scan.py +0 -0
  53. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Scheduler.py +0 -0
  54. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_UI.py +0 -0
  55. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_Up.py +0 -0
  56. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_insurance_utils.py +0 -0
  57. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_main.py +0 -0
  58. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/MediLink_smart_import.py +0 -0
  59. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/Soumit_api.py +0 -0
  60. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/__init__.py +0 -0
  61. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/insurance_type_integration_test.py +0 -0
  62. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/openssl.cnf +0 -0
  63. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/test.py +0 -0
  64. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/test_cob_library.py +0 -0
  65. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/test_timing.py +0 -0
  66. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/test_validation.py +0 -0
  67. {medicafe-0.250805.2 → medicafe-0.250806.0}/MediLink/webapp.html +0 -0
  68. {medicafe-0.250805.2 → medicafe-0.250806.0}/medicafe.egg-info/SOURCES.txt +0 -0
  69. {medicafe-0.250805.2 → medicafe-0.250806.0}/medicafe.egg-info/dependency_links.txt +0 -0
  70. {medicafe-0.250805.2 → medicafe-0.250806.0}/medicafe.egg-info/entry_points.txt +0 -0
  71. {medicafe-0.250805.2 → medicafe-0.250806.0}/medicafe.egg-info/not-zip-safe +0 -0
  72. {medicafe-0.250805.2 → medicafe-0.250806.0}/medicafe.egg-info/requires.txt +0 -0
  73. {medicafe-0.250805.2 → medicafe-0.250806.0}/medicafe.egg-info/top_level.txt +0 -0
  74. {medicafe-0.250805.2 → medicafe-0.250806.0}/setup.cfg +0 -0
@@ -15,6 +15,40 @@ except ImportError:
15
15
  requests = None
16
16
  print("Warning: requests module not available. Some functionality may be limited.")
17
17
 
18
+ def print_status(message, status_type="INFO"):
19
+ """Print formatted status messages with ASCII-only visual indicators."""
20
+ if status_type == "SUCCESS":
21
+ print("\n" + "="*60)
22
+ print("[SUCCESS] {}".format(message))
23
+ print("="*60)
24
+ elif status_type == "ERROR":
25
+ print("\n" + "="*60)
26
+ print("[ERROR] {}".format(message))
27
+ print("="*60)
28
+ elif status_type == "WARNING":
29
+ print("\n" + "-"*60)
30
+ print("[WARNING] {}".format(message))
31
+ print("-"*60)
32
+ elif status_type == "INFO":
33
+ print("\n" + "-"*60)
34
+ print("[INFO] {}".format(message))
35
+ print("-"*60)
36
+ else:
37
+ print(message)
38
+
39
+ def print_final_result(success, message):
40
+ """Print final result with clear visual indication."""
41
+ if success:
42
+ print_status("UPDATE COMPLETED SUCCESSFULLY", "SUCCESS")
43
+ print("Final Status: {}".format(message))
44
+ else:
45
+ print_status("UPDATE FAILED", "ERROR")
46
+ print("Final Status: {}".format(message))
47
+
48
+ print("\nExiting in 5 seconds...")
49
+ time.sleep(5)
50
+ sys.exit(0 if success else 1)
51
+
18
52
  def get_installed_version(package):
19
53
  try:
20
54
  process = subprocess.Popen(
@@ -88,9 +122,8 @@ def upgrade_package(package, retries=3, delay=2): # Updated retries to 3
88
122
  Attempts to upgrade the package multiple times with delays in between.
89
123
  """
90
124
  if not check_internet_connection():
91
- print("Error: No internet connection detected. Please check your internet connection and try again.")
92
- time.sleep(3) # Pause for 3 seconds before exiting
93
- sys.exit(1)
125
+ print_status("No internet connection detected. Please check your internet connection and try again.", "ERROR")
126
+ print_final_result(False, "No internet connection available")
94
127
 
95
128
  for attempt in range(1, retries + 1):
96
129
  print("Attempt {} to upgrade {}...".format(attempt, package))
@@ -110,24 +143,24 @@ def upgrade_package(package, retries=3, delay=2): # Updated retries to 3
110
143
  new_version = get_installed_version(package) # Get new version after upgrade
111
144
  if compare_versions(new_version, get_latest_version(package)) >= 0: # Compare versions
112
145
  if attempt == 1:
113
- print("Upgrade succeeded!")
146
+ print_status("Upgrade succeeded!", "SUCCESS")
114
147
  else:
115
- print("Attempt {}: Upgrade succeeded!".format(attempt))
148
+ print_status("Attempt {}: Upgrade succeeded!".format(attempt), "SUCCESS")
116
149
  time.sleep(delay)
117
150
  return True
118
151
  else:
119
- print("Upgrade failed. Current version remains: {}".format(new_version))
152
+ print_status("Upgrade failed. Current version remains: {}".format(new_version), "WARNING")
120
153
  if attempt < retries:
121
154
  print("Retrying in {} seconds...".format(delay))
122
155
  time.sleep(delay)
123
156
  else:
124
157
  print(stderr.decode().strip())
125
- print("Attempt {}: Upgrade failed.".format(attempt))
158
+ print_status("Attempt {}: Upgrade failed.".format(attempt), "WARNING")
126
159
  if attempt < retries:
127
160
  print("Retrying in {} seconds...".format(delay))
128
161
  time.sleep(delay)
129
162
 
130
- print("Error: All upgrade attempts failed.")
163
+ print_status("All upgrade attempts failed.", "ERROR")
131
164
  return False
132
165
 
133
166
  def ensure_dependencies():
@@ -149,7 +182,7 @@ def ensure_dependencies():
149
182
  is_windows_py34 = sys.version_info[:2] == (3, 4) and platform.system() == 'Windows'
150
183
 
151
184
  if is_windows_py34:
152
- print("Detected Windows with Python 3.4")
185
+ print_status("Detected Windows with Python 3.4", "INFO")
153
186
  print("Please ensure the following packages are installed manually:")
154
187
  for pkg in problematic_packages:
155
188
  package_name, version = pkg.split('==')
@@ -187,7 +220,7 @@ def ensure_dependencies():
187
220
  print("Required version of {}: {}".format(package_name, version))
188
221
  time.sleep(2) # Pause for 2 seconds to allow user to read the output
189
222
  if not upgrade_package(package_name): # Attempt to upgrade/downgrade to the required version
190
- print("Warning: Failed to upgrade/downgrade {} to version {}.".format(package_name, version))
223
+ print_status("Failed to upgrade/downgrade {} to version {}.".format(package_name, version), "WARNING")
191
224
  time.sleep(2) # Pause for 2 seconds after failure message
192
225
  elif version and installed_version == version: # Check if installed version matches required version
193
226
  print("All versions match for {}. No changes needed.".format(package_name))
@@ -199,13 +232,13 @@ def ensure_dependencies():
199
232
  print("Latest version of {}: {}".format(package_name, latest_version))
200
233
  time.sleep(2) # Pause for 2 seconds to allow user to read the output
201
234
  if not upgrade_package(package_name):
202
- print("Warning: Failed to upgrade {}.".format(package_name))
235
+ print_status("Failed to upgrade {}.".format(package_name), "WARNING")
203
236
  time.sleep(2) # Pause for 2 seconds after failure message
204
237
  except pkg_resources.DistributionNotFound:
205
238
  print("Package {} is not installed. Attempting to install...".format(package_name))
206
239
  time.sleep(2) # Pause for 2 seconds before attempting installation
207
240
  if not upgrade_package(package_name):
208
- print("Warning: Failed to install {}.".format(package_name))
241
+ print_status("Failed to install {}.".format(package_name), "WARNING")
209
242
  time.sleep(2) # Pause for 2 seconds after failure message
210
243
 
211
244
  def check_for_updates_only():
@@ -234,56 +267,54 @@ def check_for_updates_only():
234
267
  print("UP_TO_DATE")
235
268
 
236
269
  def main():
270
+ print_status("MediCafe Update Utility", "INFO")
271
+ print("Starting update process...")
272
+
237
273
  # Ensure internet connection before proceeding
238
274
  if not check_internet_connection():
239
- print("Error: No internet connection. Please check your connection and try again.")
240
- time.sleep(3) # Pause for 3 seconds before exiting
241
- sys.exit(1)
275
+ print_status("No internet connection. Please check your connection and try again.", "ERROR")
276
+ print_final_result(False, "No internet connection available")
242
277
 
243
278
  # Ensure all dependencies are met before proceeding
244
279
  response = input("Do you want to check dependencies? (yes/no, default/enter is no): ").strip().lower()
245
280
  if response in ['yes', 'y']:
246
281
  ensure_dependencies()
247
282
  else:
248
- print("Skipping dependency check.")
283
+ print_status("Skipping dependency check.", "INFO")
249
284
  time.sleep(3) # Pause for 3 seconds before proceeding
250
285
 
251
286
  package = "medicafe"
252
287
 
253
288
  current_version = get_installed_version(package)
254
289
  if not current_version:
255
- print("{} is not installed.".format(package))
256
- time.sleep(3) # Pause for 3 seconds before exiting
257
- sys.exit(1)
290
+ print_status("{} is not installed.".format(package), "ERROR")
291
+ print_final_result(False, "Package not installed")
258
292
 
259
293
  latest_version = get_latest_version(package)
260
294
  if not latest_version:
261
- print("Could not retrieve the latest version information.")
262
- time.sleep(3) # Pause for 3 seconds before exiting
263
- sys.exit(1)
295
+ print_status("Could not retrieve the latest version information.", "ERROR")
296
+ print_final_result(False, "Unable to fetch latest version")
264
297
 
265
298
  print("Current version of {}: {}".format(package, current_version))
266
299
  print("Latest version of {}: {}".format(package, latest_version))
267
300
 
268
301
  if compare_versions(latest_version, current_version) > 0:
269
- print("A newer version is available. Proceeding with upgrade.")
302
+ print_status("A newer version is available. Proceeding with upgrade.", "INFO")
270
303
  if upgrade_package(package):
271
304
  # Verify upgrade
272
305
  time.sleep(3)
273
306
  new_version = get_installed_version(package)
274
307
  if compare_versions(new_version, latest_version) >= 0:
275
- print("Upgrade successful. New version: {}".format(new_version))
308
+ print_status("Upgrade successful. New version: {}".format(new_version), "SUCCESS")
309
+ print_final_result(True, "Successfully upgraded to version {}".format(new_version))
276
310
  else:
277
- print("Upgrade failed. Current version remains: {}".format(new_version))
278
- time.sleep(3) # Pause for 3 seconds before exiting
279
- sys.exit(1)
311
+ print_status("Upgrade failed. Current version remains: {}".format(new_version), "ERROR")
312
+ print_final_result(False, "Upgrade verification failed")
280
313
  else:
281
- time.sleep(3) # Pause for 3 seconds before exiting
282
- sys.exit(1)
314
+ print_final_result(False, "Upgrade process failed")
283
315
  else:
284
- print("You already have the latest version installed.")
285
- time.sleep(3) # Pause for 3 seconds before exiting
286
- sys.exit(1)
316
+ print_status("You already have the latest version installed.", "SUCCESS")
317
+ print_final_result(True, "Already running latest version")
287
318
 
288
319
  if __name__ == "__main__":
289
320
  if len(sys.argv) > 1 and sys.argv[1] == "--check-only":
@@ -1,5 +1,19 @@
1
1
  # MediLink_Gmail.py
2
2
  import sys, os, subprocess, time, webbrowser, requests, json, ssl, signal
3
+
4
+ # Set up Python path to find MediCafe when running directly
5
+ def setup_python_path():
6
+ """Set up Python path to find MediCafe package"""
7
+ current_dir = os.path.dirname(os.path.abspath(__file__))
8
+ workspace_root = os.path.dirname(current_dir)
9
+
10
+ # Add workspace root to Python path if not already present
11
+ if workspace_root not in sys.path:
12
+ sys.path.insert(0, workspace_root)
13
+
14
+ # Set up paths before importing MediCafe
15
+ setup_python_path()
16
+
3
17
  from MediCafe.core_utils import get_shared_config_loader
4
18
 
5
19
  # Get shared config loader
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: medicafe
3
- Version: 0.250805.2
3
+ Version: 0.250806.0
4
4
  Summary: MediCafe
5
5
  Home-page: https://github.com/katanada2
6
6
  Author: Daniel Vidaud
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: medicafe
3
- Version: 0.250805.2
3
+ Version: 0.250806.0
4
4
  Summary: MediCafe
5
5
  Home-page: https://github.com/katanada2
6
6
  Author: Daniel Vidaud
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name='medicafe',
5
- version="0.250805.2",
5
+ version="0.250806.0",
6
6
  description='MediCafe',
7
7
  long_description="""
8
8
  # Project Overview: MediCafe
File without changes
File without changes
File without changes