Bug 238469 - graphics/py-traitsui: Update to 6.1.2
Summary: graphics/py-traitsui: Update to 6.1.2
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Kai Knoblich
URL: https://github.com/enthought/traitsui...
Keywords:
Depends on:
Blocks:
 
Reported: 2019-06-10 19:53 UTC by vladimir.chukharev
Modified: 2019-08-27 20:13 UTC (History)
2 users (show)

See Also:


Attachments
Patch (1.17 KB, patch)
2019-06-10 19:53 UTC, vladimir.chukharev
vladimir.chukharev: maintainer-approval+
Details | Diff
New patch (1.17 KB, patch)
2019-08-01 11:39 UTC, vladimir.chukharev
vladimir.chukharev: maintainer-approval+
Details | Diff
py-traitsui-6.1.2-with-options.patch (2.33 KB, patch)
2019-08-10 13:25 UTC, Kai Knoblich
no flags Details | Diff
py-traitsui-6.1.2-with-options-rev2.patch (3.01 KB, patch)
2019-08-27 09:52 UTC, Kai Knoblich
vladimir.chukharev: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description vladimir.chukharev 2019-06-10 19:53:45 UTC
Created attachment 204960 [details]
Patch

Update graphics/py-traitsui from 6.0.0 to 6.1.1.
Add USE_PYTHON=concurrent.
Comment 1 vladimir.chukharev 2019-08-01 11:39:18 UTC
Created attachment 206194 [details]
New patch

An update of graphics/py-traitsui to 6.1.2 has been released.
Comment 2 Kai Knoblich freebsd_committer 2019-08-10 13:25:27 UTC
Created attachment 206416 [details]
py-traitsui-6.1.2-with-options.patch
Comment 3 Kai Knoblich freebsd_committer 2019-08-10 13:28:00 UTC
(In reply to vladimir.chukharev from comment #1)

Hi Vladimir,

thanks for the update to 6.1.2 and sorry for the delay. I did some additional QA and attached is a new patch that has some fixed RUN_DEPENDS and options for the extra dependencies.

All those dependencies are defined in "traitsui/__init__.py" and are obtained via setup.py from there.

If you're fine with that patch I'll commit it as soon as possible.
Comment 4 vladimir.chukharev 2019-08-12 13:42:02 UTC
Hi Kai,

Thanks for adding the options. I was starting to work on it, but that goes too slowly. What bothers me a bit with your patch is that portlint complains:
 $ portlint -Ca
FATAL: Makefile: [44]: OPTIONS_GROUP_TOOLKITS is set after including bsd.port.pre.mk.
WARN: Makefile: WXGTK appears in PORT_OPTIONS:M, but is not listed in OPTIONS_DEFINE.
FATAL: Makefile: extra item "RUN_DEPENDS" placed in the LICENSE section.

Moreover, Porters Handbook warns that after an inclusion of bsd.port.pre.mk some USE_* flags will not work as expected, and something like "WXGTK_USE=wxgtk=3.0+" is recommended instead (5.13.1.2. Syntax;  Example 5.41. Practical Use of OPTIONS).

I'm still struggling with the options usage, so hardly I can correct the patch fast enough. I believe you can do it better.

As to dependecies, pyface already has them. I think, it's better to minimize the dependence lists by avoiding their duplications. Am I wrong?

What do you think about moving this discussion to phabricator?
Comment 5 Kai Knoblich freebsd_committer 2019-08-12 14:04:55 UTC
(In reply to vladimir.chukharev from comment #4)

Thank you for your feedback and indeed, I'm aware about the warnings that portlint gives. ;)

One warning can be reduced by removing the comment above of the RUN_DEPENDS.

The warning about WXGTK that isn't listed in OPTIONS_DEFINE occurs because the WXGTK option isn't available for non-py27 flavors. If you do e.g.

> $ FLAVOR=py27 portlint -AC

the output will differ somewhat. I've to admit that the current options usage is quite a hack and similar done as for the www/py-autobahn port. 

I would have added the patch to Phabricator either way and if you like, I would prepare the review and add you as subscriber?
Comment 6 vladimir.chukharev 2019-08-12 14:37:02 UTC
(In reply to Kai Knoblich from comment #5)
Yes, add me as a subscriber of the diff, please!
Comment 7 Kai Knoblich freebsd_committer 2019-08-27 09:52:14 UTC
Created attachment 206951 [details]
py-traitsui-6.1.2-with-options-rev2.patch

Attached is the latest version of the revised patch from D21229 to be in sync with Bugzilla/Phabricator.
Comment 8 vladimir.chukharev 2019-08-27 10:27:16 UTC
Comment on attachment 206951 [details]
py-traitsui-6.1.2-with-options-rev2.patch

Great job! And thanks a lot for all your explanations here and in Phabricator!
Comment 9 commit-hook freebsd_committer 2019-08-27 20:08:39 UTC
A commit references this bug:

Author: kai
Date: Tue Aug 27 20:07:40 UTC 2019
New revision: 510023
URL: https://svnweb.freebsd.org/changeset/ports/510023

Log:
  graphics/py-traitsui: Update to 6.1.2

  * Enable build for all Python versions as the support for Python 3 has been
    added since the 5.0.0 release.

  * Introduce new default option QT5 [1] to let the port make use of the Qt5
    toolkit.  (Support for the wxPython toolkit is also available but was left
    out intentionally because it isn't available for Python 3, yet.)

  * Also add a "do-test" target to make future QA easier while I'm here.

  Changelog since 6.0.0:

  https://github.com/enthought/traitsui/blob/6.1.2/CHANGES.txt

  PR:		238469
  Submitted by:	vladimir.chukharev@gmail.com (maintainer)
  Reviewed by:	koobs (Python)
  Approved by:	vladimir.chukharev@gmail.com (maintainer) [1]
  Differential Revision:	https://reviews.freebsd.org/D21229

Changes:
  head/graphics/py-traitsui/Makefile
  head/graphics/py-traitsui/distinfo
Comment 10 Kai Knoblich freebsd_committer 2019-08-27 20:13:49 UTC
(In reply to vladimir.chukharev from comment #8)

Committed, thank you for the patch and the great collaboration here and on Phabricator!

P.S.: I just did a minor change in the comment regarding the options -> s/wxWidgets/wxPython/ as wxWidgets is still in v3.x. Just for the sake of completeness.