[Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-24 Thread noreply
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Status: Needs review => Merged

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356881
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-24 Thread Tim Bentley
Review: Approve


-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356881
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-23 Thread Tomas Groth
Review: Approve


-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356881
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-21 Thread Bastian Germann
@trb143 I just checked your media_state branch for the mentioned pymediainfo 
change. You did not include 
https://bazaar.launchpad.net/~bastian-germann/openlp/setup/revision/2860. It 
took me some debugging (no error thrown) to find this.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356881
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Status: Needs review => Superseded

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356868
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
Bastian Germann has proposed merging lp:~bastian-germann/openlp/setup into 
lp:openlp.

Commit message:
This fixes setuptools' dependencies according to scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.
Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

To overcome a module conflict, openlp.py is replaced with run_openlp.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).

Additionally, pyxdg is replaced with appdirs (see License violations issue).

Requested reviews:
  Tim Bentley (trb143)
Related bugs:
  Bug #1795876 in OpenLP: "License violations"
  https://bugs.launchpad.net/openlp/+bug/1795876

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356881
-- 
Your team OpenLP Core is subscribed to branch lp:openlp.
=== modified file 'openlp/core/app.py'
--- openlp/core/app.py	2018-08-25 14:36:46 +
+++ openlp/core/app.py	2018-10-16 21:00:41 +
@@ -288,7 +288,7 @@
 :return: a tuple of parsed options of type optparse.Value and a list of remaining argsZ
 """
 # Set up command line options.
-parser = argparse.ArgumentParser(prog='openlp.py')
+parser = argparse.ArgumentParser(prog='openlp')
 parser.add_argument('-e', '--no-error-form', dest='no_error_form', action='store_true',
 help='Disable the error notification form.')
 parser.add_argument('-l', '--log-level', dest='loglevel', default='warning', metavar='LEVEL',

=== modified file 'openlp/core/common/applocation.py'
--- openlp/core/common/applocation.py	2018-01-07 04:45:13 +
+++ openlp/core/common/applocation.py	2018-10-16 21:00:41 +
@@ -26,18 +26,13 @@
 import os
 import sys
 
+import appdirs
+
 import openlp
 from openlp.core.common import get_frozen_path, is_win, is_macosx
 from openlp.core.common.path import Path, create_paths
 from openlp.core.common.settings import Settings
 
-if not is_win() and not is_macosx():
-try:
-from xdg import BaseDirectory
-XDG_BASE_AVAILABLE = True
-except ImportError:
-XDG_BASE_AVAILABLE = False
-
 log = logging.getLogger(__name__)
 
 FROZEN_APP_PATH = Path(sys.argv[0]).parent
@@ -143,8 +138,10 @@
 elif dir_type == AppLocation.LanguageDir:
 return Path(openlp.__file__).parent
 return openlp_folder_path
-elif is_macosx():
-openlp_folder_path = Path(os.getenv('HOME'), 'Library', 'Application Support', 'openlp')
+
+dirs = appdirs.AppDirs('openlp', multipath=True)
+if is_macosx():
+openlp_folder_path = Path(dirs.user_data_dir)
 if dir_type == AppLocation.DataDir:
 return openlp_folder_path / 'Data'
 elif dir_type == AppLocation.LanguageDir:
@@ -152,15 +149,15 @@
 return openlp_folder_path
 else:
 if dir_type == AppLocation.LanguageDir:
-directory = Path('/usr', 'local', 'share', 'openlp')
+site_dirs = dirs.site_data_dir.split(os.pathsep)
+directory = Path(site_dirs[0])
 if directory.exists():
 return directory
-return Path('/usr', 'share', 'openlp')
-if XDG_BASE_AVAILABLE:
-if dir_type == AppLocation.DataDir:
-return Path(BaseDirectory.xdg_data_home, 'openlp')
-elif dir_type == AppLocation.CacheDir:
-return Path(BaseDirectory.xdg_cache_home, 'openlp')
+return Path(site_dirs[1])
+if dir_type == AppLocation.DataDir:
+return Path(dirs.user_data_dir)
+elif dir_type == AppLocation.CacheDir:
+return Path(dirs.user_cache_dir)
 if dir_type == AppLocation.DataDir:
 return Path(os.getenv('HOME'), '.openlp', 'data')
 return Path(os.getenv('HOME'), '.openlp')

=== modified file 'openlp/core/common/registry.py'
--- openlp/core/common/registry.py	2018-06-24 06:56:50 +
+++ openlp/core/common/registry.py	2018-10-16 21:00:41 +
@@ -57,8 +57,7 @@
 registry.functions_list = {}
 registry.working_flags = {}
 # Allow the tests to remove Registry entries but not the live system
-registry.running_under_test = 'nose' in sys.argv[0]
-registry.running_under_test = 'pytest' in sys.argv[0]
+registry.running_under_test = 'nose' in sys.argv[0] or 'pytest' in sys.argv[0]
 registry.initialising = True
 return registry
 

=== modified file 'openlp/core/ui/aboutdialog.py'
--- openlp/core/ui/aboutdialog.py	2018-06-24 06:56:50 +
+++ openlp/core/ui/aboutdialog.py	2018-10-16 21:00:41 +
@@ -112,8 +112,8 @@
   'Andreas "googol" Preikschat', 'Ken "alisonken1" Roberts', 'Raoul "superfly" Snyman',
   'Jonathan "springermac" Springer', 'Philip "Phill" Ridout']
 contributors = ['Stuart "sibecker" Becker', 'Gerald "jerryb" Britton', 'Jonathan "gushie" 

Re: [Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
> Please removed all pymediainfo changes as the media code is been extensively
> refactored and this will cause issues when that is merged.  Your changes have
> been taken on board but implemented differently.

Did you get the latest utf8 decoding change in 2860? I will remove the changes 
in the next merge proposal.

> Why has run_openlp been restructured instead of just being renamed?

Because setuptools' entry_points needs a function.

> The license file for fonts will be removed at some point as that icon file
> will need to be cleaned up before the release.  We are awaiting a dev to come
> and help with the font UX work.  The fontawsome icons cannot be packaged by
> use.  The only icons are the 10 we have created from scratch.

That is fine. I just added it because the license says it is void if it the 
license file is not distributed with the font.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356868
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Tim Bentley
Review: Needs Fixing

Please removed all pymediainfo changes as the media code is been extensively 
refactored and this will cause issues when that is merged.  Your changes have 
been taken on board but implemented differently.

Why has run_openlp been restructured instead of just being renamed?

The license file for fonts will be removed at some point as that icon file will 
need to be cleaned up before the release.  We are awaiting a dev to come and 
help with the font UX work.  The fontawsome icons cannot be packaged by use.  
The only icons are the 10 we have created from scratch.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356868
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
Bastian Germann has proposed merging lp:~bastian-germann/openlp/setup into 
lp:openlp.

Commit message:
This fixes setuptools' dependencies according to scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.
Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

To overcome a module conflict, openlp.py is replaced with run_openlp.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).

The vendored (ripped) pymediainfo module is replaced with its upstream version.
As this builds on the shared library in current versions, the wrapper now calls 
the executable if that cannot be loaded.

Additionally, pyxdg is replaced with appdirs (see License violations issue).

Requested reviews:
  OpenLP Core (openlp-core)
Related bugs:
  Bug #1795876 in OpenLP: "License violations"
  https://bugs.launchpad.net/openlp/+bug/1795876

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356868
-- 
Your team OpenLP Core is requested to review the proposed merge of 
lp:~bastian-germann/openlp/setup into lp:openlp.
=== modified file 'openlp/core/app.py'
--- openlp/core/app.py	2018-08-25 14:36:46 +
+++ openlp/core/app.py	2018-10-16 20:24:43 +
@@ -288,7 +288,7 @@
 :return: a tuple of parsed options of type optparse.Value and a list of remaining argsZ
 """
 # Set up command line options.
-parser = argparse.ArgumentParser(prog='openlp.py')
+parser = argparse.ArgumentParser(prog='openlp')
 parser.add_argument('-e', '--no-error-form', dest='no_error_form', action='store_true',
 help='Disable the error notification form.')
 parser.add_argument('-l', '--log-level', dest='loglevel', default='warning', metavar='LEVEL',

=== modified file 'openlp/core/common/applocation.py'
--- openlp/core/common/applocation.py	2018-01-07 04:45:13 +
+++ openlp/core/common/applocation.py	2018-10-16 20:24:43 +
@@ -26,18 +26,13 @@
 import os
 import sys
 
+import appdirs
+
 import openlp
 from openlp.core.common import get_frozen_path, is_win, is_macosx
 from openlp.core.common.path import Path, create_paths
 from openlp.core.common.settings import Settings
 
-if not is_win() and not is_macosx():
-try:
-from xdg import BaseDirectory
-XDG_BASE_AVAILABLE = True
-except ImportError:
-XDG_BASE_AVAILABLE = False
-
 log = logging.getLogger(__name__)
 
 FROZEN_APP_PATH = Path(sys.argv[0]).parent
@@ -143,8 +138,10 @@
 elif dir_type == AppLocation.LanguageDir:
 return Path(openlp.__file__).parent
 return openlp_folder_path
-elif is_macosx():
-openlp_folder_path = Path(os.getenv('HOME'), 'Library', 'Application Support', 'openlp')
+
+dirs = appdirs.AppDirs('openlp', multipath=True)
+if is_macosx():
+openlp_folder_path = Path(dirs.user_data_dir)
 if dir_type == AppLocation.DataDir:
 return openlp_folder_path / 'Data'
 elif dir_type == AppLocation.LanguageDir:
@@ -152,15 +149,15 @@
 return openlp_folder_path
 else:
 if dir_type == AppLocation.LanguageDir:
-directory = Path('/usr', 'local', 'share', 'openlp')
+site_dirs = dirs.site_data_dir.split(os.pathsep)
+directory = Path(site_dirs[0])
 if directory.exists():
 return directory
-return Path('/usr', 'share', 'openlp')
-if XDG_BASE_AVAILABLE:
-if dir_type == AppLocation.DataDir:
-return Path(BaseDirectory.xdg_data_home, 'openlp')
-elif dir_type == AppLocation.CacheDir:
-return Path(BaseDirectory.xdg_cache_home, 'openlp')
+return Path(site_dirs[1])
+if dir_type == AppLocation.DataDir:
+return Path(dirs.user_data_dir)
+elif dir_type == AppLocation.CacheDir:
+return Path(dirs.user_cache_dir)
 if dir_type == AppLocation.DataDir:
 return Path(os.getenv('HOME'), '.openlp', 'data')
 return Path(os.getenv('HOME'), '.openlp')

=== modified file 'openlp/core/common/registry.py'
--- openlp/core/common/registry.py	2018-06-24 06:56:50 +
+++ openlp/core/common/registry.py	2018-10-16 20:24:43 +
@@ -57,8 +57,7 @@
 registry.functions_list = {}
 registry.working_flags = {}
 # Allow the tests to remove Registry entries but not the live system
-registry.running_under_test = 'nose' in sys.argv[0]
-registry.running_under_test = 'pytest' in sys.argv[0]
+registry.running_under_test = 'nose' in sys.argv[0] or 'pytest' in sys.argv[0]
 registry.initialising = True
 return registry
 

=== modified file 'openlp/core/ui/aboutdialog.py'
--- openlp/core/ui/aboutdialog.py	2018-06-24 06:56:50 +
+++ openlp/core/ui/aboutdialog.py	2018-10-16 20:24:43 +
@@ -112,8 +112,8 @@
   

[Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
Bastian Germann has proposed merging lp:~bastian-germann/openlp/setup into 
lp:openlp.

Commit message:
This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

To overcome the module conflict, openlp.py is replaced with __main__.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).
You can call it locally via `python -m openlp`.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

Requested reviews:
  Tomas Groth (tomasgroth)
  Raoul Snyman (raoul-snyman)
Related bugs:
  Bug #1795876 in OpenLP: "License violations"
  https://bugs.launchpad.net/openlp/+bug/1795876

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356864


-- 
Your team OpenLP Core is subscribed to branch lp:openlp.
=== renamed file 'openlp.py' => 'openlp/__main__.py'
--- openlp.py	2017-12-29 09:15:48 +
+++ openlp/__main__.py	2018-10-16 19:33:23 +
@@ -42,7 +42,7 @@
 faulthandler.enable((AppLocation.get_directory(AppLocation.CacheDir) / 'error.log').open('wb'))
 
 
-if __name__ == '__main__':
+def start():
 """
 Instantiate and run the application.
 """
@@ -58,3 +58,7 @@
 if is_macosx():
 sys.argv = [x for x in sys.argv if not x.startswith('-psn')]
 main()
+
+
+if __name__ == '__main__':
+start()

=== modified file 'openlp/core/app.py'
--- openlp/core/app.py	2018-08-25 14:36:46 +
+++ openlp/core/app.py	2018-10-16 19:33:23 +
@@ -288,7 +288,7 @@
 :return: a tuple of parsed options of type optparse.Value and a list of remaining argsZ
 """
 # Set up command line options.
-parser = argparse.ArgumentParser(prog='openlp.py')
+parser = argparse.ArgumentParser(prog='openlp')
 parser.add_argument('-e', '--no-error-form', dest='no_error_form', action='store_true',
 help='Disable the error notification form.')
 parser.add_argument('-l', '--log-level', dest='loglevel', default='warning', metavar='LEVEL',

=== modified file 'openlp/core/common/applocation.py'
--- openlp/core/common/applocation.py	2018-01-07 04:45:13 +
+++ openlp/core/common/applocation.py	2018-10-16 19:33:23 +
@@ -26,18 +26,13 @@
 import os
 import sys
 
+import appdirs
+
 import openlp
 from openlp.core.common import get_frozen_path, is_win, is_macosx
 from openlp.core.common.path import Path, create_paths
 from openlp.core.common.settings import Settings
 
-if not is_win() and not is_macosx():
-try:
-from xdg import BaseDirectory
-XDG_BASE_AVAILABLE = True
-except ImportError:
-XDG_BASE_AVAILABLE = False
-
 log = logging.getLogger(__name__)
 
 FROZEN_APP_PATH = Path(sys.argv[0]).parent
@@ -143,8 +138,10 @@
 elif dir_type == AppLocation.LanguageDir:
 return Path(openlp.__file__).parent
 return openlp_folder_path
-elif is_macosx():
-openlp_folder_path = Path(os.getenv('HOME'), 'Library', 'Application Support', 'openlp')
+
+dirs = appdirs.AppDirs('openlp', multipath=True)
+if is_macosx():
+openlp_folder_path = Path(dirs.user_data_dir)
 if dir_type == AppLocation.DataDir:
 return openlp_folder_path / 'Data'
 elif dir_type == AppLocation.LanguageDir:
@@ -152,15 +149,15 @@
 return openlp_folder_path
 else:
 if dir_type == AppLocation.LanguageDir:
-directory = Path('/usr', 'local', 'share', 'openlp')
+site_dirs = dirs.site_data_dir.split(os.pathsep)
+directory = Path(site_dirs[0])
 if directory.exists():
 return directory
-return Path('/usr', 'share', 'openlp')
-if XDG_BASE_AVAILABLE:
-if dir_type == AppLocation.DataDir:
-return Path(BaseDirectory.xdg_data_home, 'openlp')
-elif dir_type == AppLocation.CacheDir:
-return Path(BaseDirectory.xdg_cache_home, 'openlp')
+return Path(site_dirs[1])
+if dir_type == AppLocation.DataDir:
+return Path(dirs.user_data_dir)
+elif dir_type == AppLocation.CacheDir:
+return Path(dirs.user_cache_dir)
 if dir_type == AppLocation.DataDir:
 return Path(os.getenv('HOME'), '.openlp', 'data')
 return Path(os.getenv('HOME'), '.openlp')

=== modified file 'openlp/core/common/registry.py'
--- openlp/core/common/registry.py	2018-06-24 06:56:50 +
+++ openlp/core/common/registry.py	2018-10-16 19:33:23 +
@@ -57,8 +57,7 @@
 registry.functions_list = {}
 registry.working_flags = {}
 # Allow the tests to remove Registry entries but not the live system
-registry.running_under_test = 'nose' in sys.argv[0]
-   

[Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Status: Needs review => Superseded

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356801
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Tomas Groth
Review: Needs Fixing

I highlighted some minor things with diff-comments.
Also you should not add more changes to this merge requests: It is starting to 
become to broad.

Diff comments:

> === renamed file 'openlp.py' => 'openlp/__main__.py'

As mentioned in mailinglist thread linked to above, it was agreed that the 
renamed file should be "run_openlp.py", please do that instead of __main__.py

> 
> === modified file 'tests/README.txt'
> --- tests/README.txt  2012-12-05 18:52:31 +
> +++ tests/README.txt  2018-10-16 19:07:47 +
> @@ -19,16 +19,16 @@
>  
>  To run the tests, navigate to the root directory of the OpenLP project, and 
> then run the following command::
>  
> -nosetests -v tests
> +nose2 -v tests
>  
>  Or, to run only the functional tests, run the following command::
>  
> -nosetests -v tests/functional
> +nose2 -v tests.functional
>  
>  Or, to run only a particular test suite within a file, run the following 
> command::
>  
> -nosetests -v tests/functional/test_applocation.py
> +nose2 -v tests.functional.openlp_core.test_app
>  
>  Finally, to only run a particular test, run the following command::
>  
> -nosetests -v 
> tests/functional/test_applocation.py:TestAppLocation.get_frozen_path_test
> +nose2 -v 
> tests.functional.openlp_core.test_app.TestOpenLP.test_process_events

pytest is actually the preferred test runner now, so if updating the examples 
they should should use pytest.



-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356801
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
Bastian Germann has proposed merging lp:~bastian-germann/openlp/setup into 
lp:openlp.

Commit message:
This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

To overcome the module conflict, openlp.py is replaced with __main__.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).
You can call it locally via `python -m openlp`.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

Requested reviews:
  Raoul Snyman (raoul-snyman)
  Tomas Groth (tomasgroth)
Related bugs:
  Bug #1795876 in OpenLP: "License violations"
  https://bugs.launchpad.net/openlp/+bug/1795876

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356801


-- 
Your team OpenLP Core is subscribed to branch lp:openlp.
=== renamed file 'openlp.py' => 'openlp/__main__.py'
--- openlp.py	2017-12-29 09:15:48 +
+++ openlp/__main__.py	2018-10-16 10:12:25 +
@@ -42,7 +42,7 @@
 faulthandler.enable((AppLocation.get_directory(AppLocation.CacheDir) / 'error.log').open('wb'))
 
 
-if __name__ == '__main__':
+def start():
 """
 Instantiate and run the application.
 """
@@ -58,3 +58,7 @@
 if is_macosx():
 sys.argv = [x for x in sys.argv if not x.startswith('-psn')]
 main()
+
+
+if __name__ == '__main__':
+start()

=== modified file 'openlp/core/app.py'
--- openlp/core/app.py	2018-08-25 14:36:46 +
+++ openlp/core/app.py	2018-10-16 10:12:25 +
@@ -288,7 +288,7 @@
 :return: a tuple of parsed options of type optparse.Value and a list of remaining argsZ
 """
 # Set up command line options.
-parser = argparse.ArgumentParser(prog='openlp.py')
+parser = argparse.ArgumentParser(prog='openlp')
 parser.add_argument('-e', '--no-error-form', dest='no_error_form', action='store_true',
 help='Disable the error notification form.')
 parser.add_argument('-l', '--log-level', dest='loglevel', default='warning', metavar='LEVEL',

=== modified file 'openlp/core/common/applocation.py'
--- openlp/core/common/applocation.py	2018-01-07 04:45:13 +
+++ openlp/core/common/applocation.py	2018-10-16 10:12:25 +
@@ -26,18 +26,13 @@
 import os
 import sys
 
+import appdirs
+
 import openlp
 from openlp.core.common import get_frozen_path, is_win, is_macosx
 from openlp.core.common.path import Path, create_paths
 from openlp.core.common.settings import Settings
 
-if not is_win() and not is_macosx():
-try:
-from xdg import BaseDirectory
-XDG_BASE_AVAILABLE = True
-except ImportError:
-XDG_BASE_AVAILABLE = False
-
 log = logging.getLogger(__name__)
 
 FROZEN_APP_PATH = Path(sys.argv[0]).parent
@@ -143,8 +138,10 @@
 elif dir_type == AppLocation.LanguageDir:
 return Path(openlp.__file__).parent
 return openlp_folder_path
-elif is_macosx():
-openlp_folder_path = Path(os.getenv('HOME'), 'Library', 'Application Support', 'openlp')
+
+dirs = appdirs.AppDirs('openlp', multipath=True)
+if is_macosx():
+openlp_folder_path = Path(dirs.user_data_dir)
 if dir_type == AppLocation.DataDir:
 return openlp_folder_path / 'Data'
 elif dir_type == AppLocation.LanguageDir:
@@ -152,15 +149,15 @@
 return openlp_folder_path
 else:
 if dir_type == AppLocation.LanguageDir:
-directory = Path('/usr', 'local', 'share', 'openlp')
+site_dirs = dirs.site_data_dir.split(os.pathsep)
+directory = Path(site_dirs[0])
 if directory.exists():
 return directory
-return Path('/usr', 'share', 'openlp')
-if XDG_BASE_AVAILABLE:
-if dir_type == AppLocation.DataDir:
-return Path(BaseDirectory.xdg_data_home, 'openlp')
-elif dir_type == AppLocation.CacheDir:
-return Path(BaseDirectory.xdg_cache_home, 'openlp')
+return Path(site_dirs[1])
+if dir_type == AppLocation.DataDir:
+return Path(dirs.user_data_dir)
+elif dir_type == AppLocation.CacheDir:
+return Path(dirs.user_cache_dir)
 if dir_type == AppLocation.DataDir:
 return Path(os.getenv('HOME'), '.openlp', 'data')
 return Path(os.getenv('HOME'), '.openlp')

=== modified file 'openlp/core/common/registry.py'
--- openlp/core/common/registry.py	2018-06-24 06:56:50 +
+++ openlp/core/common/registry.py	2018-10-16 10:12:25 +
@@ -57,8 +57,7 @@
 registry.functions_list = {}
 registry.working_flags = {}
 # Allow the tests to remove Registry entries but not the live system
-registry.running_under_test = 'nose' in sys.argv[0]
-   

[Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-16 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Status: Needs review => Superseded

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356675
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-14 Thread Bastian Germann
That is right. I tested on Linux and Windows.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356675
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-13 Thread Tomas Groth
Review: Needs Information

Which platforms have you tested this on? If I understand correctly the changes 
would effect both Linux, Windows and Mac OS.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356675
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-13 Thread Bastian Germann
Bastian Germann has proposed merging lp:~bastian-germann/openlp/setup into 
lp:openlp.

Commit message:
This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

To overcome the module conflict, openlp.py is replaced with __main__.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).
You can call it locally via `python -m openlp`.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

Requested reviews:
  Raoul Snyman (raoul-snyman)
Related bugs:
  Bug #1795876 in OpenLP: "License violations"
  https://bugs.launchpad.net/openlp/+bug/1795876

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356675


-- 
Your team OpenLP Core is subscribed to branch lp:openlp.
=== renamed file 'openlp.py' => 'openlp/__main__.py'
--- openlp.py	2017-12-29 09:15:48 +
+++ openlp/__main__.py	2018-10-13 08:06:45 +
@@ -42,7 +42,7 @@
 faulthandler.enable((AppLocation.get_directory(AppLocation.CacheDir) / 'error.log').open('wb'))
 
 
-if __name__ == '__main__':
+def start():
 """
 Instantiate and run the application.
 """
@@ -58,3 +58,6 @@
 if is_macosx():
 sys.argv = [x for x in sys.argv if not x.startswith('-psn')]
 main()
+
+if __name__ == '__main__':
+start()

=== modified file 'openlp/core/app.py'
--- openlp/core/app.py	2018-08-25 14:36:46 +
+++ openlp/core/app.py	2018-10-13 08:06:45 +
@@ -288,7 +288,7 @@
 :return: a tuple of parsed options of type optparse.Value and a list of remaining argsZ
 """
 # Set up command line options.
-parser = argparse.ArgumentParser(prog='openlp.py')
+parser = argparse.ArgumentParser(prog='openlp')
 parser.add_argument('-e', '--no-error-form', dest='no_error_form', action='store_true',
 help='Disable the error notification form.')
 parser.add_argument('-l', '--log-level', dest='loglevel', default='warning', metavar='LEVEL',

=== modified file 'openlp/core/common/applocation.py'
--- openlp/core/common/applocation.py	2018-01-07 04:45:13 +
+++ openlp/core/common/applocation.py	2018-10-13 08:06:45 +
@@ -26,18 +26,13 @@
 import os
 import sys
 
+import appdirs
+
 import openlp
 from openlp.core.common import get_frozen_path, is_win, is_macosx
 from openlp.core.common.path import Path, create_paths
 from openlp.core.common.settings import Settings
 
-if not is_win() and not is_macosx():
-try:
-from xdg import BaseDirectory
-XDG_BASE_AVAILABLE = True
-except ImportError:
-XDG_BASE_AVAILABLE = False
-
 log = logging.getLogger(__name__)
 
 FROZEN_APP_PATH = Path(sys.argv[0]).parent
@@ -143,8 +138,10 @@
 elif dir_type == AppLocation.LanguageDir:
 return Path(openlp.__file__).parent
 return openlp_folder_path
-elif is_macosx():
-openlp_folder_path = Path(os.getenv('HOME'), 'Library', 'Application Support', 'openlp')
+
+dirs = appdirs.AppDirs('openlp', multipath=True)
+if is_macosx():
+openlp_folder_path = Path(dirs.user_data_dir)
 if dir_type == AppLocation.DataDir:
 return openlp_folder_path / 'Data'
 elif dir_type == AppLocation.LanguageDir:
@@ -152,15 +149,15 @@
 return openlp_folder_path
 else:
 if dir_type == AppLocation.LanguageDir:
-directory = Path('/usr', 'local', 'share', 'openlp')
+site_dirs = dirs.site_data_dir.split(os.pathsep)
+directory = Path(site_dirs[0])
 if directory.exists():
 return directory
-return Path('/usr', 'share', 'openlp')
-if XDG_BASE_AVAILABLE:
-if dir_type == AppLocation.DataDir:
-return Path(BaseDirectory.xdg_data_home, 'openlp')
-elif dir_type == AppLocation.CacheDir:
-return Path(BaseDirectory.xdg_cache_home, 'openlp')
+return Path(site_dirs[1])
+if dir_type == AppLocation.DataDir:
+return Path(dirs.user_data_dir)
+elif dir_type == AppLocation.CacheDir:
+return Path(dirs.user_cache_dir)
 if dir_type == AppLocation.DataDir:
 return Path(os.getenv('HOME'), '.openlp', 'data')
 return Path(os.getenv('HOME'), '.openlp')

=== modified file 'openlp/core/common/registry.py'
--- openlp/core/common/registry.py	2018-06-24 06:56:50 +
+++ openlp/core/common/registry.py	2018-10-13 08:06:45 +
@@ -57,8 +57,7 @@
 registry.functions_list = {}
 registry.working_flags = {}
 # Allow the tests to remove Registry entries but not the live system
-registry.running_under_test = 'nose' in sys.argv[0]
-registry.running_under_test 

[Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-13 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Status: Needs review => Superseded

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356602
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-11 Thread Bastian Germann
@raoul-snyman Can you add python3-appdirs and python3-pymediainfo to the build 
machine or point me to where I can do it?
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356602
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-11 Thread Bastian Germann
Bastian Germann has proposed merging lp:~bastian-germann/openlp/setup into 
lp:openlp.

Commit message:
This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

To overcome the module conflict, openlp.py is replaced with __main__.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).
You can call it locally via `python -m openlp`.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

Requested reviews:
  Raoul Snyman (raoul-snyman)
Related bugs:
  Bug #1795876 in OpenLP: "License violations"
  https://bugs.launchpad.net/openlp/+bug/1795876

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356602


-- 
Your team OpenLP Core is subscribed to branch lp:openlp.
=== renamed file 'openlp.py' => 'openlp/__main__.py'
--- openlp.py	2017-12-29 09:15:48 +
+++ openlp/__main__.py	2018-10-11 18:29:48 +
@@ -42,7 +42,7 @@
 faulthandler.enable((AppLocation.get_directory(AppLocation.CacheDir) / 'error.log').open('wb'))
 
 
-if __name__ == '__main__':
+def start():
 """
 Instantiate and run the application.
 """
@@ -58,3 +58,6 @@
 if is_macosx():
 sys.argv = [x for x in sys.argv if not x.startswith('-psn')]
 main()
+
+if __name__ == '__main__':
+start()

=== modified file 'openlp/core/app.py'
--- openlp/core/app.py	2018-08-25 14:36:46 +
+++ openlp/core/app.py	2018-10-11 18:29:48 +
@@ -288,7 +288,7 @@
 :return: a tuple of parsed options of type optparse.Value and a list of remaining argsZ
 """
 # Set up command line options.
-parser = argparse.ArgumentParser(prog='openlp.py')
+parser = argparse.ArgumentParser(prog='openlp')
 parser.add_argument('-e', '--no-error-form', dest='no_error_form', action='store_true',
 help='Disable the error notification form.')
 parser.add_argument('-l', '--log-level', dest='loglevel', default='warning', metavar='LEVEL',

=== modified file 'openlp/core/common/applocation.py'
--- openlp/core/common/applocation.py	2018-01-07 04:45:13 +
+++ openlp/core/common/applocation.py	2018-10-11 18:29:48 +
@@ -26,18 +26,13 @@
 import os
 import sys
 
+import appdirs
+
 import openlp
 from openlp.core.common import get_frozen_path, is_win, is_macosx
 from openlp.core.common.path import Path, create_paths
 from openlp.core.common.settings import Settings
 
-if not is_win() and not is_macosx():
-try:
-from xdg import BaseDirectory
-XDG_BASE_AVAILABLE = True
-except ImportError:
-XDG_BASE_AVAILABLE = False
-
 log = logging.getLogger(__name__)
 
 FROZEN_APP_PATH = Path(sys.argv[0]).parent
@@ -143,8 +138,10 @@
 elif dir_type == AppLocation.LanguageDir:
 return Path(openlp.__file__).parent
 return openlp_folder_path
-elif is_macosx():
-openlp_folder_path = Path(os.getenv('HOME'), 'Library', 'Application Support', 'openlp')
+
+dirs = appdirs.AppDirs('openlp', multipath=True)
+if is_macosx():
+openlp_folder_path = Path(dirs.user_data_dir)
 if dir_type == AppLocation.DataDir:
 return openlp_folder_path / 'Data'
 elif dir_type == AppLocation.LanguageDir:
@@ -152,15 +149,15 @@
 return openlp_folder_path
 else:
 if dir_type == AppLocation.LanguageDir:
-directory = Path('/usr', 'local', 'share', 'openlp')
+site_dirs = dirs.site_data_dir.split(os.pathsep)
+directory = Path(site_dirs[0])
 if directory.exists():
 return directory
-return Path('/usr', 'share', 'openlp')
-if XDG_BASE_AVAILABLE:
-if dir_type == AppLocation.DataDir:
-return Path(BaseDirectory.xdg_data_home, 'openlp')
-elif dir_type == AppLocation.CacheDir:
-return Path(BaseDirectory.xdg_cache_home, 'openlp')
+return Path(site_dirs[1])
+if dir_type == AppLocation.DataDir:
+return Path(dirs.user_data_dir)
+elif dir_type == AppLocation.CacheDir:
+return Path(dirs.user_cache_dir)
 if dir_type == AppLocation.DataDir:
 return Path(os.getenv('HOME'), '.openlp', 'data')
 return Path(os.getenv('HOME'), '.openlp')

=== modified file 'openlp/core/common/registry.py'
--- openlp/core/common/registry.py	2018-06-24 06:56:50 +
+++ openlp/core/common/registry.py	2018-10-11 18:29:48 +
@@ -57,8 +57,7 @@
 registry.functions_list = {}
 registry.working_flags = {}
 # Allow the tests to remove Registry entries but not the live system
-registry.running_under_test = 'nose' in sys.argv[0]
-registry.running_under_test 

[Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-11 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Status: Needs review => Superseded

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356560
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-11 Thread Bastian Germann
Bastian Germann has proposed merging lp:~bastian-germann/openlp/setup into 
lp:openlp.

Commit message:
This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

To overcome the module conflict, openlp.py is replaced with __main__.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).
You can call it locally via `python -m openlp`.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

Requested reviews:
  Raoul Snyman (raoul-snyman)
Related bugs:
  Bug #1795876 in OpenLP: "License violations"
  https://bugs.launchpad.net/openlp/+bug/1795876

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356560


-- 
Your team OpenLP Core is subscribed to branch lp:openlp.
=== renamed file 'openlp.py' => 'openlp/__main__.py'
--- openlp.py	2017-12-29 09:15:48 +
+++ openlp/__main__.py	2018-10-11 11:05:44 +
@@ -42,7 +42,7 @@
 faulthandler.enable((AppLocation.get_directory(AppLocation.CacheDir) / 'error.log').open('wb'))
 
 
-if __name__ == '__main__':
+def start():
 """
 Instantiate and run the application.
 """
@@ -58,3 +58,6 @@
 if is_macosx():
 sys.argv = [x for x in sys.argv if not x.startswith('-psn')]
 main()
+
+if __name__ == '__main__':
+start()

=== modified file 'openlp/core/app.py'
--- openlp/core/app.py	2018-08-25 14:36:46 +
+++ openlp/core/app.py	2018-10-11 11:05:44 +
@@ -288,7 +288,7 @@
 :return: a tuple of parsed options of type optparse.Value and a list of remaining argsZ
 """
 # Set up command line options.
-parser = argparse.ArgumentParser(prog='openlp.py')
+parser = argparse.ArgumentParser(prog='openlp')
 parser.add_argument('-e', '--no-error-form', dest='no_error_form', action='store_true',
 help='Disable the error notification form.')
 parser.add_argument('-l', '--log-level', dest='loglevel', default='warning', metavar='LEVEL',

=== modified file 'openlp/core/common/applocation.py'
--- openlp/core/common/applocation.py	2018-01-07 04:45:13 +
+++ openlp/core/common/applocation.py	2018-10-11 11:05:44 +
@@ -26,18 +26,13 @@
 import os
 import sys
 
+import appdirs
+
 import openlp
 from openlp.core.common import get_frozen_path, is_win, is_macosx
 from openlp.core.common.path import Path, create_paths
 from openlp.core.common.settings import Settings
 
-if not is_win() and not is_macosx():
-try:
-from xdg import BaseDirectory
-XDG_BASE_AVAILABLE = True
-except ImportError:
-XDG_BASE_AVAILABLE = False
-
 log = logging.getLogger(__name__)
 
 FROZEN_APP_PATH = Path(sys.argv[0]).parent
@@ -143,8 +138,10 @@
 elif dir_type == AppLocation.LanguageDir:
 return Path(openlp.__file__).parent
 return openlp_folder_path
-elif is_macosx():
-openlp_folder_path = Path(os.getenv('HOME'), 'Library', 'Application Support', 'openlp')
+
+dirs = appdirs.AppDirs('openlp', multipath=True)
+if is_macosx():
+openlp_folder_path = Path(dirs.user_data_dir)
 if dir_type == AppLocation.DataDir:
 return openlp_folder_path / 'Data'
 elif dir_type == AppLocation.LanguageDir:
@@ -152,15 +149,15 @@
 return openlp_folder_path
 else:
 if dir_type == AppLocation.LanguageDir:
-directory = Path('/usr', 'local', 'share', 'openlp')
+site_dirs = dirs.site_data_dir.split(os.pathsep)
+directory = Path(site_dirs[0])
 if directory.exists():
 return directory
-return Path('/usr', 'share', 'openlp')
-if XDG_BASE_AVAILABLE:
-if dir_type == AppLocation.DataDir:
-return Path(BaseDirectory.xdg_data_home, 'openlp')
-elif dir_type == AppLocation.CacheDir:
-return Path(BaseDirectory.xdg_cache_home, 'openlp')
+return Path(site_dirs[1])
+if dir_type == AppLocation.DataDir:
+return Path(dirs.user_data_dir)
+elif dir_type == AppLocation.CacheDir:
+return Path(dirs.user_cache_dir)
 if dir_type == AppLocation.DataDir:
 return Path(os.getenv('HOME'), '.openlp', 'data')
 return Path(os.getenv('HOME'), '.openlp')

=== modified file 'openlp/core/common/registry.py'
--- openlp/core/common/registry.py	2018-06-24 06:56:50 +
+++ openlp/core/common/registry.py	2018-10-11 11:05:44 +
@@ -57,8 +57,7 @@
 registry.functions_list = {}
 registry.working_flags = {}
 # Allow the tests to remove Registry entries but not the live system
-registry.running_under_test = 'nose' in sys.argv[0]
-registry.running_under_test 

[Openlp-core] [Merge] lp:~bastian-germann/openlp/setup into lp:openlp

2018-10-11 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Status: Needs review => Superseded

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-09 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Commit message changed to:

This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

To overcome the module conflict, openlp.py is replaced with __main__.py which 
setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).
You can call it locally via `python -m openlp`.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc).

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-09 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Commit message changed to:

This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

To overcome the double module issue, openlp.py is replaced with __main__.py 
which setuptools installs as /usr/bin/openlp (or openlp.exe on Windows).
You can call it locally via `python -m openlp`.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc.

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-09 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Commit message changed to:

This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.6 because this was agreed to on the 
mailing list.

Some packages which are optional in the source are declared as optional (uno, 
pyenchant, pyodbc.

The vendored (ripped) pymediainfo module is replaced by its upstream version.

Additionally, replace pyxdg with appdirs (see License violations issue).

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
-- 
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-07 Thread Bastian Germann
All of my contributions can be used under GPLv2 or later. So that relicensing 
the codebase is not a blocker for this merge proposal to be integrated.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-07 Thread Bastian Germann
This includes the external dependency pymediainfo now. This is available on all 
officially supported Linux distributions, so this should be okay. It also fixes 
a MIT license violation.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-05 Thread Bastian Germann
Please note that I already removed the vlc changes.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-05 Thread Tim Bentley
Removing VLC is moving against the direction agreed where VLC is going to be 
packaged into the windows installer to prevent issues caused by bad vlc 
installs. 
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-05 Thread Simon Hanna
I always wondered why there is a setup.py that is not really functional...
Making sure it can install openlp would be a good idea. It would greatly 
simplify packaging OpenLP (at least for archlinux)
I don't see a downside to doing that. We only need to set it up once and then 
we only need to touch it when we modify dependencies or publish new versions.

About removing the VLC code. IMO this is something we should really consider. I 
don't see why we should keep it in the repository. It's maintained somewhere 
else and we don't need to modify it.

-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-04 Thread Raoul Snyman
Hi Bastian,

We're not trying to discourage you from contributing at all, and we'd never 
stop someone from contributing. We just want the contribution to line up better 
with the project's greater goals.

If you have the motivation and the time to do it, that is awesome and we'd love 
you to do it. We just want to make sure that we are not negatively affecting 
existing platforms or plans. Having a discussion on our mailing list would make 
sure that all the issues that we are already aware of are discussed and we come 
up with a solution that works for most (or even all) situations.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-04 Thread Bastian Germann
I see. The only change that would influence distributing via a Linux packaging 
system is the introduction of the vlc module as a new dependency. The other 
changes do not interfere if the Linux packages install python packages with 
their Python dist information which is the case for all the Linux distributions 
that I use.

The vlc module available for Arch in the AUR. For Debian there is a Request For 
Packaging and on Fedora there is at least an old version for Python 2.

I am happy to discuss changes. In my experience it is far better to have 
something to offer as a base for discussion in free software projects. If you 
just come with suggestions, the developers usually say: "Good idea! Maybe next 
year when someone has time..."

The point of having a working setup.py is that you can install OpenLP on any 
platform that supports Python and Qt5. In the current state if you want to 
install e.g. on OpenBSD and did not know about scripts/check_dependencies.py 
you would have to go through a lot of files to get an idea of what dependencies 
are needed. And you could not be sure to be right so even if the program starts 
there could be a thing that you missed. E.g. I found the pyxdg when I started 
to scan OpenLP for license violations after I found the first one. It is not 
noted in check_dependencies at all. The same would be true for a developer with 
a Windows environment who wants to work on trunk.
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-04 Thread Raoul Snyman
Review: Disapprove

Hi Bastian,

Thank you for contributing to OpenLP! It's great to see some of the issues I've 
seen in OpenLP finally addressed. We have not had the time to look into these 
issues, and we're happy to see someone looking into them.

Unfortunately your changes are not compatible with distributing OpenLP via 
Linux distributions. While you have highlighted some very real problems in this 
merge proposal, your proposed fixes do not take into account the multiple ways 
OpenLP is distributed.

While I am happy to make OpenLP installable via PyPI, it is not our primary way 
to distribute OpenLP. Most of our users are not developers or terribly computer 
literate for that matter, and certainly over 90% of them have never heard of or 
used PyPI.

Please discuss your changes with the rest of the team on our mailing list. We 
have discussed some of the issues you have highlighted, and it would be better 
to engage the whole team and hear what we have already discussed and come up 
with a solution that works for everyone.

Renaming openlp.py: 
https://lists.openlp.io/pipermail/openlp-dev/2017-March/000186.html

Using Python 3.6: 
https://lists.openlp.io/pipermail/openlp-dev/2018-June/000402.html
-- 
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
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:~bastian-germann/openlp/setup into lp:openlp

2018-10-04 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Commit message changed to:

This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.5 because the async/await feature is in 
use in the code base.

Additionally the vendored vlc module is replaced by its version on PyPI.

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
-- 
Your team OpenLP Core is requested to review the proposed merge of 
lp:~bastian-germann/openlp/setup 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:~bastian-germann/openlp/setup into lp:openlp

2018-10-04 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Description changed to:



For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
-- 
Your team OpenLP Core is requested to review the proposed merge of 
lp:~bastian-germann/openlp/setup 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:~bastian-germann/openlp/setup into lp:openlp

2018-10-04 Thread Bastian Germann
The proposal to merge lp:~bastian-germann/openlp/setup into lp:openlp has been 
updated.

Description changed to:

This fixes setuptools' dependencies according to
scripts/check_dependencies.py.
The minimum Python version is set to 3.5 because the async/await feature is in 
use in the code base.

Additionally the vendored vlc module is replaced by its version on PyPI.

For more details, see:
https://code.launchpad.net/~bastian-germann/openlp/setup/+merge/356147
-- 
Your team OpenLP Core is requested to review the proposed merge of 
lp:~bastian-germann/openlp/setup 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