@@ -92,13 +92,9 @@ def __init__(self, path: Optional[str] = None) -> None:
9292 self .hf_netloc : str = "huggingface.co"
9393 self .hf_lfs_netloc : str = "cdn-lfs.huggingface.co"
9494
95- self .mirror_scheme : str = "http" if self .ssl_key is None else "https"
96- self .mirror_netloc : str = (
97- f"{ self .host if self ._is_specific_addr (self .host ) else 'localhost' } :{ self .port } "
98- )
99- self .mirror_lfs_netloc : str = (
100- f"{ self .host if self ._is_specific_addr (self .host ) else 'localhost' } :{ self .port } "
101- )
95+ self .mirror_scheme : str = self .default_mirror_scheme ()
96+ self .mirror_netloc : str = self .default_mirror_netloc ()
97+ self .mirror_lfs_netloc : str = self .default_mirror_netloc ()
10298
10399 self .mirrors_path : List [str ] = []
104100
@@ -116,6 +112,20 @@ def _is_specific_addr(self, host: Union[List[str], str]) -> bool:
116112 else :
117113 return False
118114
115+ def default_mirror_scheme (self , ssl_key : Optional [str ] = None ) -> str :
116+ ssl_key = self .ssl_key if ssl_key is None else ssl_key
117+ return "http" if ssl_key is None else "https"
118+
119+ def default_mirror_netloc (
120+ self ,
121+ host : Optional [Union [List [str ], str ]] = None ,
122+ port : Optional [int ] = None ,
123+ ) -> str :
124+ host = self .host if host is None else host
125+ port = self .port if port is None else port
126+ default_host = host if self ._is_specific_addr (host ) else "localhost"
127+ return f"{ default_host } :{ port } "
128+
119129 def hf_url_base (self ) -> str :
120130 return f"{ self .hf_scheme } ://{ self .hf_netloc } "
121131
@@ -139,6 +149,9 @@ def read_toml(self, path: str) -> None:
139149
140150 if "basic" in config :
141151 basic = config ["basic" ]
152+ previous_default_mirror_scheme = self .default_mirror_scheme ()
153+ previous_default_mirror_netloc = self .default_mirror_netloc ()
154+
142155 self .host = basic .get ("host" , self .host )
143156 self .port = basic .get ("port" , self .port )
144157 self .ssl_key = self .empty_str (basic .get ("ssl-key" , self .ssl_key ))
@@ -151,11 +164,20 @@ def read_toml(self, path: str) -> None:
151164 self .hf_netloc = basic .get ("hf-netloc" , self .hf_netloc )
152165 self .hf_lfs_netloc = basic .get ("hf-lfs-netloc" , self .hf_lfs_netloc )
153166
154- self .mirror_scheme = basic .get ("mirror-scheme" , self .mirror_scheme )
155- self .mirror_netloc = basic .get ("mirror-netloc" , self .mirror_netloc )
156- self .mirror_lfs_netloc = basic .get (
157- "mirror-lfs-netloc" , self .mirror_lfs_netloc
158- )
167+ if "mirror-scheme" in basic :
168+ self .mirror_scheme = basic ["mirror-scheme" ]
169+ elif self .mirror_scheme == previous_default_mirror_scheme :
170+ self .mirror_scheme = self .default_mirror_scheme ()
171+
172+ if "mirror-netloc" in basic :
173+ self .mirror_netloc = basic ["mirror-netloc" ]
174+ elif self .mirror_netloc == previous_default_mirror_netloc :
175+ self .mirror_netloc = self .default_mirror_netloc ()
176+
177+ if "mirror-lfs-netloc" in basic :
178+ self .mirror_lfs_netloc = basic ["mirror-lfs-netloc" ]
179+ elif self .mirror_lfs_netloc == previous_default_mirror_netloc :
180+ self .mirror_lfs_netloc = self .default_mirror_netloc ()
159181
160182 self .mirrors_path = basic .get ("mirrors-path" , self .mirrors_path )
161183
0 commit comments