diff --git a/ci/deb-script.sh b/ci/deb-script.sh index 6b40afa40..ba5a88af3 100755 --- a/ci/deb-script.sh +++ b/ci/deb-script.sh @@ -16,7 +16,7 @@ Version: "$( )" Architecture: all Maintainer: -Depends: python3 (>= 3.6), python3-pyside2.qtwidgets, python3-pyside2.qtcore, python3-twisted (>= 16.4.0), python3-certifi, mpv (>= 0.23) | vlc (>= 2.2.1) +Depends: python3 (>= 3.6), python3-pyside2.qtwidgets | python3-pyside6.qtwidgets, python3-pyside2.qtcore | python3-pyside6.qtcore, python3-twisted (>= 16.4.0), python3-certifi, python3-pem, mpv (>= 0.23) | vlc (>= 2.2.1) Homepage: https://syncplay.pl Section: web Priority: optional diff --git a/syncplay/__init__.py b/syncplay/__init__.py index 34b434e48..2f1b41bba 100755 --- a/syncplay/__init__.py +++ b/syncplay/__init__.py @@ -1,5 +1,5 @@ -version = '1.7.2' +version = '1.7.4' revision = ' development' milestone = 'Yoitsu' -release_number = '110' +release_number = '113' projectURL = 'https://syncplay.pl/' diff --git a/syncplay/client.py b/syncplay/client.py index d0aed9a39..2ede13148 100755 --- a/syncplay/client.py +++ b/syncplay/client.py @@ -71,6 +71,9 @@ def __init__(self, playerClass, ui, config): constants.SHOW_SAME_ROOM_OSD = config['showSameRoomOSD'] constants.SHOW_DURATION_NOTIFICATION = config['showDurationNotification'] constants.DEBUG_MODE = config['debug'] + constants.FOLDER_SEARCH_FIRST_FILE_TIMEOUT = config['folderSearchFirstFileTimeout'] + constants.FOLDER_SEARCH_TIMEOUT = config['folderSearchTimeout'] + constants.FOLDER_SEARCH_DOUBLE_CHECK_INTERVAL = config['folderSearchDoubleCheckInterval'] self.controlpasswords = {} self.lastControlPasswordAttempt = None @@ -1795,6 +1798,9 @@ def changeToPlaylistIndexFromFilename(self, filename): def loadDelayedPath(self, changeToIndex): # Implementing the behaviour set out at https://github.com/Syncplay/syncplay/issues/315 + if not self._client: + return + if self._client.playerIsNotReady(): self._client.addPlayerReadyCallback(lambda x: self.loadDelayedPath(changeToIndex)) return diff --git a/syncplay/constants.py b/syncplay/constants.py index 5cac0bdb0..53ea057a6 100755 --- a/syncplay/constants.py +++ b/syncplay/constants.py @@ -29,7 +29,7 @@ def getValueForOS(constantDict): UI_TIME_FORMAT = "[%X] " CONFIG_NAMES = [".syncplay", "syncplay.ini"] # Syncplay searches first to last DEFAULT_CONFIG_NAME = "syncplay.ini" -RECENT_CLIENT_THRESHOLD = "1.7.1" # This and higher considered 'recent' clients (no warnings) +RECENT_CLIENT_THRESHOLD = "1.7.3" # This and higher considered 'recent' clients (no warnings) MUSIC_FORMATS = [".mp3", ".m4a", ".m4p", ".wav", ".aiff", ".r", ".ogg", ".flac"] # ALL LOWER CASE! WARN_OLD_CLIENTS = True # Use MOTD to inform old clients to upgrade LIST_RELATIVE_CONFIGS = True # Print list of relative configs loaded @@ -112,9 +112,9 @@ def getValueForOS(constantDict): # Usually there's no need to adjust these DOUBLE_CHECK_REWIND = False LAST_PAUSED_DIFF_THRESHOLD = 2 -FILENAME_STRIP_REGEX = "[-~_\.\[\](): ]" -CONTROL_PASSWORD_STRIP_REGEX = "[^a-zA-Z0-9\-]" -ROOM_NAME_STRIP_REGEX = "^(\+)(?P.*)(:)(\w{12})$" +FILENAME_STRIP_REGEX = r"[-~_\.\[\](): ]" +CONTROL_PASSWORD_STRIP_REGEX = r"[^a-zA-Z0-9\-]" +ROOM_NAME_STRIP_REGEX = r"^(\+)(?P.*)(:)(\w{12})$" ARGUMENT_SPLIT_REGEX = r'(?:[^\s"]+|"[^"]*")+' COMMANDS_UNDO = ["u", "undo", "revert"] COMMANDS_CHAT = ["ch", "chat"] @@ -166,7 +166,7 @@ def getValueForOS(constantDict): ] MPC_EXECUTABLES = ["mpc-hc.exe", "mpc-hc64.exe", "mpc-hcportable.exe", "mpc-hc_nvo.exe", "mpc-hc64_nvo.exe", "shoukaku.exe"] -MPC64_EXECUTABLES = ["mpc-hc64.exe", "mpc-hc64_nvo.exe", "x64\mpc-hc\shoukaku.exe"] +MPC64_EXECUTABLES = ["mpc-hc64.exe", "mpc-hc64_nvo.exe", r"x64\mpc-hc\shoukaku.exe"] MPC_BE_PATHS = [ r"c:\program files\mpc-be x64\mpc-be64.exe", @@ -183,6 +183,7 @@ def getValueForOS(constantDict): import os MPVNET_PATHS.append(os.path.expandvars(r'%LOCALAPPDATA%\Microsoft\WindowsApps\mpvnet.exe')) MPVNET_PATHS.append(os.path.expandvars(r'%LOCALAPPDATA%\Programs\mpv.net\mpvnet.exe')) + MPV_PATHS.append(os.path.expandvars(r'%LOCALAPPDATA%\Microsoft\WindowsApps\mpv.exe')) except: pass VLC_PATHS = [ @@ -305,7 +306,7 @@ def getValueForOS(constantDict): OS_MACOS: ['--verbose=2', '--no-file-logging']}) MPV_SUPERSEDE_IF_DUPLICATE_COMMANDS = ["set_property time-pos ", "loadfile "] MPV_REMOVE_BOTH_IF_DUPLICATE_COMMANDS = ["cycle pause"] -MPLAYER_ANSWER_REGEX = "^ANS_([a-zA-Z_-]+)=(.+)$|^(Exiting)\.\.\. \((.+)\)$" +MPLAYER_ANSWER_REGEX = r"^ANS_([a-zA-Z_-]+)=(.+)$|^(Exiting)\.\.\. \((.+)\)$" VLC_ANSWER_REGEX = r"(?:^(?P[a-zA-Z_-]+)(?:\: )?(?P.*))" UI_COMMAND_REGEX = r"^(?P[^\ ]+)(?:\ (?P.+))?" UI_OFFSET_REGEX = r"^(?:o|offset)\ ?(?P[/+-])?(?P