mytunes-pro 1.9.3__tar.gz → 1.9.5__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.
- {mytunes_pro-1.9.3/src/mytunes_pro.egg-info → mytunes_pro-1.9.5}/PKG-INFO +12 -4
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/README.md +11 -3
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/pyproject.toml +1 -1
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/src/mytunes/app.py +12 -34
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5/src/mytunes_pro.egg-info}/PKG-INFO +12 -4
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/LICENSE +0 -0
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/setup.cfg +0 -0
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/src/mytunes/__init__.py +0 -0
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/src/mytunes_pro.egg-info/SOURCES.txt +0 -0
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/src/mytunes_pro.egg-info/dependency_links.txt +0 -0
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/src/mytunes_pro.egg-info/entry_points.txt +0 -0
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/src/mytunes_pro.egg-info/requires.txt +0 -0
- {mytunes_pro-1.9.3 → mytunes_pro-1.9.5}/src/mytunes_pro.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mytunes-pro
|
|
3
|
-
Version: 1.9.
|
|
3
|
+
Version: 1.9.5
|
|
4
4
|
Summary: A lightweight, keyboard-centric terminal player for streaming YouTube music.
|
|
5
5
|
Author-email: loxo <loxo5432@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/postgresql-co-kr/mytunes
|
|
@@ -19,7 +19,7 @@ Dynamic: license-file
|
|
|
19
19
|
|
|
20
20
|
# 🎵 MyTunes Pro (Korean)
|
|
21
21
|
|
|
22
|
-
**현대적인 CLI 유튜브 뮤직 플레이어 (v1.9.
|
|
22
|
+
**현대적인 CLI 유튜브 뮤직 플레이어 (v1.9.5)**
|
|
23
23
|
터미널 환경에서 **YouTube 음악을 검색하여 듣는** 가볍고 빠른 키보드 중심의 플레이어입니다.
|
|
24
24
|
한국어 입력 환경에서도 **숫자 키(1~5)**를 통해 지연 없는 쾌적한 조작이 가능합니다.
|
|
25
25
|
|
|
@@ -208,7 +208,7 @@ Windows 환경에서 한글 검색이 안 되거나 설치가 어려운 분들
|
|
|
208
208
|
|
|
209
209
|
# 🎵 MyTunes Pro (English)
|
|
210
210
|
|
|
211
|
-
**Modern CLI YouTube Music Player (v1.9.
|
|
211
|
+
**Modern CLI YouTube Music Player (v1.9.5)**
|
|
212
212
|
A lightweight, keyboard-centric terminal player for streaming YouTube music.
|
|
213
213
|
|
|
214
214
|
---
|
|
@@ -296,7 +296,15 @@ sudo apt install mpv python3 python3-pip pipx python3-venv -y
|
|
|
296
296
|
|
|
297
297
|
## 🔄 Changelog
|
|
298
298
|
|
|
299
|
-
### v1.9.
|
|
299
|
+
### v1.9.5 (Cleanup)
|
|
300
|
+
|
|
301
|
+
- **Code Cleanup**: Removed deprecated and unreachable WSL subprocess launch logic to ensure codebase cleanliness and prevent confusion. The application now exclusively uses the stable `webbrowser` module for WSL.
|
|
302
|
+
|
|
303
|
+
### v1.9.4
|
|
304
|
+
|
|
305
|
+
- **Ultimate WSL Fix**: Switched to using Python's standard `webbrowser` module for opening links in WSL. This fully delegates browser launching to the system (Windows host), ensuring maximum stability and eliminating all `subprocess` or `cmd.exe` related conflicts.
|
|
306
|
+
|
|
307
|
+
### v1.9.3
|
|
300
308
|
|
|
301
309
|
- **Hotfix for Startup**: Fixed a syntax error introduced in v1.9.2 that prevented the application from starting.
|
|
302
310
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# 🎵 MyTunes Pro (Korean)
|
|
2
2
|
|
|
3
|
-
**현대적인 CLI 유튜브 뮤직 플레이어 (v1.9.
|
|
3
|
+
**현대적인 CLI 유튜브 뮤직 플레이어 (v1.9.5)**
|
|
4
4
|
터미널 환경에서 **YouTube 음악을 검색하여 듣는** 가볍고 빠른 키보드 중심의 플레이어입니다.
|
|
5
5
|
한국어 입력 환경에서도 **숫자 키(1~5)**를 통해 지연 없는 쾌적한 조작이 가능합니다.
|
|
6
6
|
|
|
@@ -189,7 +189,7 @@ Windows 환경에서 한글 검색이 안 되거나 설치가 어려운 분들
|
|
|
189
189
|
|
|
190
190
|
# 🎵 MyTunes Pro (English)
|
|
191
191
|
|
|
192
|
-
**Modern CLI YouTube Music Player (v1.9.
|
|
192
|
+
**Modern CLI YouTube Music Player (v1.9.5)**
|
|
193
193
|
A lightweight, keyboard-centric terminal player for streaming YouTube music.
|
|
194
194
|
|
|
195
195
|
---
|
|
@@ -277,7 +277,15 @@ sudo apt install mpv python3 python3-pip pipx python3-venv -y
|
|
|
277
277
|
|
|
278
278
|
## 🔄 Changelog
|
|
279
279
|
|
|
280
|
-
### v1.9.
|
|
280
|
+
### v1.9.5 (Cleanup)
|
|
281
|
+
|
|
282
|
+
- **Code Cleanup**: Removed deprecated and unreachable WSL subprocess launch logic to ensure codebase cleanliness and prevent confusion. The application now exclusively uses the stable `webbrowser` module for WSL.
|
|
283
|
+
|
|
284
|
+
### v1.9.4
|
|
285
|
+
|
|
286
|
+
- **Ultimate WSL Fix**: Switched to using Python's standard `webbrowser` module for opening links in WSL. This fully delegates browser launching to the system (Windows host), ensuring maximum stability and eliminating all `subprocess` or `cmd.exe` related conflicts.
|
|
287
|
+
|
|
288
|
+
### v1.9.3
|
|
281
289
|
|
|
282
290
|
- **Hotfix for Startup**: Fixed a syntax error introduced in v1.9.2 that prevented the application from starting.
|
|
283
291
|
|
|
@@ -17,6 +17,7 @@ import socket
|
|
|
17
17
|
import locale
|
|
18
18
|
import signal
|
|
19
19
|
import warnings
|
|
20
|
+
import webbrowser
|
|
20
21
|
# Suppress urllib3 warning about LibreSSL compatibility
|
|
21
22
|
warnings.filterwarnings("ignore", message=".*urllib3 v2 only supports OpenSSL 1.1.1+.*")
|
|
22
23
|
import webbrowser
|
|
@@ -35,7 +36,7 @@ MPV_SOCKET = "/tmp/mpv_socket"
|
|
|
35
36
|
LOG_FILE = "/tmp/mytunes_mpv.log"
|
|
36
37
|
PID_FILE = "/tmp/mytunes_mpv.pid"
|
|
37
38
|
APP_NAME = "MyTunes Pro"
|
|
38
|
-
APP_VERSION = "1.9.
|
|
39
|
+
APP_VERSION = "1.9.5"
|
|
39
40
|
|
|
40
41
|
# === [Strings & Localization] ===
|
|
41
42
|
STRINGS = {
|
|
@@ -765,20 +766,23 @@ class MyTunesApp:
|
|
|
765
766
|
self.show_copy_dialog("Live Station", live_url)
|
|
766
767
|
return
|
|
767
768
|
|
|
768
|
-
# v1.9.
|
|
769
|
-
#
|
|
770
|
-
# We
|
|
771
|
-
# This
|
|
769
|
+
# v1.9.4 - Ultimate WSL Fix: Use Standard Webbrowser Module
|
|
770
|
+
# Subprocess/cmd.exe based launching in WSL is unstable.
|
|
771
|
+
# We switch to the standard `webbrowser` module which handles system default browser reliably.
|
|
772
|
+
# This sacrifices window sizing but guarantees the URL opens.
|
|
772
773
|
if self.is_wsl():
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
774
|
+
threading.Thread(target=webbrowser.open, args=(live_url,), daemon=True).start()
|
|
775
|
+
return
|
|
776
|
+
|
|
777
|
+
# Native (Mac/Windows/Linux) Logic Continues Below...
|
|
778
|
+
temp_user_data = os.path.join(tempfile.gettempdir(), f"mytunes_v190_{int(time.time() / 10)}")
|
|
776
779
|
|
|
777
780
|
# Optimized Flag Set (Context7 Research)
|
|
778
781
|
flags = [
|
|
779
782
|
f"--app={live_url}",
|
|
780
783
|
"--window-size=712,800",
|
|
781
784
|
"--window-position=100,100",
|
|
785
|
+
f"--user-data-dir={temp_user_data}",
|
|
782
786
|
"--no-first-run",
|
|
783
787
|
"--no-default-browser-check",
|
|
784
788
|
"--disable-default-apps",
|
|
@@ -791,10 +795,6 @@ class MyTunesApp:
|
|
|
791
795
|
"--disable-extensions"
|
|
792
796
|
]
|
|
793
797
|
|
|
794
|
-
# Only add user-data-dir if we have a valid path (Non-WSL)
|
|
795
|
-
if temp_user_data:
|
|
796
|
-
flags.append(f"--user-data-dir={temp_user_data}")
|
|
797
|
-
|
|
798
798
|
launched = False
|
|
799
799
|
# v1.8.4 - Subprocess Isolation (start_new_session) to prevent crashes on WSL/Linux
|
|
800
800
|
# 1. macOS
|
|
@@ -822,28 +822,6 @@ class MyTunesApp:
|
|
|
822
822
|
launched = True; break
|
|
823
823
|
except: pass
|
|
824
824
|
|
|
825
|
-
# 3. WSL / Linux (Direct path with session isolation)
|
|
826
|
-
elif self.is_wsl():
|
|
827
|
-
wsl_paths = [
|
|
828
|
-
"/mnt/c/Program Files/Google/Chrome/Application/chrome.exe",
|
|
829
|
-
"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",
|
|
830
|
-
"/mnt/c/Program Files/BraveSoftware/Brave-Browser/Application/brave.exe",
|
|
831
|
-
]
|
|
832
|
-
for p in wsl_paths:
|
|
833
|
-
if os.path.exists(p):
|
|
834
|
-
try:
|
|
835
|
-
# CRITICAL: start_new_session=True isolates the browser from the TUI process group
|
|
836
|
-
# This prevents the TUI from dying when navigating or if the browser has shell issues.
|
|
837
|
-
subprocess.Popen([p] + flags, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL, start_new_session=True)
|
|
838
|
-
launched = True; break
|
|
839
|
-
except: pass
|
|
840
|
-
|
|
841
|
-
if not launched:
|
|
842
|
-
try:
|
|
843
|
-
# Fallback for WSL to CMD (path is already converted upstream)
|
|
844
|
-
subprocess.Popen(["cmd.exe", "/c", f"start chrome --app={live_url} --user-data-dir={temp_user_data}"], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL, start_new_session=True)
|
|
845
|
-
launched = True
|
|
846
|
-
except: pass
|
|
847
825
|
|
|
848
826
|
# 4. Native Linux
|
|
849
827
|
else:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mytunes-pro
|
|
3
|
-
Version: 1.9.
|
|
3
|
+
Version: 1.9.5
|
|
4
4
|
Summary: A lightweight, keyboard-centric terminal player for streaming YouTube music.
|
|
5
5
|
Author-email: loxo <loxo5432@gmail.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/postgresql-co-kr/mytunes
|
|
@@ -19,7 +19,7 @@ Dynamic: license-file
|
|
|
19
19
|
|
|
20
20
|
# 🎵 MyTunes Pro (Korean)
|
|
21
21
|
|
|
22
|
-
**현대적인 CLI 유튜브 뮤직 플레이어 (v1.9.
|
|
22
|
+
**현대적인 CLI 유튜브 뮤직 플레이어 (v1.9.5)**
|
|
23
23
|
터미널 환경에서 **YouTube 음악을 검색하여 듣는** 가볍고 빠른 키보드 중심의 플레이어입니다.
|
|
24
24
|
한국어 입력 환경에서도 **숫자 키(1~5)**를 통해 지연 없는 쾌적한 조작이 가능합니다.
|
|
25
25
|
|
|
@@ -208,7 +208,7 @@ Windows 환경에서 한글 검색이 안 되거나 설치가 어려운 분들
|
|
|
208
208
|
|
|
209
209
|
# 🎵 MyTunes Pro (English)
|
|
210
210
|
|
|
211
|
-
**Modern CLI YouTube Music Player (v1.9.
|
|
211
|
+
**Modern CLI YouTube Music Player (v1.9.5)**
|
|
212
212
|
A lightweight, keyboard-centric terminal player for streaming YouTube music.
|
|
213
213
|
|
|
214
214
|
---
|
|
@@ -296,7 +296,15 @@ sudo apt install mpv python3 python3-pip pipx python3-venv -y
|
|
|
296
296
|
|
|
297
297
|
## 🔄 Changelog
|
|
298
298
|
|
|
299
|
-
### v1.9.
|
|
299
|
+
### v1.9.5 (Cleanup)
|
|
300
|
+
|
|
301
|
+
- **Code Cleanup**: Removed deprecated and unreachable WSL subprocess launch logic to ensure codebase cleanliness and prevent confusion. The application now exclusively uses the stable `webbrowser` module for WSL.
|
|
302
|
+
|
|
303
|
+
### v1.9.4
|
|
304
|
+
|
|
305
|
+
- **Ultimate WSL Fix**: Switched to using Python's standard `webbrowser` module for opening links in WSL. This fully delegates browser launching to the system (Windows host), ensuring maximum stability and eliminating all `subprocess` or `cmd.exe` related conflicts.
|
|
306
|
+
|
|
307
|
+
### v1.9.3
|
|
300
308
|
|
|
301
309
|
- **Hotfix for Startup**: Fixed a syntax error introduced in v1.9.2 that prevented the application from starting.
|
|
302
310
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|