Rebase to main branch (#598)

* Add detail to client update check failure message

* Add detail to GuiConfig update check failure log

* Fix update check on macOS (#595)

* buildPy2app: add charset_normalizer to includes

* Actions macOS: force universal wheels for charset-normalizer

* buildPy2app: add charset_normalizer.md__mypyc to includes

---------

Co-authored-by: Alberto Sottile <alby128@gmail.com>

* Upver to 104 / 1.7.0 RC1a

* Revert default max username length to 16 chars (#596)

* Set server's recent client threshold to >=1.7.0

* Mark as 1.7.0 final

---------

Co-authored-by: Alberto Sottile <alby128@gmail.com>
This commit is contained in:
Etoh 2023-03-26 22:52:12 +01:00 committed by GitHub
parent 791bf48280
commit 5fbb5bb37a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 13 additions and 9 deletions

View File

@ -104,6 +104,10 @@ jobs:
pip3 download --platform macosx_10_10_universal2 --only-binary :all: --no-deps --dest . cryptography pip3 download --platform macosx_10_10_universal2 --only-binary :all: --no-deps --dest . cryptography
pip3 install --no-cache-dir --no-index --find-links . cryptography pip3 install --no-cache-dir --no-index --find-links . cryptography
pip3 uninstall charset-normalizer -y
pip3 download --platform macosx_10_9_universal2 --only-binary :all: --no-deps --dest . charset-normalizer
pip3 install --no-cache-dir --no-index --find-links . charset-normalizer
- name: Check Python dependencies - name: Check Python dependencies
run: | run: |
python3 -c "from PySide6 import __version__; print(__version__)" python3 -c "from PySide6 import __version__; print(__version__)"

View File

@ -17,7 +17,7 @@ DATA_FILES = [
OPTIONS = { OPTIONS = {
'iconfile': 'syncplay/resources/icon.icns', 'iconfile': 'syncplay/resources/icon.icns',
'extra_scripts': 'syncplayServer.py', 'extra_scripts': 'syncplayServer.py',
'includes': {'PySide2.QtCore', 'PySide2.QtUiTools', 'PySide2.QtGui', 'PySide2.QtWidgets', 'certifi', 'cffi', 'pem'}, 'includes': {'PySide2.QtCore', 'PySide2.QtUiTools', 'PySide2.QtGui', 'PySide2.QtWidgets', 'certifi', 'cffi', 'pem', 'charset_normalizer.md__mypyc'},
'excludes': {'PySide', 'PySide.QtCore', 'PySide.QtUiTools', 'PySide.QtGui', 'tkinter'}, 'excludes': {'PySide', 'PySide.QtCore', 'PySide.QtUiTools', 'PySide.QtGui', 'tkinter'},
'qt_plugins': [ 'qt_plugins': [
'platforms/libqcocoa.dylib', 'platforms/libqcocoa.dylib',

View File

@ -1,5 +1,5 @@
version = '1.7.0' version = '1.7.0'
revision = ' release candidate 1' revision = ''
milestone = 'Yoitsu' milestone = 'Yoitsu'
release_number = '103' release_number = '105'
projectURL = 'https://syncplay.pl/' projectURL = 'https://syncplay.pl/'

View File

@ -1124,8 +1124,8 @@ class SyncplayClient(object):
publicServers = ast.literal_eval(publicServers) publicServers = ast.literal_eval(publicServers)
return response["version-status"], response["version-message"] if "version-message" in response\ return response["version-status"], response["version-message"] if "version-message" in response\
else None, response["version-url"] if "version-url" in response else None, publicServers else None, response["version-url"] if "version-url" in response else None, publicServers
except: except Exception as e:
return "failed", getMessage("update-check-failed-notification").format(syncplay.version), constants.SYNCPLAY_DOWNLOAD_URL, None return "failed", str(e)+"\n-----\n"+getMessage("update-check-failed-notification").format(syncplay.version), constants.SYNCPLAY_DOWNLOAD_URL, None
class _WarningManager(object): class _WarningManager(object):
def __init__(self, player, userlist, ui, client): def __init__(self, player, userlist, ui, client):

View File

@ -29,7 +29,7 @@ MPLAYER_OSD_LEVEL = 1
UI_TIME_FORMAT = "[%X] " UI_TIME_FORMAT = "[%X] "
CONFIG_NAMES = [".syncplay", "syncplay.ini"] # Syncplay searches first to last CONFIG_NAMES = [".syncplay", "syncplay.ini"] # Syncplay searches first to last
DEFAULT_CONFIG_NAME = "syncplay.ini" DEFAULT_CONFIG_NAME = "syncplay.ini"
RECENT_CLIENT_THRESHOLD = "1.6.8" # This and higher considered 'recent' clients (no warnings) RECENT_CLIENT_THRESHOLD = "1.7.0" # This and higher considered 'recent' clients (no warnings)
MUSIC_FORMATS = [".mp3", ".m4a", ".m4p", ".wav", ".aiff", ".r", ".ogg", ".flac"] # ALL LOWER CASE! 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 WARN_OLD_CLIENTS = True # Use MOTD to inform old clients to upgrade
LIST_RELATIVE_CONFIGS = True # Print list of relative configs loaded LIST_RELATIVE_CONFIGS = True # Print list of relative configs loaded
@ -96,7 +96,7 @@ DEFAULT_CHAT_FONT_WEIGHT = 1
# Max numbers are used by server (and client pre-connection). Once connected client gets values from server featureList (or uses 'fallback' versions for old servers) # Max numbers are used by server (and client pre-connection). Once connected client gets values from server featureList (or uses 'fallback' versions for old servers)
MAX_CHAT_MESSAGE_LENGTH = 150 # Number of displayed characters MAX_CHAT_MESSAGE_LENGTH = 150 # Number of displayed characters
MAX_USERNAME_LENGTH = 150 # Number of displayed characters MAX_USERNAME_LENGTH = 16 # Number of displayed characters
MAX_ROOM_NAME_LENGTH = 35 # Number of displayed characters MAX_ROOM_NAME_LENGTH = 35 # Number of displayed characters
MAX_FILENAME_LENGTH = 250 # Number of displayed characters MAX_FILENAME_LENGTH = 250 # Number of displayed characters
FALLBACK_MAX_CHAT_MESSAGE_LENGTH = 50 # Number of displayed characters FALLBACK_MAX_CHAT_MESSAGE_LENGTH = 50 # Number of displayed characters

View File

@ -1902,8 +1902,8 @@ class MainWindow(QtWidgets.QMainWindow):
timeDelta = currentDateTimeValue.toPython() - self.lastCheckedForUpdates.toPython() timeDelta = currentDateTimeValue.toPython() - self.lastCheckedForUpdates.toPython()
if timeDelta.total_seconds() > constants.AUTOMATIC_UPDATE_CHECK_FREQUENCY: if timeDelta.total_seconds() > constants.AUTOMATIC_UPDATE_CHECK_FREQUENCY:
self.checkForUpdates() self.checkForUpdates()
except: except Exception as e:
self.showDebugMessage("Automatic check for updates failed. An update check was manually trigggered.") self.showDebugMessage("Automatic check for updates failed. An update check was manually trigggered. Reason: {}".format(str(e)))
self.checkForUpdates() self.checkForUpdates()
def userCheckForUpdates(self): def userCheckForUpdates(self):