Created attachment 150595 [details] SVN diff Update the Eclipse port to version 4.4.1 (Luna SR-1).
Please ship it! It will be best present for New Year!
Log files of poudriere testport runs: https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.1/amd_10_1-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.1/amd_09_3-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.1/amd_08_4-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.1/x86_10_1-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.1/x86_09_3-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.1/x86_08_4-default.log
Hi Jimmy, Two major things. One, you changes this to require openjdk8 but didn't mention that. I assume this means openjdk8 is the minimum requirement for this. Related, this a major upgrade to eclipse, but there is no mention of an "exp-run" on all the eclipse plugins. I think we need to see a poudriere bulk run on not only eclipse, but all the plugins (or a report, pass/fail on if they build and work). Also, do the plugins need openjdk7 or 8? Is it a concern at all? I'm trying to avoid updating eclipse and not knowing about big fallout on the plugins. We need to understand which plugins need to be removed as a result of this upgrade, before we upgrade.
Hi John, Jimmy, I would like to share some thoughts about JDK version. According to release notes (http://www.eclipse.org/eclipse/development/readme_eclipse_4.4.php#TargetOperatingEnvironments) both JVM versions are supported. But JVM v8 have several advantages like lambdas, Nashorn, performance improvement and so on. Moreover, Oracle JDK7's end of life is in few months (http://www.oracle.com/technetwork/java/eol-135779.html). From my perspective, if there is choice between 2 versions of JDK for maintenance of any product, I prefer latest build of latest JDK version. Best regards, Michael
OpenJDK 8 is required to build this port and the Makefile indicates this with the JAVA_VERSION, but, as is with most versions of Eclipse, it will run on an older version of the JRE. Let me throw out this idea: why not allow the port be packaged without ANY Java runtime dependency defined, and let the end user pick and install the one they want to run with (and note this with a pkg-message). As to all the eclipse plugin ports, I will go through all of them and make recommendations as to which ones could be deleted because the appropriate versions are easily installed by using the built-in update manager, and note which ones will probably need to be updated because the version(s) of Eclipse they are documented to support.
If openjdk8 is required to build, so be it. It's not the only port like that (see minecraft). I don't think a change is required. Thanks in advance for checking all the plugins.
Has any progress been made? As a separate point of interest, I have openjdk7 built by gcc-5, and it fails to build eclipse with this message: [ERROR] Failed to execute goal org.eclipse.tycho.extras:tycho-eclipserun-plugin:0.19.0:eclipse-run (dont_skip_me) on project org.eclipse.platform.doc.isv: Error while executing platform: Error while executing platform (return code: 13) -> [Help 1] so I would be interesting in getting the new eclipse in there.
Ok, here's what I found for all the ports that have a run-depends on Eclipse: java/veditor - OK java/phpeclipse - OK java/eclipse-windowbuilder - OK; needs to be made FreeBSD-native java/eclipse-webtools - old, can't update, should just install from Eclipse site java/eclipse-datatools - old, can update, should just install from Eclipse site java/eclipse-gef - old, can update, should just install from Eclipse site java/eclipse-emf - old, can update, should just install from Eclipse site java/eclipse-viplugin - doesn't work devel/mercurialeclipse - OK devel/scala-ide - doesn't work properly devel/subclipse - can't get it to browse the FreeBSD SVN ports with the SVN protocol, http works OK; update available devel/subversive - OK java/commonclipse - doesn't work, very old java/eclipse-EPIC - OK java/eclipse-RDT - superseded by Aptana java/eclipse-aptana - doesn't seem to work; use Aptana Studio 3 java/eclipse-aptana-radrails - doesn't seem to work; use Aptana Studio 3 java/eclipse-aptana2 - doesn't seem to work; use Aptana Studio 3 java/eclipse-cdt - Old; throwing error about "spawner"; needs to be made FreeBSD-native java/eclipse-checkstyle - doesn't seem to work; update available java/eclipse-drjava - OK java/eclipse-examples - old version java/eclipse-findbugs - OK java/eclipse-gef-examples - old version java/eclipse-hibernatetools - crashed Java VM when trying to use it; update is available java/eclipse-jad - doesn't work with Eclipse 4.x java/eclipse-langpack - crashed X server! update available java/eclipse-log4e - OK java/eclipse-lomboz - does something, very old java/eclipse-ocl - seems to work java/eclipse-pmd - doesn't seem to work java/eclipse-propedit - doesn't work; update is available java/eclipse-pydev - OK java/eclipse-quantum - OK java/eclipse-shelled - OK; update is available java/eclipse-sqlexplorer - doesn't work; update is available java/eclipse-sysdeo-tomcat - not gonna bother - says it's for Tomcat 5 or earlier. java/eclipse-uml - ? Update is available. java/eclipse-vep - old; superseded by Eclipse WindowBuilder java/eclipse-vep-examples - old; superseded by Eclipse WindowBuilder Just about everything needs to be updated, the "superseded" ones probably need to be removed. None of these should have their own "USE_JAVA" or "JAVA_VERSION" because that can cause multiple java ports being installed when only the one needed for Eclipse itself is needed.
Okay, wow, these are not in good shape collectively. I understand that you tested with eclipse 4.4.1, but I can infer many of these marked "don't work" probably don't work for the current version of eclipse either. in one particular case you have "use aptana-3" in 4 places, but of course aptana-3 doesn't exist in ports. So I propose that you break this list up into 4 categories: category 1) completely ok, no action required category 2) hopeless, mark it for removal in 4 weeks category 3) mark "ignore" with a message that it will be updated soon category 4) new ports that must be created. Let's be pretty agressive here. If it works or mostly works, but an update is available or it should be converted to native (whatever that means) then put it in category 3. Any extension that you think isn't worth time, just dump in category 2. Category 4 may have very few entries, e.g. one, aptana-3 From what I can tell, most extensions will end up in category 2 destined for removal and that's fine with me. Can you make the call on each extension?
Hi, At first, thank you for your effort! I would like to share my experience of usage of Eclipse 4.4.1. I installed it on December and use it for my daily tasks (Java, Python, C). Extensions: I installed no extension from ports, all extension have been installed from update sites and stored into $HOME/.eclipse folder. CDT/PyDev/MAT work fine, but jgit caused 100% cpu, so I don't use it. To be honest, my preferable way of extension installation is from Update Site, because: - I can drop them all when I want (no need of root access), - Eclipse notifies me when new version is released, - All extensions are installed in same way (to be honest not all extensions are present in ports), except native libs. Disclaimer: I don't know how/why CDT from update site works fine on my machine (may be thanks to linuxulator). Theme: Original UI disappointed me. So I've adjusted GTK theme and updated eclipse shell script like: GTK2_RC_FILES=${ECLIPSE_HOME}/gtkrc.eclipse JAVA_VERSION... exec "${ECLIPSE_HOME}/eclipse" $@ The file gtkrc.eclipse is: style "gtkcompact" { GtkButton::default_border={0,0,0,0} GtkButton::default_outside_border={0,0,0,0} GtkButtonBox::child_min_width=0 GtkButtonBox::child_min_heigth=0 GtkButtonBox::child_internal_pad_x=0 GtkButtonBox::child_internal_pad_y=0 GtkMenu::vertical-padding=1 GtkMenuBar::internal_padding=0 GtkMenuItem::horizontal_padding=4 GtkToolbar::internal-padding=0 GtkToolbar::space-size=0 GtkOptionMenu::indicator_size=0 GtkOptionMenu::indicator_spacing=0 GtkPaned::handle_size=4 GtkRange::trough_border=0 GtkRange::stepper_spacing=0 GtkScale::value_spacing=0 GtkScrolledWindow::scrollbar_spacing=0 GtkTreeView::vertical-separator=0 GtkTreeView::horizontal-separator=0 GtkTreeView::fixed-height-mode=TRUE GtkWidget::focus_padding=0 font_name = "xxxxx 9" } class "GtkWidget" style "gtkcompact" After that change UI looks match better. Eclipse 4.4.2: Eclipse 4.4.2 is to be released tomorrow, so it will be nice if you can update ports to version 4.4.2. Please feel free to ask me any questions. Sincerely yours, Michael
(In reply to John Marino from comment #9) any news here? You've got the attention of a ports committer, don't squander that opportunity! Many PRs don't even get looked at.
(In reply to John Marino from comment #11) Please bear with me for another day; I'm in the process of doing poudriere testport runs on the 4.4.2 release update.
Created attachment 154587 [details] eclipse 4.4.2 patch New patch to upgrade to 4.4.2 (just released). The Poudriere testport logs: https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.2/amd101-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.2/amd093-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.2/amd084-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.2/x86101-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.2/x86093-default.log https://googledrive.com/host/0B2kYpXHnC5LpSk01bU1ud0N5bXc/testport-logs/4.4.2/x86084-default.log
(In reply to John Marino from comment #9) And now my take on the eclipse-dependent ports. Since installing stuff from the Eclipse Marketplace or other easily Googled update site seems to work very well, I figured why not let users get things from those sites rather than fill the ports tree with stuff. The ones that need to be "native" (those that ask the Java VM "what platform am I running on?" and won't work at all or have major features disabled because it doesn't understand "FreeBSD") are the ones that need to be in the ports tree. I have assigned the categories you suggested: java/veditor - [1] java/phpeclipse - [1] java/eclipse-windowbuilder - [3] java/eclipse-webtools - [2] java/eclipse-datatools - [2] java/eclipse-gef - [2] java/eclipse-emf - [2] java/eclipse-viplugin - [2] devel/mercurialeclipse - [1] devel/scala-ide - [2] devel/subclipse - [2] devel/subversive - [1] java/commonclipse - [2] java/eclipse-EPIC - [1] java/eclipse-RDT - [2] java/eclipse-aptana - [2] java/eclipse-aptana-radrails - [2] java/eclipse-aptana2 - [2] java/eclipse-cdt - [3] java/eclipse-checkstyle - [2] java/eclipse-drjava - [1] java/eclipse-examples - [2] java/eclipse-findbugs - [1] java/eclipse-gef-examples - [2] java/eclipse-hibernatetools - [2] java/eclipse-jad - [2] java/eclipse-langpack - [2] java/eclipse-log4e - [1] java/eclipse-lomboz - [1] java/eclipse-ocl - [1] java/eclipse-pmd - [2] java/eclipse-propedit - [2] java/eclipse-pydev - [1] java/eclipse-quantum - [1] java/eclipse-shelled - [1] java/eclipse-sqlexplorer - [2] java/eclipse-sysdeo-tomcat - [2] java/eclipse-uml - [2] java/eclipse-vep - [2] java/eclipse-vep-examples - [2]
There are 25 [2] ports and 1 [3] ports that I will break/ignore momentarily, but ale@ and @nivit own some, and kami@ owns one. I'm adding them to the PR so they know what is going on.
A commit references this bug: Author: marino Date: Sat Mar 21 09:54:57 UTC 2015 New revision: 381787 URL: https://svnweb.freebsd.org/changeset/ports/381787 Log: eclipse plugins: Deprecate 25 for removal, ignore 1 to be updated Removal scheduled 4 weeks into the future on April 18. PR: 195985 Submitted by: Jimmy Kelley (eclipse maintainer) Reason: by-product of upcoming eclipse upgrade Changes: head/devel/scala-ide/Makefile head/devel/subclipse/Makefile head/java/commonclipse/Makefile head/java/eclipse-RDT/Makefile head/java/eclipse-aptana/Makefile head/java/eclipse-aptana-radrails/Makefile head/java/eclipse-aptana2/Makefile head/java/eclipse-cdt/Makefile head/java/eclipse-checkstyle/Makefile head/java/eclipse-datatools/Makefile head/java/eclipse-emf/Makefile head/java/eclipse-examples/Makefile head/java/eclipse-gef/Makefile head/java/eclipse-gef-examples/Makefile head/java/eclipse-hibernatetools/Makefile head/java/eclipse-jad/Makefile head/java/eclipse-langpack/Makefile head/java/eclipse-pmd/Makefile head/java/eclipse-propedit/Makefile head/java/eclipse-sqlexplorer/Makefile head/java/eclipse-sysdeo-tomcat/Makefile head/java/eclipse-uml/Makefile head/java/eclipse-vep/Makefile head/java/eclipse-vep-examples/Makefile head/java/eclipse-viplugin/Makefile head/java/eclipse-webtools/Makefile
I think the Makefile.plugins patch is wrong 1) I guess JAVA_VERSION should be 1.7+, not 1.7 2) the "@dir" line was removed and replaced with "@dirrm". That's incorrect. @dirrm is not used anymore.
since the changes to Makefile.plugins is just a revert of the last commit to the file, I'm going to assume that you created the diff using an old version of Makefile.plugin and didn't realize it had been changed.
A commit references this bug: Author: marino Date: Sat Mar 21 10:40:53 UTC 2015 New revision: 381788 URL: https://svnweb.freebsd.org/changeset/ports/381788 Log: java/eclipse: Upgrade version 4.3.2 => 4.4.2 Note that Eclipse now requires openJDK8 to build. PR: 195985 Submitted by: Jimmy Kelley (maintainer) Changes: head/java/eclipse/Makefile head/java/eclipse/Makefile.plugins head/java/eclipse/distinfo head/java/eclipse/files/patch-aggregator head/java/eclipse/files/patch-freebsd_natives head/java/eclipse/files/patch-submodules head/java/eclipse/scripts/pre-patch
Thanks!
java/eclipse-ocl and java/eclipse-quantum have to be deprecated too. They depend on eclipse-emf and eclipse-gef
A commit references this bug: Author: marino Date: Sat Mar 21 16:46:53 UTC 2015 New revision: 381798 URL: https://svnweb.freebsd.org/changeset/ports/381798 Log: java/eclipse-(ocl|quantum): Deprecate due to deprecated run dependencies PR: 195985 Changes: head/java/eclipse-ocl/Makefile head/java/eclipse-quantum/Makefile