File tree Expand file tree Collapse file tree 1 file changed +30
-6
lines changed
Expand file tree Collapse file tree 1 file changed +30
-6
lines changed Original file line number Diff line number Diff line change 77 api_key, api_secret, passphrase, flag = get_api_credentials()
88"""
99import os
10+ import logging
1011from pathlib import Path
1112
12- # Try to load from .env file if python-dotenv is available
13- try :
14- from dotenv import load_dotenv
13+ logger = logging .getLogger (__name__ )
14+
15+ # Flag to ensure .env is loaded only once
16+ _env_loaded = False
17+
18+
19+ def _load_env_once ():
20+ """Load .env file only once, log any exceptions."""
21+ global _env_loaded
22+ if _env_loaded :
23+ return
24+
25+ _env_loaded = True
1526 env_path = Path (__file__ ).parent .parent / '.env'
16- load_dotenv (env_path )
17- except ImportError :
18- pass # python-dotenv not installed, rely on system environment variables
27+
28+ try :
29+ from dotenv import load_dotenv
30+ if env_path .exists ():
31+ load_dotenv (env_path )
32+ logger .debug (f"Loaded .env file from: { env_path } " )
33+ else :
34+ logger .warning (f".env file not found at: { env_path } " )
35+ except ImportError :
36+ logger .warning ("python-dotenv not installed, relying on system environment variables" )
37+ except Exception as e :
38+ logger .error (f"Failed to load .env file: { e } " )
39+
40+
41+ # Load .env when module is imported
42+ _load_env_once ()
1943
2044
2145def get_api_credentials ():
You can’t perform that action at this time.
0 commit comments