Summary: | www/jetty8: jettyctl fails to run with Python 3: SyntaxError: invalid token | ||||||
---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Martin Waschbüsch <martin> | ||||
Component: | Individual Port(s) | Assignee: | Jimmy Olgeni <olgeni> | ||||
Status: | Closed Overcome By Events | ||||||
Severity: | Affects Some People | CC: | diizzy, koobs, olgeni, python, rene | ||||
Priority: | --- | Keywords: | needs-patch, needs-qa | ||||
Version: | Latest | Flags: | olgeni:
maintainer-feedback+
koobs: merge-quarterly? |
||||
Hardware: | Any | ||||||
OS: | Any | ||||||
Attachments: |
|
Description
Martin Waschbüsch
2019-11-17 00:34:12 UTC
*** Bug 242015 has been marked as a duplicate of this bug. *** - Is jettyctl FreeBSD authored/provided, or upstream provided? - Does upstream claim/document support for Python 3? - Can we find references that say only Python 2.x is currently supported? - Are there any upstream bug reports, PR's or commits that add Python 3 support? (In reply to Kubilay Kocak from comment #2) jettyctl is provided by the FreeBSD package as www/jetty8/files/jettyctl.in. I could not find any reference to jettyctl in the upstream tarball: https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/8.1.15.v20140411/jetty-distribution-8.1.15.v20140411.tar.gz (nor does the tarball contain the string 'python' anywhere :D) Indeed, jetty9 no longer has a python based script in FreeBSD either, but patches the upstream-provided jetty.sh. I will try to adapt that and see if I can come up with a patch to the package to make it work the same way as jetty9. Created attachment 209203 [details]
proposed patch: use the upstream start/stop script
I am unsure if there are other things in the Makefile that should be adjusted,
but with this patch, jetty8 will use the upstream start/stop script.
poudriere testport worked without problems (tested on a 12.1-RELEASE jail), as did starting and stopping jetty.
Hi Jimmy, Any progress on this one? Is removing USES=python correct if it needs Python at runtime for the control script? Does it only support a particular subset of Python versions? Does USES=python need a :<version-spec>? If it's only required at runtime, ',run' may be required. However, if the script produces .pyc/pyo files upon first invocation, the files should be run through Pythons standard 'compileall' function to produce and package these, otherwise the resulting files will be orphaned on the system on deinstall. Note also that any scripts invoking Python should invoke (shebang) using the specific version of Python the port has been built with, or uses, using either: - PYTHON_CMD, or - LOCALBASE/sbin/foo-{PYTHON_VER} (with an additional LOCALBASE/sbin/foo version pointing to it). See USE_PYTHON=concurrent We should also match upstream's documentation with respect to what the name of the script is (with or without .sh extension) No activity in over two years, EOL upstream for almost ten years, and this port expired today. |