Details
Diff Detail
- Repository
- rP FreeBSD ports repository
- Lint
No Lint Coverage - Unit
No Test Coverage - Build Status
Buildable 12481 Build 12756: arc lint + arc unit
Event Timeline
I get:
===> py36-qutebrowser-1.0.2 depends on package: /packages/All/py36-Jinja2-2.9.6.txz - not found
Incorporate sunpoet's suggestions, update to 1.0.3.
Open issues:
Videos will not play with qt5-webkit backend and I am unable to get it to work with qt5-webengine (error reported is "QtWebEngineWidgets must be imported before a QCoreApplication instance is created")
www/qutebrowser/Makefile | ||
---|---|---|
27–28 | Maybe don't add commented out stuff. |
www/qutebrowser/Makefile | ||
---|---|---|
40 | ^ OPTIONS_SINGLE? or can they be built at the same time? |
Both backends can be installed at the same time and the user can choose at run-time which backend to use.
www/qutebrowser/Makefile | ||
---|---|---|
26 | Upstream says 3.5+ [1] [1] https://pypi.python.org/pypi/qutebrowser Programming Language :: Python :: 3 Programming Language :: Python :: 3.5 Programming Language :: Python :: 3.6 | |
27 | Use MASTER_SITES=CHEESESHOP by default for Python packages that provide distribution files via PyPI, unless there is a compelling (temporary) reason not to, such as test/test data files not included in the source distribution (sdist) | |
31 | Python packages that provide end-user, console scripts, or other files [1] in common/shared locations should tested to be, or made to be USE_PYTHON=concurrent safe. Concurrent safe means two package installs of the same port for different python versions (eg: py27-foo and py36-foo) do not conflict (each file in common locations has a unique filename). USE_PYTHON=concurrent handles most common examples automatically (localbase/bin/*, docs) [1] https://github.com/qutebrowser/qutebrowser/blob/master/setup.py#L72 |
As a side note, there is USES=python:3.5+ but you depend on py-* ports, which are Python 2.7 variants, it will probably not work at all.
I originally did depend on the py3- variants (if they were available) like devel/py3-Jinja2, but ran into issues. I don't recall the details now, but I can return to them to test if necessary to see what was going on. I haven't seen any build- or run-time issues with the current dependencies. It's worth noting that I have very little experience with python or the python ports, so I may have done something stupid.
When I switch to RUN_DEPENDS=${PYTHON_PKGNAMEPREFIX}Jinja2>=2.9.5:devel/py3-Jinja2 I see
===> py36-qutebrowser-1.0.3 depends on package: py36-Jinja2>=2.9.5 - not found ===> py36-qutebrowser-1.0.3 depends on package: /packages/All/py36-Jinja2-2.9.6.txz - not found ===> USE_PACKAGE_DEPENDS_ONLY set - not building missing dependency from source
When I look in poudriere's package repository I do see data/packages/11amd64-default/All/py36-Jinja2-2.9.5.txz, which I think was built from devel/py-Jinja2 because it's version 2.9.5 and not 2.9.6, the version of devel/py3-Jinja2. When I try poudriere bulk -j 11amd64 devel/py3-Jinja2 it doesn't build anything new.
I am not sure how to explain this differently, but foo/py-bar will generate a py27-bar package, so if you have ${PYTHON_PKGNAMEPREFIX}bar:foo/py-bar, it will want py36-bar and only get py27-bar, which poudriere-devel will tell you something like:
[00:02:36] Warning: security/nyx@python3 dependency on security/py-stem has wrong PKGNAME of 'py36-stem' but should be 'py27-stem'
(This is with python flavors, but you get the gist of the problem.)
For some reason, I am not seeing this with poudreiere-devel. I get py36-* for all the packages.
Is this correct? Note, some of those py3- ports do not currently exist.
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.9.6:devel/py3-Jinja2 \ ${PYTHON_PKGNAMEPREFIX}yaml>=3.11:devel/py3-yaml \ ${PYTHON_PKGNAMEPREFIX}pyPEG2>=2.15.2:textproc/py3-pyPEG2 \ ${PYTHON_PKGNAMEPREFIX}pygments>=2.2.0:textproc/py3-pygments \ ${PYTHON_PKGNAMEPREFIX}cssutils>=1.0.2:www/py3-cssutils \ ${PYTHON_PKGNAMEPREFIX}attrs>=17.1.0:devel/py3-attrs \ ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins
According to bdrewery, the behaviour is excpected in poudriere-devel.
bdrewery_ on #freebsd_python
<bdrewery_> jrm: poudriere-devel even lets you invent new origins that don't exist.... if there's only a devel/py-foo you can build devel/py36-foo and it will do what you expect
<bdrewery_> I don't really like that but it was a side-effect of letting the python deps all work
<bdrewery_> the production builders don't have any of this
<bdrewery_> so we still get the USE_PACKAGE_DEPENDS_ONLY error
Uh, looks like I've hijacked this by https://reviews.freebsd.org/D13113 (which I committed already). Just found this one while searching for the qt-pywebengine revision. :\
Really sorry about that.