mirror of https://github.com/Syncplay/syncplay
Added automatic version numbering for Travis
This commit is contained in:
commit
08c41ddbb1
|
@ -1,44 +1,44 @@
|
|||
environment:
|
||||
MINICONDA: "C:\\Miniconda"
|
||||
clone_folder: c:\projects\syncplay
|
||||
|
||||
image:
|
||||
- Visual Studio 2013
|
||||
|
||||
platform: x86
|
||||
|
||||
configuration: Release
|
||||
|
||||
init:
|
||||
- set PATH=C:\Miniconda;C:\Miniconda\Scripts;%PATH%
|
||||
- cmd: conda create -n syncplay -y
|
||||
- cmd: activate syncplay
|
||||
- cmd: conda install python pywin32 pyside -y
|
||||
- cmd: pip install twisted py2exe_py2 zope.interface
|
||||
- cmd: type nul > C:\Miniconda\envs\syncplay\lib\site-packages\zope\__init__.py
|
||||
- cmd: pip freeze
|
||||
- cmd: conda list
|
||||
- set PATH=C:\Miniconda;C:\Miniconda\Scripts;C:\Program Files (x86)\NSIS;%PATH%
|
||||
- conda create -n syncplay -y
|
||||
- activate syncplay
|
||||
- conda install python pywin32 pyside -y
|
||||
- pip install twisted py2exe_py2 zope.interface
|
||||
- type nul > C:\Miniconda\envs\syncplay\lib\site-packages\zope\__init__.py
|
||||
- pip freeze
|
||||
- conda list
|
||||
|
||||
install:
|
||||
- cmd: cd c:\projects\syncplay
|
||||
- cmd: python buildPy2exe.py
|
||||
- cmd: del C:\projects\syncplay\syncplay_v1.5.0\lib\DNSAPI.dll
|
||||
- cmd: del C:\projects\syncplay\syncplay_v1.5.0\lib\MPR.dll
|
||||
- cmd: mkdir C:\projects\syncplay\syncplay_v1.5.0\platforms
|
||||
#- cmd: copy C:\Miniconda\envs\syncplay\library\plugins\platforms\qwindows.dll C:\projects\syncplay\syncplay_v1.5.0\platforms\
|
||||
- cd %APPVEYOR_BUILD_FOLDER%
|
||||
- for /F "tokens=2 delims='" %%a in ('findstr version syncplay\__init__.py') do @set ver=%%a
|
||||
- python buildPy2exe.py
|
||||
- del syncplay_v%ver%\lib\MPR.dll
|
||||
- mkdir syncplay_v%ver%\platforms
|
||||
#- copy C:\Miniconda\envs\syncplay\library\plugins\platforms\qwindows.dll C:\projects\syncplay\syncplay_v1.5.0\platforms\
|
||||
|
||||
# Not a project with an msbuild file, build done at install.
|
||||
build: off
|
||||
|
||||
artifacts:
|
||||
path: 'syncplay_v1.5.0'
|
||||
type: zip
|
||||
name: Syncplay_win
|
||||
- path: 'syncplay_v$(ver)'
|
||||
type: zip
|
||||
name: Syncplay-$(ver)-win
|
||||
|
||||
- path: Syncplay-$(ver)-Setup.exe
|
||||
name: Syncplay-$(ver)-win-setup
|
||||
|
||||
# Push artefact to S3 bucket and list all
|
||||
before_deploy:
|
||||
- cmd: dir
|
||||
#- cmd: python -c "from PySide2 import QtCore; print QtCore.QLibraryInfo.location(QtCore.QLibraryInfo.PluginsPath)"
|
||||
- dir
|
||||
#- python -c "from PySide2 import QtCore; print QtCore.QLibraryInfo.location(QtCore.QLibraryInfo.PluginsPath)"
|
||||
|
||||
|
||||
# Deploy build to BinTray
|
||||
deploy:
|
||||
|
@ -51,4 +51,5 @@ deploy:
|
|||
package: Syncplay
|
||||
version: "test"
|
||||
publish: true
|
||||
override: true
|
||||
override: true
|
||||
|
|
@ -7,6 +7,7 @@ venv
|
|||
/build
|
||||
/dist
|
||||
/syncplay v*
|
||||
/syncplay_v*
|
||||
syncplay_setup.nsi
|
||||
dist.7z
|
||||
.*
|
||||
|
|
|
@ -25,7 +25,8 @@ before_deploy:
|
|||
- mv resources/macos_vlc_install.command resources/.macos_vlc_install.command
|
||||
- mv resources/lua/intf/syncplay.lua resources/lua/intf/.syncplay.lua
|
||||
- mv resources/macOS_readme.pdf resources/.macOS_readme.pdf
|
||||
- dmgbuild -s appdmg.py "Syncplay" dist_dmg/Syncplay_macOS.dmg
|
||||
- export VER="$(cat syncplay/__init__.py | awk '/version/ {gsub("\047", "", $3); print $NF}')"
|
||||
- dmgbuild -s appdmg.py "Syncplay" dist_dmg/Syncplay_$(VER)_macOS.dmg
|
||||
|
||||
deploy:
|
||||
on: master_local
|
||||
|
|
|
@ -16,4 +16,4 @@
|
|||
"override": 1 }}
|
||||
],
|
||||
"publish": true
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
) If you get the error "ImportError: No module named zope.interface" then add an empty __init__.py file to the PYTHONDIR/Lib/site-packages/zope directory
|
||||
|
||||
2) It is expected that you will have NSIS 3 NSIS from http://nsis.sourceforge.net installed to: C:\Program Files (x86)\NSIS\
|
||||
2) It is expected that you will have NSIS 3 NSIS from http://nsis.sourceforge.net installed.
|
||||
|
||||
'''
|
||||
|
||||
|
@ -31,8 +31,21 @@ if missingStrings is not None and missingStrings is not "":
|
|||
import warnings
|
||||
warnings.warn("MISSING/UNUSED STRINGS DETECTED:\n{}".format(missingStrings))
|
||||
|
||||
p = "C:\\Program Files (x86)\\NSIS\\makensis.exe" #TODO: how to move that into proper place, huh
|
||||
NSIS_COMPILE = p if os.path.isfile(p) else "makensis.exe"
|
||||
def get_nsis_path():
|
||||
bin_name = "makensis.exe"
|
||||
from _winreg import HKEY_LOCAL_MACHINE as HKLM
|
||||
from _winreg import KEY_READ, KEY_WOW64_32KEY, OpenKey, QueryValueEx
|
||||
|
||||
try:
|
||||
nsisreg = OpenKey(HKLM, "Software\\NSIS", 0, KEY_READ | KEY_WOW64_32KEY)
|
||||
if QueryValueEx(nsisreg, "VersionMajor")[0] >= 3:
|
||||
return "{}\\{}".format(QueryValueEx(nsisreg, "")[0], bin_name)
|
||||
else:
|
||||
raise Exception("You must install NSIS 3 or later.")
|
||||
except WindowsError:
|
||||
return bin_name
|
||||
NSIS_COMPILE = get_nsis_path()
|
||||
|
||||
OUT_DIR = "syncplay_v{}".format(syncplay.version)
|
||||
SETUP_SCRIPT_PATH = "syncplay_setup.nsi"
|
||||
NSIS_SCRIPT_TEMPLATE = r"""
|
||||
|
@ -48,7 +61,7 @@ NSIS_SCRIPT_TEMPLATE = r"""
|
|||
Unicode true
|
||||
|
||||
Name "Syncplay $version"
|
||||
OutFile "Syncplay $version Setup.exe"
|
||||
OutFile "Syncplay-$version-Setup.exe"
|
||||
InstallDir $$PROGRAMFILES\Syncplay
|
||||
RequestExecutionLevel admin
|
||||
XPStyle on
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
version = '1.5.0'
|
||||
version = '1.5.1'
|
||||
milestone = 'Yoitsu'
|
||||
release_number = '50'
|
||||
release_number = '51'
|
||||
projectURL = 'http://syncplay.pl/'
|
||||
|
|
|
@ -9,7 +9,7 @@ UI_TIME_FORMAT = "[%X] "
|
|||
CONFIG_NAMES = [".syncplay", "syncplay.ini"] #Syncplay searches first to last
|
||||
DEFAULT_CONFIG_NAME_WINDOWS = "syncplay.ini"
|
||||
DEFAULT_CONFIG_NAME_LINUX = ".syncplay"
|
||||
RECENT_CLIENT_THRESHOLD = "1.5.0" #This and higher considered 'recent' clients (no warnings)
|
||||
RECENT_CLIENT_THRESHOLD = "1.5.1" #This and higher considered 'recent' clients (no warnings)
|
||||
WARN_OLD_CLIENTS = True #Use MOTD to inform old clients to upgrade
|
||||
LIST_RELATIVE_CONFIGS = True # Print list of relative configs loaded
|
||||
SHOW_CONTACT_INFO = True # Displays dev contact details below list in GUI
|
||||
|
@ -177,7 +177,7 @@ USERLIST_GUI_FILENAME_COLUMN = 3
|
|||
MPLAYER_SLAVE_ARGS = ['-slave', '--hr-seek=always', '-nomsgcolor', '-msglevel', 'all=1:global=4:cplayer=4', '-af-add', 'scaletempo']
|
||||
MPV_ARGS = ['--force-window', '--idle', '--hr-seek=always', '--keep-open']
|
||||
MPV_SLAVE_ARGS = ['--msg-level=all=error,cplayer=info,term-msg=info', '--input-terminal=no', '--input-file=/dev/stdin']
|
||||
MPV_SLAVE_ARGS_NEW = ['--term-playing-msg=<SyncplayUpdateFile>\nANS_filename=${filename}\nANS_length=${=length:${=duration:0}}\nANS_path=${path}\n</SyncplayUpdateFile>', '--terminal=yes']
|
||||
MPV_SLAVE_ARGS_NEW = ['--term-playing-msg=<SyncplayUpdateFile>\nANS_filename=${filename}\nANS_length=${=duration:${=length:0}}\nANS_path=${path}\n</SyncplayUpdateFile>', '--terminal=yes']
|
||||
MPV_NEW_VERSION = False
|
||||
VLC_SLAVE_ARGS = ['--extraintf=luaintf', '--lua-intf=syncplay', '--no-quiet', '--no-input-fast-seek',
|
||||
'--play-and-pause', '--start-time=0']
|
||||
|
|
|
@ -479,7 +479,7 @@ class MPCHCAPIPlayer(BasePlayer):
|
|||
|
||||
@staticmethod
|
||||
def getIconPath(path):
|
||||
if MPCHCAPIPlayer.getExpandedPath(path).lower().endswith(u'mpc-hc64.exe'.lower()):
|
||||
if MPCHCAPIPlayer.getExpandedPath(path).lower().endswith(u'mpc-hc64.exe'.lower()) or MPCHCAPIPlayer.getExpandedPath(path).lower().endswith(u'mpc-hc64_nvo.exe'.lower()):
|
||||
return constants.MPC64_ICONPATH
|
||||
else:
|
||||
return constants.MPC_ICONPATH
|
||||
|
@ -493,7 +493,7 @@ class MPCHCAPIPlayer(BasePlayer):
|
|||
@staticmethod
|
||||
def getExpandedPath(path):
|
||||
if os.path.isfile(path):
|
||||
if path.lower().endswith(u'mpc-hc.exe'.lower()) or path.lower().endswith(u'mpc-hc64.exe'.lower()):
|
||||
if path.lower().endswith(u'mpc-hc.exe'.lower()) or path.lower().endswith(u'mpc-hc64.exe'.lower()) or path.lower().endswith(u'mpc-hc64_nvo.exe'.lower()) or path.lower().endswith(u'mpc-hc_nvo.exe'.lower()):
|
||||
return path
|
||||
if os.path.isfile(path + u"mpc-hc.exe"):
|
||||
path += u"mpc-hc.exe"
|
||||
|
@ -501,9 +501,22 @@ class MPCHCAPIPlayer(BasePlayer):
|
|||
if os.path.isfile(path + u"\\mpc-hc.exe"):
|
||||
path += u"\\mpc-hc.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"mpc-hc_nvo.exe"):
|
||||
path += u"mpc-hc_nvo.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"\\mpc-hc_nvo.exe"):
|
||||
path += u"\\mpc-hc_nvo.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"mpc-hc64.exe"):
|
||||
path += u"mpc-hc64.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"\\mpc-hc64.exe"):
|
||||
path += u"\\mpc-hc64.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"mpc-hc64_nvo.exe"):
|
||||
path += u"mpc-hc64_nvo.exe"
|
||||
return path
|
||||
if os.path.isfile(path + u"\\mpc-hc64_nvo.exe"):
|
||||
path += u"\\mpc-hc64_nvo.exe"
|
||||
return path
|
||||
|
||||
|
|
|
@ -183,7 +183,10 @@ class MplayerPlayer(BasePlayer):
|
|||
self._storePauseState(bool(value == 'yes'))
|
||||
self._pausedAsk.set()
|
||||
elif name == "length":
|
||||
self._duration = float(value)
|
||||
try:
|
||||
self._duration = float(value)
|
||||
except:
|
||||
self._duration = 0
|
||||
self._durationAsk.set()
|
||||
elif name == "path":
|
||||
self._filepath = value
|
||||
|
|
|
@ -124,7 +124,7 @@ class NewMpvPlayer(OldMpvPlayer):
|
|||
if property_ in floatProperties:
|
||||
propertyID = u"={}".format(property_)
|
||||
elif property_ == 'length':
|
||||
propertyID = u'=length:${=duration:0}'
|
||||
propertyID = u'=duration:${=length:0}'
|
||||
else:
|
||||
propertyID = property_
|
||||
self._listener.sendLine(u"print_text ""ANS_{}=${{{}}}""".format(property_, propertyID))
|
||||
|
|
|
@ -1575,6 +1575,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||
data = event.mimeData()
|
||||
urls = data.urls()
|
||||
if urls and urls[0].scheme() == 'file':
|
||||
url = event.mimeData().urls()[0]
|
||||
if isMacOS() and IsPySide:
|
||||
dropfilepath = os.path.abspath(NSURL.URLWithString_(str(url.toString())).filePathURL().path())
|
||||
else:
|
||||
|
|
Loading…
Reference in New Issue