Bug 211665

Summary: multimedia/py-openlp: Update 2.1.6 -> 2.4.6
Product: Ports & Packages Reporter: Kurt Jaeger <pi>
Component: Individual Port(s)Assignee: Kurt Jaeger <pi>
Status: Closed FIXED    
Severity: Affects Only Me CC: kai, miwi, pi, python, thierry, w.schwarzenfeld
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
patch
none
patch-to-2.4.6
none
patch-to-2.4.6-py3-qt5
none
pyenchant patch
pi: maintainer-approval+
py-openlp-2.6.4.patch kai: maintainer-approval+

Description Kurt Jaeger freebsd_committer 2016-08-08 16:05:44 UTC
Created attachment 173411 [details]
patch

Portlint OK, testbuilds are fine, although there are strange syntax errors
during build, like:

byte-compiling /wrkdirs/usr/ports/multimedia/py-openlp/work/stage/usr/local/lib/python2.7/site-packages/openlp/core/ui/wizard.py to wizard.pyc
  File "/usr/local/lib/python2.7/site-packages/openlp/core/ui/wizard.py", line 194
    def exec(self):
           ^
SyntaxError: invalid syntax

Changes: https://openlp.org/blog/2016/06/26/openlp-242-released
         https://openlp.org/blog/2016/05/01/openlp-241-released
         https://openlp.org/blog/2016/02/14/openlp-24-released
         https://openlp.org/blog/2015/11/01/first-22-series-bugfix-release-openlp-221
         https://openlp.org/blog/2015/10/18/openlp-22-released

If you have the chance to run-test it ?
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2016-08-08 16:17:57 UTC
@Kurt - See https://svnweb.freebsd.org/changeset/ports/404558 commit log for www/py-gunicorn for the probable cause, although I would have expected a pkg-plist failure because of it.
Comment 2 Kurt Jaeger freebsd_committer 2016-08-08 16:58:36 UTC
Hmm, if I grep in the buildlogs, gunicorn is not referenced at all. How can it affect this error message ?
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2016-08-09 08:27:09 UTC
(In reply to Kubilay Kocak from comment #1)

Sorry Kurt, I didn't mean gunicorn was the cause, just that the same problem occurred in the gunicorn port (see bottom of commit message)
Comment 4 Walter Schwarzenfeld freebsd_triage 2018-02-08 17:33:46 UTC
ping!
Comment 5 Kurt Jaeger freebsd_committer 2018-02-08 19:33:06 UTC
Created attachment 190440 [details]
patch-to-2.4.6

testbuilds@work
Comment 6 Kurt Jaeger freebsd_committer 2018-02-09 06:21:31 UTC
Testbuilds are sucessful, but many errors like those

    self.song_usage_delete_form.exec()
                                   ^
SyntaxError: invalid syntax

are reported during build, on any release. See for example

http://people.FreeBSD.org/~pi/logs/multimedia__py-openlp-111-1518117659.txt

I guess we need a run-test and some idea how to fix it ? Maybe a different
python version to build ?
Comment 7 Walter Schwarzenfeld freebsd_triage 2018-02-09 11:06:26 UTC
Maybe this is it?
OpenLP is written in Python 3 and Qt5, so you'll need to install Python 3 (3.4+), Qt5, and the PyQt5 Python bindings for Qt5

https://wiki.openlp.org/Development:Getting_Started
Comment 8 Kurt Jaeger freebsd_committer 2018-02-09 18:21:03 UTC
I'm testbuilding a 2.4.6 with py3 etc, but there's one show-stopper:

It needs textproc/py-enchant which says in its Makefile:

# Enable Python 3 only when Mk/bsd.wx.mk will support it

and I don't really know if bsd.wx.mk supports py3 already.
Comment 9 Kurt Jaeger freebsd_committer 2018-02-09 18:53:37 UTC
Created attachment 190464 [details]
patch-to-2.4.6-py3-qt5

testbuilding at work to test if this one does not have the errors of the former version.
Comment 10 Antoine Brodin freebsd_committer 2018-02-09 19:40:32 UTC
Created attachment 190465 [details]
pyenchant patch

(In reply to Kurt Jaeger from comment #8)
For py-enchant you may try something like this.
Comment 11 Kurt Jaeger freebsd_committer 2018-02-09 20:50:58 UTC
(In reply to Antoine Brodin from comment #10)
Would that change to pyenchant require to wait for maintainer timeout there ?
Comment 12 Antoine Brodin freebsd_committer 2018-02-09 20:54:24 UTC
(In reply to Kurt Jaeger from comment #11)
ask maintainer approval
Comment 13 Kurt Jaeger freebsd_committer 2018-02-14 18:37:46 UTC
Comment on attachment 190465 [details]
pyenchant patch

Approval granted by mail.
Comment 14 commit-hook freebsd_committer 2018-02-14 18:40:19 UTC
A commit references this bug:

Author: pi
Date: Wed Feb 14 18:39:24 UTC 2018
New revision: 461831
URL: https://svnweb.freebsd.org/changeset/ports/461831

Log:
  textproc/py-enchant: if py3 is chosen to build, the WX option is disabled

  - this allows multimedia/py-openlp to build with python 3.x

  PR:		211665
  Submitted by:	antoine

Changes:
  head/textproc/py-enchant/Makefile
Comment 15 Rene Ladan freebsd_committer 2018-02-24 21:46:41 UTC
Maintainer reset.
Comment 16 Martin Wilke freebsd_committer 2018-04-28 00:23:20 UTC
Fixed in revision: 461831
Comment 17 Kurt Jaeger freebsd_committer 2018-04-28 05:05:14 UTC
The update of openlp is not yet committed.
Comment 18 Kurt Jaeger freebsd_committer 2018-04-28 17:02:00 UTC
testbuilds@work
Comment 19 Kai Knoblich freebsd_committer 2018-08-07 18:50:11 UTC
Created attachment 195985 [details]
py-openlp-2.6.4.patch

This is an rebased and improved patch and it is intended as preparation for bug #230379 . 

This patches does also:
- adds LICENSE_FILE
- copies OpenLP to ${PREFIX}/bin (= renamed copy of openlp.py) with appropriate workaround for the openlp.desktop file. [1]
- added INSTALLS_ICONS to pet portlint
- merged pre-build target into post-build target
- sorted variables a bit

QA:
~~~
- poudriere (11.2-RELEASE amd64) -> OK [2]
- portlint -> OK
- a short runtime test seemed to be ok

Note:
[1] - This is required to start the software. Otherwise it yields the following error:

> ImportError: No module named 'openlp.core'; 'openlp' is not a package.

[2] - Testbuilds for the other FreeBSD releases are in progress
Comment 20 Kurt Jaeger freebsd_committer 2018-08-08 00:47:32 UTC
Testbuilds@work
Comment 21 Kai Knoblich freebsd_committer 2018-08-08 18:33:34 UTC
The testbuilds from my side are done and I can confirm that multimedia/py-openlp builds fine on 10.4/11.1/11.2-RELEASE and 12.0-CURRENT @r337160 for each amd64 + i386 architecture.
Comment 22 Kurt Jaeger freebsd_committer 2018-08-08 18:36:08 UTC
My testbuilds are still running, I'll report back. If everything works out, I'll commit the update.
Comment 23 Kurt Jaeger freebsd_committer 2018-08-08 18:36:25 UTC
Oh, btw, do you have a chance to run-test the changes ?
Comment 24 Kai Knoblich freebsd_committer 2018-08-08 19:57:52 UTC
(In reply to Kurt Jaeger from comment #23)

Yes, I did already some run tests and they looked fine so far. I wasn't able to crash the program/produce errors:

- OpenLP starts fine without any strange errors
- first run wizard works fine and can retrieve files/presets from internet
- automatic language detection works
- changing between languages works (requires restart of OpenLP)
- saving/loading of service files works

This was tested under 11.2-RELEASE amd64.
Comment 25 Kurt Jaeger freebsd_committer 2018-08-09 02:51:40 UTC
Committed, thanks very much to Kai for his fixes!
Comment 26 commit-hook freebsd_committer 2018-08-09 02:51:44 UTC
A commit references this bug:

Author: pi
Date: Thu Aug  9 02:51:20 UTC 2018
New revision: 476718
URL: https://svnweb.freebsd.org/changeset/ports/476718

Log:
  multimedia/py-openlp: Update 2.1.6 -> 2.4.6

  - adds LICENSE_FILE
  - copies OpenLP to ${PREFIX}/bin (= renamed copy of openlp.py)
    with appropriate workaround for the openlp.desktop file.
    This is required to start the software. Otherwise it yields the
    following error:
    ImportError: No module named 'openlp.core'; 'openlp' is not a package.
  - added INSTALLS_ICONS to pet portlint
  - merged pre-build target into post-build target
  - sorted variables a bit

  PR:		211665
  Submitted by:	Kai <freebsd_ports@k-worx.org>
  Changes:	https://openlp.org/blog/2017/04/02/fix-all-the-bugs-openlp-246
  		https://openlp.org/blog/2017/02/05/a-few-more-bugs-fixed-openlp-245
  		https://openlp.org/blog/2016/11/27/openlp-244-released
  		https://openlp.org/blog/2016/09/25/openlp-243-and-personal-news
  		https://openlp.org/blog/2016/06/26/openlp-242-released
  		https://openlp.org/blog/2016/05/01/openlp-241-released
  		https://openlp.org/blog/2016/02/14/openlp-24-released
  		https://openlp.org/blog/2015/11/01/first-22-series-bugfix-release-openlp-221
  		https://openlp.org/blog/2015/10/18/openlp-22-released

Changes:
  head/multimedia/py-openlp/Makefile
  head/multimedia/py-openlp/distinfo
  head/multimedia/py-openlp/pkg-descr
  head/multimedia/py-openlp/pkg-plist