Page MenuHomeFreeBSD

[patch] lang/jython: Fix numerous bugs and update to 2.7.0
AbandonedPublic

Authored by skozlov on Nov 2 2015, 10:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mar 7 2024, 12:43 AM
Unknown Object (File)
Mar 7 2024, 12:05 AM
Unknown Object (File)
Mar 6 2024, 11:20 PM
Unknown Object (File)
Dec 20 2023, 4:30 AM
Unknown Object (File)
Dec 9 2023, 12:39 AM
Unknown Object (File)
Dec 1 2023, 9:19 AM
Unknown Object (File)
Nov 11 2023, 5:11 AM
Unknown Object (File)
Nov 7 2023, 3:27 AM
Subscribers

Details

Reviewers
koobs
Group Reviewers
Contributor Reviewers (ports)
Summary

PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=204231

  • Update to 2.7.0
  • Update distinfo
  • Change MASTER_SITES to use https and modern mirror as suggested by [1]
  • Jython uses two licenses, indicate that in the port. Extract the licenses from the jar earlier so ports framework can find them
  • The port complains when trying to build with openjdk6, so set JAVE_VERSION to 1.7+
  • Mark NO_ARCH
  • Null the PATH for installer invocation. If installer finds python2.7 in PATH it installs python wrapper script instead of bash one. [2]
  • Exclude "ensurepip" module from the installation as it doesn't build on FreeBSD
  • Change kinda dirty and not obvious replacement of "-cl"(asspath) to addition to JAVA_OPTS. This hack is needed to place jython cachedir into user's home directory, as it needs to be writable by the user invoking jython
  • Write comments to not obvious parts of the installation
  • Wrapper script is now placed in bin/ directory in JYTHON_PREFIX rather then in root, fix that
  • Jython uses *$py.class files as an analog for *.pyc ones in plain Python, installer puts pre-compiled *$py.class files into the STAGEDIR. We need to recompile that because, after installation: 1) If we invoke Jython as user - it can't use the *$py.class files as they have different source path inside, slowing down the startup; 2) If we invoke jython as root - it will recompile the *$py.class files breaking the de-installation process of the package. Compilation phase always have non-portrelated errors, so we need to ignore it's exit code
  • Don't ignore the exit code of symlink installation as we don't expect that to fail

Changes:
https://hg.python.org/jython/file/412a8f9445f7/NEWS

[1] https://central.maven.org/
[2] https://hg.python.org/jython/file/tip/installer/src/java/org/python/util/install/StartScriptGenerator.java#l22

Test Plan
WARN: Makefile: [0]: possible direct use of command "expr" found. use ${EXPR} instead.

"expr" is only used in ${REINPLACE_CMD} as a match.

  • Running Jython regression tests with OpenJDK 8 or 7 coredumps the JVM, but:
    • It's JVM problem, not Jython's one, bug report to OpenJDK to follow
    • Previous version hang the tests (it doesn't crash the JVM though)
    • I've tried to run the tests on different systems (Cygwin, Linux) and on different JVM's (OpenJDK 7,8, Oracle 8), neither of those tries passed, I guess they're just not passable at all

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

skozlov retitled this revision from to [patch] lang/jython: Fix numerous bugs and update to 2.7.0.
skozlov updated this object.
skozlov edited the test plan for this revision. (Show Details)
skozlov set the repository for this revision to rP FreeBSD ports repository.
skozlov edited edge metadata.
skozlov edited the test plan for this revision. (Show Details)