Re: [Openlp-core] [Merge] lp:~thelinuxguy/openlp/flake-fixes into lp:openlp
Review: Needs Information I'm not sure about those patches that were changed (see in line) isn't patching supposed to take place in the module they're imported in to? Diff comments: > > === modified file 'tests/functional/openlp_plugins/bibles/test_csvimport.py' > --- tests/functional/openlp_plugins/bibles/test_csvimport.py 2017-12-29 > 09:15:48 + > +++ tests/functional/openlp_plugins/bibles/test_csvimport.py 2018-08-21 > 22:59:09 + > @@ -134,7 +134,7 @@ > > with > patch('openlp.plugins.bibles.lib.importers.csvbible.get_file_encoding', > return_value={'encoding': 'utf-8', 'confidence': 0.99}),\ > - > patch('openlp.plugins.bibles.lib.importers.csvbible.Path.open', create=True) > as mocked_open,\ > +patch('openlp.core.common.path.Path.open', create=True) as > mocked_open,\ Not sure this is correct. Shouldn't the object be patched where they're imported? > > patch('openlp.plugins.bibles.lib.importers.csvbible.csv.reader', >return_value=iter(test_data)) as mocked_reader: > > @@ -154,7 +154,7 @@ > # GIVEN: Mocked a mocked open object which raises an OSError > with > patch('openlp.plugins.bibles.lib.importers.csvbible.get_file_encoding', > return_value={'encoding': 'utf-8', 'confidence': 0.99}),\ > - > patch('openlp.plugins.bibles.lib.importers.csvbible.Path.open', > side_effect=OSError, create=True): > +patch('openlp.core.common.path.Path.open', > side_effect=OSError, create=True): see above ^ > > # WHEN: Calling CSVBible.parse_csv_file > # THEN: A ValidationError should be raised > @@ -169,7 +169,7 @@ > # GIVEN: Mocked a csv.reader which raises an csv.Error > with > patch('openlp.plugins.bibles.lib.importers.csvbible.get_file_encoding', > return_value={'encoding': 'utf-8', 'confidence': 0.99}),\ > - > patch('openlp.plugins.bibles.lib.importers.csvbible.Path.open', create=True),\ > +patch('openlp.core.common.path.Path.open', create=True),\ see above ^ > > patch('openlp.plugins.bibles.lib.importers.csvbible.csv.reader', > side_effect=csv.Error): > > # WHEN: Calling CSVBible.parse_csv_file -- https://code.launchpad.net/~thelinuxguy/openlp/flake-fixes/+merge/353535 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~thelinuxguy/openlp/flake-fixes into lp:openlp
I'm not sure if that makes a difference here, but when viewing it in the tests using the original definition shows what is actually being used. If you import it from somewhere else you could think that it's something different... -- https://code.launchpad.net/~thelinuxguy/openlp/flake-fixes/+merge/353535 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~raoul-snyman/openlp/pep440 into lp:openlp
The proposal to merge lp:~raoul-snyman/openlp/pep440 into lp:openlp has been updated. Status: Needs review => Superseded For more details, see: https://code.launchpad.net/~raoul-snyman/openlp/pep440/+merge/353548 -- Your team OpenLP Core is requested to review the proposed merge of lp:~raoul-snyman/openlp/pep440 into lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~raoul-snyman/openlp/pep440 into lp:openlp
Raoul Snyman has proposed merging lp:~raoul-snyman/openlp/pep440 into lp:openlp. Commit message: Make our version number PEP 440 compliant. Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~raoul-snyman/openlp/pep440/+merge/353579 -- Your team OpenLP Core is requested to review the proposed merge of lp:~raoul-snyman/openlp/pep440 into lp:openlp. === added file 'scripts/mp_update.py' --- scripts/mp_update.py 1970-01-01 00:00:00 + +++ scripts/mp_update.py 2018-08-22 14:27:13 + @@ -0,0 +1,58 @@ +#!/usr/bin/env python2 +import sys +import os +from argparse import ArgumentParser +from launchpadlib.credentials import UnencryptedFileCredentialStore +from launchpadlib.launchpad import Launchpad + +HERE = os.path.dirname(os.path.abspath(__file__)) + + +def parse_args(): +""" +Parse the command line arguments +""" +parser = ArgumentParser() +parser.add_argument('-p', '--merge-proposal', required=True, +help='The main part of the URL to the merge proposal, without the hostname.') +parser.add_argument('-m', '--message', required=True, +help='The comment to add to the merge proposal') +return parser.parse_args() + + +def get_merge_proposal(merge_proposal_url): +""" +Get the merge proposal for the ``merge_proposal_url`` +""" +lp = Launchpad.login_with('OpenLP CI', 'production', version='devel', + credential_store=UnencryptedFileCredentialStore(os.path.join(HERE, 'launchpadcreds.txt'))) +openlp_project = lp.projects['openlp'] +merge_proposals = openlp_project.getMergeProposals() +for merge_proposal in merge_proposals: +if str(merge_proposal).endswith(merge_proposal_url): +return merge_proposal +return None + + +def create_comment(merge_proposal, comment): +""" +Create a comment on the merge proposal +""" +merge_proposal.createComment(subject='comment', content=comment) + + +def main(): +""" +Run the thing +""" +args = parse_args() +merge_proposal = get_merge_proposal(args.merge_proposal) +if not merge_proposal: +print('No merge proposal with that URL found') +sys.exit(1) +else: +create_comment(merge_proposal, args.message) + + +if __name__ == '__main__': +main() === modified file 'setup.py' --- setup.py 2017-12-29 09:15:48 + +++ setup.py 2018-08-22 14:27:13 + @@ -99,10 +99,11 @@ if tree_revision == tag_revision: version_string = tag_version.decode('utf-8') else: -version_string = '%s-bzr%s' % (tag_version.decode('utf-8'), tree_revision.decode('utf-8')) +version_string = '{version}.dev{revision}'.format(version=tag_version.decode('utf-8'), + revision=tree_revision.decode('utf-8')) ver_file = open(VERSION_FILE, 'w') ver_file.write(version_string) -except: +except Exception: ver_file = open(VERSION_FILE, 'r') version_string = ver_file.read().strip() finally: ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] comment
-- https://code.launchpad.net/~raoul-snyman/openlp/pep440/+merge/353579 Your team OpenLP Core is requested to review the proposed merge of lp:~raoul-snyman/openlp/pep440 into lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] comment
= test session starts == platform linux -- Python 3.6.5, pytest-3.6.2, py-1.5.3, pluggy-0.6.0 rootdir: /var/lib/jenkins/jobs/02-Run_Tests/workspace/OpenLP-2.5.dev2833, inifile: plugins: mock-1.7.1, cov-2.5.1 collected 1208 items / 14 errors ERRORS ERROR collecting tests/functional/openlp_plugins/bibles/test_wordprojectimport.py tests/functional/openlp_plugins/bibles/test_wordprojectimport.py:33: in INDEX_PAGE = (TEST_PATH / 'wordproject_index.htm').read_bytes().decode() /usr/lib/python3.6/pathlib.py:1187: in read_bytes with self.open(mode='rb') as f: /usr/lib/python3.6/pathlib.py:1181: in open opener=self._opener) /usr/lib/python3.6/pathlib.py:1035: in _opener return self._accessor.open(self, flags, mode) /usr/lib/python3.6/pathlib.py:387: in wrapped return strfunc(str(pathobj), *args) E FileNotFoundError: [Errno 2] No such file or directory: '/var/lib/jenkins/jobs/02-Run_Tests/workspace/OpenLP-2.5.dev2833/tests/resources/bibles/wordproject_index.htm' ___ ERROR collecting tests/functional/openlp_plugins/media/test_mediaitem.py ___ tests/functional/openlp_plugins/media/test_mediaitem.py:32: in from openlp.plugins.media.lib.mediaitem import MediaMediaItem openlp/plugins/media/lib/__init__.py:23: in from .mediaitem import MediaMediaItem openlp/plugins/media/lib/mediaitem.py:49: in CLAPPERBOARD = UiIcons().clapperboard openlp/core/ui/icons.py:48: in __new__ cls.load(cls) openlp/core/ui/icons.py:57: in load qta.load_font('op', font_path, charmap_path) /usr/lib/python3/dist-packages/qtawesome/__init__.py:153: in load_font return _instance().load_font(prefix, ttf_filename, charmap_filename, directory) /usr/lib/python3/dist-packages/qtawesome/iconic_font.py:223: in load_font os.path.join(directory, ttf_filename))) E qtawesome.iconic_font.FontError: Font at '/var/lib/jenkins/jobs/02-Run_Tests/workspace/OpenLP-2.5.dev2833/openlp/core/ui/fonts/OpenLP.ttf' appears to be empty. If you are on Windows 10, please read https://support.microsoft.com/en-us/kb/3053676 to know how to prevent Windows from blocking the fonts that come with QtAwesome. __ ERROR collecting tests/functional/openlp_plugins/media/test_mediaplugin.py __ tests/functional/openlp_plugins/media/test_mediaplugin.py:29: in from openlp.plugins.media.mediaplugin import MediaPlugin, process_check_binary openlp/plugins/media/mediaplugin.py:38: in from openlp.plugins.media.lib import MediaMediaItem, MediaTab openlp/plugins/media/lib/__init__.py:23: in from .mediaitem import MediaMediaItem openlp/plugins/media/lib/mediaitem.py:49: in CLAPPERBOARD = UiIcons().clapperboard E AttributeError: 'UiIcons' object has no attribute 'clapperboard' __ ERROR collecting tests/openlp_core/projectors/test_projector_db.py __ ImportError while importing test module '/var/lib/jenkins/jobs/02-Run_Tests/workspace/OpenLP-2.5.dev2833/tests/openlp_core/projectors/test_projector_db.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) tests/openlp_core/projectors/test_projector_db.py:41: in from tests.resources.projector.data import TEST_DB_PJLINK1, TEST_DB, TEST1_DATA, TEST2_DATA, TEST3_DATA /usr/lib/python3/dist-packages/uno.py:428: in _uno_import raise uno_import_exc /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) E ImportError: No module named 'tests.resources' (or 'tests.resources.projector.data.TEST_DB_PJLINK1' is unknown) ___ ERROR collecting tests/openlp_core/projectors/test_projector_editform.py ___ ImportError while importing test module '/var/lib/jenkins/jobs/02-Run_Tests/workspace/OpenLP-2.5.dev2833/tests/openlp_core/projectors/test_projector_editform.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) tests/openlp_core/projectors/test_projector_editform.py:34: in from tests.resources.projector.data import TEST_DB, TEST1_DATA /usr/lib/python3/dist-packages/uno.py:428: in _uno_import raise uno_import_exc /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) E ImportError: No module named 'tests.resources' (or 'tests.resources.projector.data.TEST_DB' is unknown) ERROR collecting tests/openlp_core/projectors/test_projector_pjlink_base_01.py ImportError while importing test module '/var/lib/jenkins/jobs/02-Run_Tests/workspace/OpenLP-2.5.dev2833/tests/openlp_core/projectors/test_projector_pjlink_base_01.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: /usr/lib/python3/dist-packages/uno.py:350: in _
[Openlp-core] [Merge] lp:~thelinuxguy/openlp/editable-remote-port into lp:openlp
Simon Hanna has proposed merging lp:~thelinuxguy/openlp/editable-remote-port into lp:openlp. Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~thelinuxguy/openlp/editable-remote-port/+merge/353586 Somehow the port was changed to be static, this reintroduces customizable ports -- Your team OpenLP Core is requested to review the proposed merge of lp:~thelinuxguy/openlp/editable-remote-port into lp:openlp. === modified file 'openlp/core/api/tab.py' --- openlp/core/api/tab.py 2018-08-04 20:58:13 + +++ openlp/core/api/tab.py 2018-08-22 16:43:25 + @@ -71,7 +71,9 @@ self.http_setting_layout.setObjectName('http_setting_layout') self.port_label = QtWidgets.QLabel(self.http_settings_group_box) self.port_label.setObjectName('port_label') -self.port_spin_box = QtWidgets.QLabel(self.http_settings_group_box) +self.port_spin_box = QtWidgets.QSpinBox(self.http_settings_group_box) +self.port_spin_box.setMinimum(1024) +self.port_spin_box.setMaximum(65535) self.port_spin_box.setObjectName('port_spin_box') self.http_setting_layout.addRow(self.port_label, self.port_spin_box) self.remote_url_label = QtWidgets.QLabel(self.http_settings_group_box) @@ -213,7 +215,7 @@ """ Load the configuration and update the server configuration if necessary """ -self.port_spin_box.setText(str(Settings().value(self.settings_section + '/port'))) +self.port_spin_box.setValue(Settings().value(self.settings_section + '/port')) self.address_edit.setText(Settings().value(self.settings_section + '/ip address')) self.twelve_hour = Settings().value(self.settings_section + '/twelve hour') self.twelve_hour_check_box.setChecked(self.twelve_hour) @@ -232,8 +234,10 @@ """ Save the configuration and update the server configuration if necessary """ -if Settings().value(self.settings_section + '/ip address') != self.address_edit.text(): +if Settings().value(self.settings_section + '/ip address') != self.address_edit.text() or \ + Settings().value(self.settings_section + '/port') != self.port_spin_box.value(): self.settings_form.register_post_process('remotes_config_updated') +Settings().setValue(self.settings_section + '/port', self.port_spin_box.value()) Settings().setValue(self.settings_section + '/ip address', self.address_edit.text()) Settings().setValue(self.settings_section + '/twelve hour', self.twelve_hour) Settings().setValue(self.settings_section + '/thumbnails', self.thumbnails) === modified file 'tests/functional/openlp_core/api/test_tab.py' --- tests/functional/openlp_core/api/test_tab.py 2018-08-04 20:58:13 + +++ tests/functional/openlp_core/api/test_tab.py 2018-08-22 16:43:25 + @@ -119,3 +119,27 @@ assert self.form.live_url.text() == \ "http://192.168.1.1:4316/main\";>http://192.168.1.1:4316/main", \ 'The return value should be a fully formed main link' + +def test_port_spin_box_is_available(self): +""" +Test that the port can be set using a SpinBox +""" +# GIVEN: The Remote Settings tab +# THEN: The port input is a spin box +assert isinstance(self.form.port_spin_box, QtWidgets.QSpinBox) + +def test_port_spin_box_maximum_value(self): +""" +Test that the maximum allowed value is 65535 +""" +# GIVEN: The Remote Settings tab +# THEN: The maximum allowed value is 65535 +assert self.form.port_spin_box.maximum() == 65535 + +def test_port_spin_box_minimum_value(self): +""" +Test that the minimum allowed value is 1024 +""" +# GIVEN: The Remote Settings tab +# THEN: The minimum allowed value is 1024 +assert self.form.port_spin_box.minimum() == 1024 ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~thelinuxguy/openlp/editable-remote-port into lp:openlp
Review: Disapprove This introduces issues with firewalls and the remotes and causes problems with the android and ios clients. It was removed as this is a complication and an issue for support. -- https://code.launchpad.net/~thelinuxguy/openlp/editable-remote-port/+merge/353586 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] comment
= test session starts == platform linux -- Python 3.6.5, pytest-3.6.2, py-1.5.3, pluggy-0.6.0 rootdir: /var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2830, inifile: plugins: mock-1.7.1, cov-2.5.1 collected 1211 items / 14 errors ERRORS ERROR collecting tests/functional/openlp_plugins/bibles/test_wordprojectimport.py tests/functional/openlp_plugins/bibles/test_wordprojectimport.py:33: in INDEX_PAGE = (TEST_PATH / 'wordproject_index.htm').read_bytes().decode() /usr/lib/python3.6/pathlib.py:1187: in read_bytes with self.open(mode='rb') as f: /usr/lib/python3.6/pathlib.py:1181: in open opener=self._opener) /usr/lib/python3.6/pathlib.py:1035: in _opener return self._accessor.open(self, flags, mode) /usr/lib/python3.6/pathlib.py:387: in wrapped return strfunc(str(pathobj), *args) E FileNotFoundError: [Errno 2] No such file or directory: '/var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2830/tests/resources/bibles/wordproject_index.htm' ___ ERROR collecting tests/functional/openlp_plugins/media/test_mediaitem.py ___ tests/functional/openlp_plugins/media/test_mediaitem.py:32: in from openlp.plugins.media.lib.mediaitem import MediaMediaItem openlp/plugins/media/lib/__init__.py:23: in from .mediaitem import MediaMediaItem openlp/plugins/media/lib/mediaitem.py:49: in CLAPPERBOARD = UiIcons().clapperboard openlp/core/ui/icons.py:48: in __new__ cls.load(cls) openlp/core/ui/icons.py:57: in load qta.load_font('op', font_path, charmap_path) /usr/lib/python3/dist-packages/qtawesome/__init__.py:153: in load_font return _instance().load_font(prefix, ttf_filename, charmap_filename, directory) /usr/lib/python3/dist-packages/qtawesome/iconic_font.py:223: in load_font os.path.join(directory, ttf_filename))) E qtawesome.iconic_font.FontError: Font at '/var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2830/openlp/core/ui/fonts/OpenLP.ttf' appears to be empty. If you are on Windows 10, please read https://support.microsoft.com/en-us/kb/3053676 to know how to prevent Windows from blocking the fonts that come with QtAwesome. __ ERROR collecting tests/functional/openlp_plugins/media/test_mediaplugin.py __ tests/functional/openlp_plugins/media/test_mediaplugin.py:29: in from openlp.plugins.media.mediaplugin import MediaPlugin, process_check_binary openlp/plugins/media/mediaplugin.py:38: in from openlp.plugins.media.lib import MediaMediaItem, MediaTab openlp/plugins/media/lib/__init__.py:23: in from .mediaitem import MediaMediaItem openlp/plugins/media/lib/mediaitem.py:49: in CLAPPERBOARD = UiIcons().clapperboard E AttributeError: 'UiIcons' object has no attribute 'clapperboard' __ ERROR collecting tests/openlp_core/projectors/test_projector_db.py __ ImportError while importing test module '/var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2830/tests/openlp_core/projectors/test_projector_db.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) tests/openlp_core/projectors/test_projector_db.py:41: in from tests.resources.projector.data import TEST_DB_PJLINK1, TEST_DB, TEST1_DATA, TEST2_DATA, TEST3_DATA /usr/lib/python3/dist-packages/uno.py:428: in _uno_import raise uno_import_exc /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) E ImportError: No module named 'tests.resources' (or 'tests.resources.projector.data.TEST_DB_PJLINK1' is unknown) ___ ERROR collecting tests/openlp_core/projectors/test_projector_editform.py ___ ImportError while importing test module '/var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2830/tests/openlp_core/projectors/test_projector_editform.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) tests/openlp_core/projectors/test_projector_editform.py:34: in from tests.resources.projector.data import TEST_DB, TEST1_DATA /usr/lib/python3/dist-packages/uno.py:428: in _uno_import raise uno_import_exc /usr/lib/python3/dist-packages/uno.py:350: in _uno_import return _builtin_import(name, *optargs, **kwargs) E ImportError: No module named 'tests.resources' (or 'tests.resources.projector.data.TEST_DB' is unknown) ERROR collecting tests/openlp_core/projectors/test_projector_pjlink_base_01.py ImportError while importing test module '/var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2830/tests/openlp_core/projectors/test_projector_pjlink_base_01.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: /usr/lib/python3/
[Openlp-core] comment
-- https://code.launchpad.net/~thelinuxguy/openlp/editable-remote-port/+merge/353586 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] comment
-- https://code.launchpad.net/~thelinuxguy/openlp/editable-remote-port/+merge/353586 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] comment
= test session starts == platform darwin -- Python 3.5.6, pytest-3.3.0, py-1.5.2, pluggy-0.6.0 rootdir: /Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2830, inifile: collected 250 items / 119 errors ERRORS __ ERROR collecting tests/functional/openlp_core/test_app.py ___ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2830/tests/functional/openlp_core/test_app.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/test_app.py:28: in from openlp.core.app import OpenLP, parse_options openlp/core/app.py:46: in from openlp.core.ui import SplashScreen openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:43: in from openlp.core.lib import PluginStatus, build_icon openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' ___ ERROR collecting tests/functional/openlp_core/api/test_deploy.py ___ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2830/tests/functional/openlp_core/api/test_deploy.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/api/test_deploy.py:26: in from openlp.core.api.deploy import deploy_zipfile, download_sha256, download_and_check openlp/core/api/__init__.py:26: in from openlp.core.api.tab import ApiTab openlp/core/api/tab.py:31: in from openlp.core.lib import SettingsTab openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:44: in from openlp.core.lib.ui import critical_error_message_box openlp/core/lib/ui.py:34: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' ERROR collecting tests/functional/openlp_core/api/test_tab.py _ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2830/tests/functional/openlp_core/api/test_tab.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/api/test_tab.py:31: in from openlp.core.api.tab import ApiTab openlp/core/api/__init__.py:26: in from openlp.core.api.tab import ApiTab openlp/core/api/tab.py:31: in from openlp.core.lib import SettingsTab openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:44: in from openlp.core.lib.ui import critical_error_message_box openlp/core/lib/ui.py:34: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' _ ERROR collecting tests/functional/openlp_core/api/test_websockets.py _ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2830/tests/functional/openlp_core/api/test_websockets.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/api/test_websockets.py:29: in from openlp.core.api.websockets import WebSocketServer openlp/core/api/__init__.py:26: in from openlp.core.api.tab import ApiTab openlp/core/api/tab.py:31: in from openlp.core.lib import SettingsTab openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:44: in from openlp.core.lib.ui import critical_error_message_box openlp/core/lib/ui.py:34: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' ERROR collecting tests/functional/openlp_core/api/endpoint/test_controller.py _ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2830/tests/functional/openlp_c
Re: [Openlp-core] [Merge] lp:~thelinuxguy/openlp/editable-remote-port into lp:openlp
Simon and I were discussing this in IRC after a chap who was having issues with his set up. I think we *should* make both the IP and the port editable, BUT ... we should hide them by default under a collapsable "Advanced settings" section. We're going to have folks who want to do some weird set up and hook all sorts of things together, and I don't want to prevent that, but I do want to make life easier for the Joe Soaps who can't tell an IP address from a VB GUI ;-) -- https://code.launchpad.net/~thelinuxguy/openlp/editable-remote-port/+merge/353586 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~thelinuxguy/openlp/editable-remote-port into lp:openlp
Review: Approve -- https://code.launchpad.net/~thelinuxguy/openlp/editable-remote-port/+merge/353586 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~alisonken1/openlp/pjlink2-t into lp:openlp
Ken Roberts has proposed merging lp:~alisonken1/openlp/pjlink2-t into lp:openlp. Commit message: PJLink Update T Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~alisonken1/openlp/pjlink2-t/+merge/353593 - Move tests/functional/openlp_core/common/test_networkinterfaces.py to tests/openlp_core/common - Minor cleanups in openlp.core.common.__init__.get_local_ip4() - Add more get_local_ip4 tests - Add missing __init__.py files in projector test directories lp:~alisonken1/openlp/pjlink2-t (revision 2829) https://ci.openlp.io/job/Branch-01-Pull/2568/ [SUCCESS] https://ci.openlp.io/job/Branch-02a-Linux-Tests/2466/ [SUCCESS] https://ci.openlp.io/job/Branch-02b-macOS-Tests/247/ [FAILURE] https://ci.openlp.io/job/Branch-03a-Build-Source/154/ [SUCCESS] https://ci.openlp.io/job/Branch-03b-Build-macOS/139/ [SUCCESS] https://ci.openlp.io/job/Branch-04a-Code-Analysis/1616/[SUCCESS] https://ci.openlp.io/job/Branch-04b-Test-Coverage/1429/[SUCCESS] https://ci.openlp.io/job/Branch-05-AppVeyor-Tests/333/ [FAILURE] -- Your team OpenLP Core is requested to review the proposed merge of lp:~alisonken1/openlp/pjlink2-t into lp:openlp. === modified file 'openlp/core/common/__init__.py' --- openlp/core/common/__init__.py 2018-08-03 22:32:32 + +++ openlp/core/common/__init__.py 2018-08-22 18:09:46 + @@ -60,7 +60,6 @@ :returns: Dict of interfaces """ -# Get the local IPv4 active address(es) that are NOT localhost (lo or '127.0.0.1') log.debug('Getting local IPv4 interface(es) information') my_ip4 = {} for iface in QNetworkInterface.allInterfaces(): @@ -70,8 +69,6 @@ log.debug('Checking address(es) protocol') for address in iface.addressEntries(): ip = address.ip() -# NOTE: Next line will skip if interface is localhost - keep for now until we decide about it later -# if (ip.protocol() == QAbstractSocket.IPv4Protocol) and (ip != QHostAddress.LocalHost): log.debug('Checking for protocol == IPv4Protocol') if ip.protocol() == QAbstractSocket.IPv4Protocol: log.debug('Getting interface information') @@ -83,12 +80,13 @@ ip.toIPv4Address()).toString() } log.debug('Adding {iface} to active list'.format(iface=iface.name())) +if len(my_ip4) == 0: +log.warning('No active IPv4 network interfaces detected') +return my_ip4 if 'localhost' in my_ip4: log.debug('Renaming windows localhost to lo') my_ip4['lo'] = my_ip4['localhost'] my_ip4.pop('localhost') -if len(my_ip4) == 0: -log.warning('No active IPv4 network interfaces detected') if len(my_ip4) == 1: if 'lo' in my_ip4: # No active interfaces - so leave localhost in there === added directory 'tests/openlp_core/common' === added file 'tests/openlp_core/common/__init__.py' --- tests/openlp_core/common/__init__.py 1970-01-01 00:00:00 + +++ tests/openlp_core/common/__init__.py 2018-08-22 18:09:46 + @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=120 tabstop=4 softtabstop=4 + +### +# OpenLP - Open Source Lyrics Projection # +# --- # +# Copyright (c) 2008-2018 OpenLP Developers # +# --- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for# +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +### +""" +:mod tests/openl
[Openlp-core] comment
= test session starts == platform linux -- Python 3.6.5, pytest-3.6.2, py-1.5.3, pluggy-0.6.0 rootdir: /var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2829, inifile: plugins: mock-1.7.1, cov-2.5.1 collected 1341 items / 3 errors ERRORS ERROR collecting tests/functional/openlp_plugins/bibles/test_wordprojectimport.py tests/functional/openlp_plugins/bibles/test_wordprojectimport.py:33: in INDEX_PAGE = (TEST_PATH / 'wordproject_index.htm').read_bytes().decode() /usr/lib/python3.6/pathlib.py:1187: in read_bytes with self.open(mode='rb') as f: /usr/lib/python3.6/pathlib.py:1181: in open opener=self._opener) /usr/lib/python3.6/pathlib.py:1035: in _opener return self._accessor.open(self, flags, mode) /usr/lib/python3.6/pathlib.py:387: in wrapped return strfunc(str(pathobj), *args) E FileNotFoundError: [Errno 2] No such file or directory: '/var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2829/tests/resources/bibles/wordproject_index.htm' ___ ERROR collecting tests/functional/openlp_plugins/media/test_mediaitem.py ___ tests/functional/openlp_plugins/media/test_mediaitem.py:32: in from openlp.plugins.media.lib.mediaitem import MediaMediaItem openlp/plugins/media/lib/__init__.py:23: in from .mediaitem import MediaMediaItem openlp/plugins/media/lib/mediaitem.py:49: in CLAPPERBOARD = UiIcons().clapperboard openlp/core/ui/icons.py:48: in __new__ cls.load(cls) openlp/core/ui/icons.py:57: in load qta.load_font('op', font_path, charmap_path) /usr/lib/python3/dist-packages/qtawesome/__init__.py:153: in load_font return _instance().load_font(prefix, ttf_filename, charmap_filename, directory) /usr/lib/python3/dist-packages/qtawesome/iconic_font.py:223: in load_font os.path.join(directory, ttf_filename))) E qtawesome.iconic_font.FontError: Font at '/var/lib/jenkins/jobs/MP-02-Linux_Tests/workspace/OpenLP-2.5-bzr2829/openlp/core/ui/fonts/OpenLP.ttf' appears to be empty. If you are on Windows 10, please read https://support.microsoft.com/en-us/kb/3053676 to know how to prevent Windows from blocking the fonts that come with QtAwesome. __ ERROR collecting tests/functional/openlp_plugins/media/test_mediaplugin.py __ tests/functional/openlp_plugins/media/test_mediaplugin.py:29: in from openlp.plugins.media.mediaplugin import MediaPlugin, process_check_binary openlp/plugins/media/mediaplugin.py:38: in from openlp.plugins.media.lib import MediaMediaItem, MediaTab openlp/plugins/media/lib/__init__.py:23: in from .mediaitem import MediaMediaItem openlp/plugins/media/lib/mediaitem.py:49: in CLAPPERBOARD = UiIcons().clapperboard E AttributeError: 'UiIcons' object has no attribute 'clapperboard' !!! Interrupted: 3 errors during collection === 3 error in 8.16 seconds -- https://code.launchpad.net/~alisonken1/openlp/pjlink2-t/+merge/353593 Your team OpenLP Core is requested to review the proposed merge of lp:~alisonken1/openlp/pjlink2-t into lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] comment
= test session starts == platform darwin -- Python 3.5.6, pytest-3.3.0, py-1.5.2, pluggy-0.6.0 rootdir: /Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2829, inifile: collected 270 items / 117 errors ERRORS __ ERROR collecting tests/functional/openlp_core/test_app.py ___ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2829/tests/functional/openlp_core/test_app.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/test_app.py:28: in from openlp.core.app import OpenLP, parse_options openlp/core/app.py:46: in from openlp.core.ui import SplashScreen openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:43: in from openlp.core.lib import PluginStatus, build_icon openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' ___ ERROR collecting tests/functional/openlp_core/api/test_deploy.py ___ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2829/tests/functional/openlp_core/api/test_deploy.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/api/test_deploy.py:26: in from openlp.core.api.deploy import deploy_zipfile, download_sha256, download_and_check openlp/core/api/__init__.py:26: in from openlp.core.api.tab import ApiTab openlp/core/api/tab.py:31: in from openlp.core.lib import SettingsTab openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:44: in from openlp.core.lib.ui import critical_error_message_box openlp/core/lib/ui.py:34: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' ERROR collecting tests/functional/openlp_core/api/test_tab.py _ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2829/tests/functional/openlp_core/api/test_tab.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/api/test_tab.py:31: in from openlp.core.api.tab import ApiTab openlp/core/api/__init__.py:26: in from openlp.core.api.tab import ApiTab openlp/core/api/tab.py:31: in from openlp.core.lib import SettingsTab openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:44: in from openlp.core.lib.ui import critical_error_message_box openlp/core/lib/ui.py:34: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' _ ERROR collecting tests/functional/openlp_core/api/test_websockets.py _ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2829/tests/functional/openlp_core/api/test_websockets.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests/functional/openlp_core/api/test_websockets.py:29: in from openlp.core.api.websockets import WebSocketServer openlp/core/api/__init__.py:26: in from openlp.core.api.tab import ApiTab openlp/core/api/tab.py:31: in from openlp.core.lib import SettingsTab openlp/core/lib/__init__.py:619: in from .serviceitem import ServiceItem, ServiceItemType, ItemCapabilities openlp/core/lib/serviceitem.py:38: in from openlp.core.ui.icons import UiIcons openlp/core/ui/__init__.py:96: in from .firsttimeform import FirstTimeForm openlp/core/ui/firsttimeform.py:44: in from openlp.core.lib.ui import critical_error_message_box openlp/core/lib/ui.py:34: in from openlp.core.ui.icons import UiIcons openlp/core/ui/icons.py:26: in import qtawesome as qta E ImportError: No module named 'qtawesome' ERROR collecting tests/functional/openlp_core/api/endpoint/test_controller.py _ ImportError while importing test module '/Users/raoul/Jenkins/workspace/MP-03-macOS-Tests/OpenLP-2.5-bzr2829/tests/functional/openlp_c
[Openlp-core] [Merge] lp:~raoul-snyman/openlp/pep440 into lp:openlp
The proposal to merge lp:~raoul-snyman/openlp/pep440 into lp:openlp has been updated. Status: Needs review => Superseded For more details, see: https://code.launchpad.net/~raoul-snyman/openlp/pep440/+merge/353579 -- Your team OpenLP Core is requested to review the proposed merge of lp:~raoul-snyman/openlp/pep440 into lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~raoul-snyman/openlp/pep440 into lp:openlp
Raoul Snyman has proposed merging lp:~raoul-snyman/openlp/pep440 into lp:openlp. Commit message: Make our version number PEP 440 compliant and add a script for Jenkins to report back to a merge proposal. Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~raoul-snyman/openlp/pep440/+merge/353607 -- Your team OpenLP Core is requested to review the proposed merge of lp:~raoul-snyman/openlp/pep440 into lp:openlp. === added file 'scripts/mp_update.py' --- scripts/mp_update.py 1970-01-01 00:00:00 + +++ scripts/mp_update.py 2018-08-22 23:08:29 + @@ -0,0 +1,61 @@ +#!/usr/bin/env python2 +import sys +import os +from argparse import ArgumentParser +from launchpadlib.credentials import UnencryptedFileCredentialStore +from launchpadlib.launchpad import Launchpad + +HERE = os.path.dirname(os.path.abspath(__file__)) + + +def parse_args(): +""" +Parse the command line arguments +""" +parser = ArgumentParser() +parser.add_argument('-p', '--merge-proposal', required=True, +help='The main part of the URL to the merge proposal, without the hostname.') +parser.add_argument('-m', '--message', required=True, +help='The comment to add to the merge proposal') +parser.add_argument('-s', '--subject', default=None, help='The subject for the comment') +return parser.parse_args() + + +def get_merge_proposal(merge_proposal_url): +""" +Get the merge proposal for the ``merge_proposal_url`` +""" +lp = Launchpad.login_with('OpenLP CI', 'production', version='devel', + credential_store=UnencryptedFileCredentialStore(os.path.join(HERE, 'launchpadcreds.txt'))) +openlp_project = lp.projects['openlp'] +merge_proposals = openlp_project.getMergeProposals() +for merge_proposal in merge_proposals: +if str(merge_proposal).endswith(merge_proposal_url): +return merge_proposal +return None + + +def create_comment(merge_proposal, comment, subject): +""" +Create a comment on the merge proposal +""" +if not subject: +subject = 'Jenkins test update' +merge_proposal.createComment(subject, content=comment) + + +def main(): +""" +Run the thing +""" +args = parse_args() +merge_proposal = get_merge_proposal(args.merge_proposal) +if not merge_proposal: +print('No merge proposal with that URL found') +sys.exit(1) +else: +create_comment(merge_proposal, args.message, args.subject) + + +if __name__ == '__main__': +main() === modified file 'setup.py' --- setup.py 2017-12-29 09:15:48 + +++ setup.py 2018-08-22 23:08:29 + @@ -99,10 +99,11 @@ if tree_revision == tag_revision: version_string = tag_version.decode('utf-8') else: -version_string = '%s-bzr%s' % (tag_version.decode('utf-8'), tree_revision.decode('utf-8')) +version_string = '{version}.dev{revision}'.format(version=tag_version.decode('utf-8'), + revision=tree_revision.decode('utf-8')) ver_file = open(VERSION_FILE, 'w') ver_file.write(version_string) -except: +except Exception: ver_file = open(VERSION_FILE, 'r') version_string = ver_file.read().strip() finally: ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] Linux Test Results
Tests failed, please see https://ci.openlp.io/job/MP-02-Linux_Tests/23/ for more details -- https://code.launchpad.net/~raoul-snyman/openlp/pep440/+merge/353607 Your team OpenLP Core is requested to review the proposed merge of lp:~raoul-snyman/openlp/pep440 into lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp