hiddifypanel 10.85.0b11__py3-none-any.whl → 10.85.0b13__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.
hiddifypanel/VERSION CHANGED
@@ -1 +1 @@
1
- 10.85.0b11
1
+ 10.85.0b13
hiddifypanel/VERSION.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # import importlib.metadata
2
2
  from datetime import datetime
3
3
 
4
- __version__ = '10.85.0b11'
5
- __release_time__= datetime.strptime('2025-04-18T21:41:39','%Y-%m-%dT%H:%M:%S')
4
+ __version__ = '10.85.0b13'
5
+ __release_time__= datetime.strptime('2025-04-29T02:17:22','%Y-%m-%dT%H:%M:%S')
6
6
  is_released_version=True
@@ -4,7 +4,6 @@ from urllib.parse import urlparse
4
4
  import urllib.request
5
5
  import ipaddress
6
6
  from hiddifypanel.hutils.network.auto_ip_selector import IPASN
7
- import netifaces
8
7
  import requests
9
8
  import random
10
9
  import socket
@@ -12,7 +11,10 @@ import time
12
11
  import ssl
13
12
  import re
14
13
  import os
15
-
14
+ import ipaddress
15
+ import psutil
16
+ import socket
17
+ from typing import List, Union, Literal
16
18
 
17
19
  from hiddifypanel.models import *
18
20
  from hiddifypanel.cache import cache
@@ -87,30 +89,32 @@ def get_socket_public_ip(version: Literal[4, 6]) -> Union[ipaddress.IPv4Address,
87
89
  return None
88
90
 
89
91
 
92
+
90
93
  def get_interface_public_ip(version: Literal[4, 6]) -> List[Union[ipaddress.IPv4Address, ipaddress.IPv6Address]]:
91
94
  addresses = []
92
95
  try:
93
- interfaces = netifaces.interfaces()
94
- for interface in interfaces:
95
- if version == 4:
96
- address_info = netifaces.ifaddresses(interface).get(netifaces.AF_INET, [])
97
- elif version == 6:
98
- address_info = netifaces.ifaddresses(interface).get(netifaces.AF_INET6, [])
99
- else:
100
- continue
101
-
102
- if address_info:
103
- for addr in address_info:
104
- address = ipaddress.ip_address(addr['addr'])
105
- if address.is_global:
106
- addresses.append(address)
96
+ interfaces = psutil.net_if_addrs()
97
+ for interface_addresses in interfaces.values():
98
+ for addr in interface_addresses:
99
+ if version == 4 and addr.family == socket.AF_INET:
100
+ ip = addr.address
101
+ elif version == 6 and addr.family == socket.AF_INET6:
102
+ ip = addr.address
103
+ else:
104
+ continue
105
+
106
+ try:
107
+ ip_obj = ipaddress.ip_address(ip.split('%')[0]) # Remove scope_id for IPv6
108
+ if ip_obj.is_global:
109
+ addresses.append(ip_obj)
110
+ except ValueError:
111
+ continue
107
112
 
108
113
  return addresses
109
114
 
110
115
  except (OSError, KeyError):
111
116
  return []
112
117
 
113
-
114
118
  @cache.cache(ttl=600)
115
119
  def get_ips(version: Literal[4, 6] | None = None) -> List[Union[ipaddress.IPv4Address, ipaddress.IPv6Address]]:
116
120
  if not version:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hiddifypanel
3
- Version: 10.85.0b11
3
+ Version: 10.85.0b13
4
4
  Summary: hiddifypanel multi proxy panel
5
5
  Author: hiddify
6
6
  License:
@@ -227,7 +227,6 @@ Requires-Dist: flask-apispec==0.11.4
227
227
  Requires-Dist: flask-babel==4.0.0
228
228
  Requires-Dist: loguru==0.7.2
229
229
  Requires-Dist: maxminddb==2.6.2
230
- Requires-Dist: netifaces==0.11.0
231
230
  Requires-Dist: ping3==4.0.8
232
231
  Requires-Dist: psutil==6.1.0
233
232
  Requires-Dist: python-dateutil==2.9.0.post0
@@ -249,6 +248,10 @@ Requires-Dist: dynaconf<4.0.0,>=3.2.6
249
248
  Requires-Dist: json5<1.0.0,>=0.9.28
250
249
  Requires-Dist: jinja2>=3.1.6
251
250
  Requires-Dist: marshmallow<=3.26.1
251
+ Requires-Dist: psutils>=3.3.9
252
+ Requires-Dist: dotenv==0.9.9
253
+ Requires-Dist: setuptools==80.0.0
254
+ Requires-Dist: aiohttp==3.11.18
252
255
  Provides-Extra: dev
253
256
  Requires-Dist: pytest==8.3.3; extra == "dev"
254
257
  Requires-Dist: coverage==7.6.4; extra == "dev"
@@ -1,6 +1,6 @@
1
1
  hiddifypanel/Events.py,sha256=AlnRdjVul0jP-NCT4-zoaQgowoOo-JhdQB4ytetAFKA,723
2
- hiddifypanel/VERSION,sha256=V5hOiMX7D-uhAmvk1nJ0ZK2X0Wb_UCwzaILWHFPvyAs,11
3
- hiddifypanel/VERSION.py,sha256=TRaIqSW_J_-LUdBqajOFAnzxDbSucP6FvqkZVx5-v-I,190
2
+ hiddifypanel/VERSION,sha256=_3TIXIJLHrZ8V9SJZ1n0-vWNvORk3Z4UlYHuErqje4g,11
3
+ hiddifypanel/VERSION.py,sha256=z0e-xGNYuyuYlv3dh3-KLOSqUXSKe1jv7G0g3Dba-Tk,190
4
4
  hiddifypanel/__init__.py,sha256=kigwDO8d9jXyPZLvJAWd6zo-GX3pG_xWf-q2aStz80Y,377
5
5
  hiddifypanel/__main__.py,sha256=IVchnXpK6bm8T3N--mN17HBQNLMeLAjyP7iwzULexB4,218
6
6
  hiddifypanel/auth.py,sha256=LJmH4ROqZv5ej_4m1b0xvbEw2meJTzDR1mFCDm523kE,8041
@@ -36,7 +36,7 @@ hiddifypanel/hutils/importer/xui.py,sha256=TtmF4KJ263k3ByUvOeVKPlsGfj0tHLdlSdUQs
36
36
  hiddifypanel/hutils/network/__init__.py,sha256=wQ1atebA98SC0agNc_Tbe4ct1aIIKaXOniSEyTE2PKo,348
37
37
  hiddifypanel/hutils/network/auto_ip_selector.py,sha256=wFme4MI32_LnNujYhg-ZfMIfjPd8fTMTd2RmBkbUW7A,5582
38
38
  hiddifypanel/hutils/network/cf_api.py,sha256=9SdVV0EMfoEozbGq0pzqLWt6h2mvM1DYKBdIxi9G-2Y,2688
39
- hiddifypanel/hutils/network/net.py,sha256=SKXPHeNVI7sp2VMaH-RpT0-ckxpRJwZrfe6bFiemqVY,12384
39
+ hiddifypanel/hutils/network/net.py,sha256=1E1nnMQnJJu2OlDvpsPoRkKSRSAqGOxDa_xGsxfz_sM,12535
40
40
  hiddifypanel/hutils/node/__init__.py,sha256=p9-nse5h2p3SX6XdU33GOqOX-8OfvmdkDRmIq3cWDWM,63
41
41
  hiddifypanel/hutils/node/api_client.py,sha256=Gr2532czQEE3YBh3sbeK036QI5gXDigUFlrMdJuO2sE,3684
42
42
  hiddifypanel/hutils/node/child.py,sha256=oAyKlEHHn9FHcpZ9jBi3nYH-GHs8H7Gi2hzkmtO5IA8,6714
@@ -842,17 +842,17 @@ hiddifypanel/templates/redirect.html,sha256=K9x_O4P96vEkqBhOXIhoGrWw1KIqd2bL0BjI
842
842
  hiddifypanel/templates/static.html,sha256=jp6q4wtx-k2A_cjqJoNiMS7Ee30arE45qI3ev4d5ky4,165
843
843
  hiddifypanel/templates/hiddify-flask-admin/actions.html,sha256=2NeITe2e-lPKCk_o511tCIqVtrPu8LYHE1wTCtrFUrI,1331
844
844
  hiddifypanel/templates/hiddify-flask-admin/list.html,sha256=MBGrTqZpzNLe4sZy0RozvXNr8seFUQc2C6v88BJtNWc,11095
845
- hiddifypanel/translations/en/LC_MESSAGES/messages.mo,sha256=cBQIYGzYgsQBRoT-74-vW71ysHvuECbuUo2r2czTWdY,80248
845
+ hiddifypanel/translations/en/LC_MESSAGES/messages.mo,sha256=nsfV5rm9vFjbMCbZwmLVpkUKbzMh3_DNpFFr-38LBZc,80248
846
846
  hiddifypanel/translations/en/LC_MESSAGES/messages.po,sha256=ZQn1-QHu0FwpHIluExU9U1p738DrpK_vBaucF1ndyvo,83564
847
- hiddifypanel/translations/fa/LC_MESSAGES/messages.mo,sha256=Np947t6zwnP8qSyc6hsGl5kT7DhgAn3mV0ikZ0zU4Cs,102665
847
+ hiddifypanel/translations/fa/LC_MESSAGES/messages.mo,sha256=eKj33549JHwVKae5MNzI-0566AskqEbZKHtRYGLlmq8,102665
848
848
  hiddifypanel/translations/fa/LC_MESSAGES/messages.po,sha256=xEU_jSeWnc70mvoPJ7f0d_9lG5U-mvo3BQzcRRvB4o8,107420
849
- hiddifypanel/translations/my/LC_MESSAGES/messages.mo,sha256=69DQSUGkaW-9tSgyvHNUVnGFof0HsQQhLwK9dMCNFCo,139090
849
+ hiddifypanel/translations/my/LC_MESSAGES/messages.mo,sha256=9YoVz5lUxjy1eG3L7iT6jbBp2b3As-UcmpsFqkyDlXE,139090
850
850
  hiddifypanel/translations/my/LC_MESSAGES/messages.po,sha256=GcrOHDJC2wjo1L8lLmwLOs_dwoqcf0f6rXXjDv8JnsE,141985
851
- hiddifypanel/translations/pt/LC_MESSAGES/messages.mo,sha256=s_KKmA26HVmsB6qJIcHDLGCDfniyf9DZ__XS_foPzGw,80797
851
+ hiddifypanel/translations/pt/LC_MESSAGES/messages.mo,sha256=uFzpowvJ0Op74ymYYvRpZZE0A9LALysxf7QNPQu6kzU,80797
852
852
  hiddifypanel/translations/pt/LC_MESSAGES/messages.po,sha256=pX1dG9wcQEYRBpxU3mL-gY_q2YNkVwbRmrI6wNHjkm8,85364
853
- hiddifypanel/translations/ru/LC_MESSAGES/messages.mo,sha256=85ZcJyBWVKPk2u--UJtbEqQVeOf5oxyOA5t0Xaf1c6k,108594
853
+ hiddifypanel/translations/ru/LC_MESSAGES/messages.mo,sha256=Qk6I-jwZS81Kb6opRMNvMh0aRdxKBVD7RRKWgiB2OaU,108594
854
854
  hiddifypanel/translations/ru/LC_MESSAGES/messages.po,sha256=mc8TFxwLUu8iBH8iK-aGUpQoKDRCjb2sh6fZK1w1inU,113367
855
- hiddifypanel/translations/zh/LC_MESSAGES/messages.mo,sha256=X3lqgn-O1ZZJ89lwpvYLQhijeD-iVWTW40SBJdm0oRU,75296
855
+ hiddifypanel/translations/zh/LC_MESSAGES/messages.mo,sha256=VKy42xuRYhOV-y3cRjlhomCs4fnSkrmxlzUkKK7lsW0,75296
856
856
  hiddifypanel/translations/zh/LC_MESSAGES/messages.po,sha256=ze5ipeKdB4ISOMkT0ERufBPdlWDT5m3xUj0OSeBdkpk,79474
857
857
  hiddifypanel/translations.i18n/en.json,sha256=4rDoVjPSUqs8OCh8dHf923wjHmgJNguelTN3b1EwLqA,72605
858
858
  hiddifypanel/translations.i18n/fa.json,sha256=3WMq36rLV-1E9GTVTovDlEPIoOJ5cedOBDdke-OcyXE,96515
@@ -861,9 +861,9 @@ hiddifypanel/translations.i18n/my.json,sha256=QAXg__5TCqfx3Ck0cw5YQsSXX_3kqUhMOd
861
861
  hiddifypanel/translations.i18n/pt.json,sha256=bO1-qEZJ9yf6Pz_6Vz18xDLezp3pCYwK8_aTLMJA1Iw,74570
862
862
  hiddifypanel/translations.i18n/ru.json,sha256=kCI1TBgj1T0VnvRfrgxCnLt_fA6ZuD9kjRt0vkmyvb0,102357
863
863
  hiddifypanel/translations.i18n/zh.json,sha256=A50l-_uQ4lsZwcF3UyGcyZxsR3hAjmvnMrJLnTcVZbI,69103
864
- hiddifypanel-10.85.0b11.dist-info/licenses/LICENSE.md,sha256=oDrt-cUsyiDGnRPjEJh-3dH2ddAuK_bIVBD8ntkOtZw,19807
865
- hiddifypanel-10.85.0b11.dist-info/METADATA,sha256=CrAp0-QNuYW694M_AGAdtxwhSybestEYl4Hc2an_rgQ,25536
866
- hiddifypanel-10.85.0b11.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
867
- hiddifypanel-10.85.0b11.dist-info/entry_points.txt,sha256=Xzpqlh3nwBtZhoV9AANJykano056VJvYzaujxPztJaM,60
868
- hiddifypanel-10.85.0b11.dist-info/top_level.txt,sha256=rv-b3qFWUZQTBy0kyBfsr7L6tPpeO7AaQlLHXn-HI5M,13
869
- hiddifypanel-10.85.0b11.dist-info/RECORD,,
864
+ hiddifypanel-10.85.0b13.dist-info/licenses/LICENSE.md,sha256=oDrt-cUsyiDGnRPjEJh-3dH2ddAuK_bIVBD8ntkOtZw,19807
865
+ hiddifypanel-10.85.0b13.dist-info/METADATA,sha256=jfUVN6D71ZpKY9pvoh6DaDwXAZaiq0__cO7ijko90XQ,25628
866
+ hiddifypanel-10.85.0b13.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
867
+ hiddifypanel-10.85.0b13.dist-info/entry_points.txt,sha256=Xzpqlh3nwBtZhoV9AANJykano056VJvYzaujxPztJaM,60
868
+ hiddifypanel-10.85.0b13.dist-info/top_level.txt,sha256=rv-b3qFWUZQTBy0kyBfsr7L6tPpeO7AaQlLHXn-HI5M,13
869
+ hiddifypanel-10.85.0b13.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.1.0)
2
+ Generator: setuptools (80.0.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5