Bug 1003188 - Review Request: eclipse-pdt - PHP Development Tools (PDT) Eclipse plugin
Review Request: eclipse-pdt - PHP Development Tools (PDT) Eclipse plugin
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Alexander Kurtakov
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-08-31 12:05 EDT by Mat Booth
Modified: 2014-07-07 21:02 EDT (History)
8 users (show)

See Also:
Fixed In Version: eclipse-pdt-3.3.0-3.fc20
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-07-07 21:02:44 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
akurtako: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)
Small PHP project that triggers the bug (67.94 KB, application/x-gzip)
2014-02-16 19:21 EST, Alex Villacís Lasso
no flags Details
Test results output (8.92 MB, application/xml)
2014-04-16 04:33 EDT, Julien Enselme
no flags Details

  None (edit)
Description Mat Booth 2013-08-31 12:05:02 EDT
Spec URL: http://fedorapeople.org/~mbooth/reviews/eclipse-pdt.spec
SRPM URL: http://fedorapeople.org/~mbooth/reviews/eclipse-pdt-3.2.0-1.fc19.src.rpm

Description:
The PHP IDE project delivers a PHP Integrated Development Environment
framework for the Eclipse platform. This project encompasses the development
components necessary to develop PHP-based Web Applications and facilitates
extensibility. It leverages the existing Web Tools Project in providing
developers with PHP capabilities.

Fedora Account System Username: mbooth
Comment 1 Mat Booth 2013-08-31 13:59:58 EDT
Scratch build in progress: https://koji.fedoraproject.org/koji/taskinfo?taskID=5877033
Comment 2 Mat Booth 2013-09-01 14:19:19 EDT
(In reply to Mat Booth from comment #1)
> Scratch build in progress:
> https://koji.fedoraproject.org/koji/taskinfo?taskID=5877033

That build hung on arm for some reason, here's one that actually completed:

https://koji.fedoraproject.org/koji/taskinfo?taskID=5877949
Comment 3 Alex Villacís Lasso 2013-12-05 13:01:24 EST
What is the status of this package?

According to #903830, the package eclipse-phpeclipse is obsolete. However, there is no replacement in the Fedora 19 repositories.
Comment 4 Mat Booth 2013-12-06 08:05:45 EST
Indeed. Once this package is reviewed, it will be the replacement for eclipse-phpeclipse.

Don't forget you can still perform a package review even if you are not yet a Fedora contributor -- it's a good way to demonstrate your understanding of RPM and the packaging guidelines :-)
Comment 5 Alexander Kurtakov 2014-01-16 04:24:41 EST
I would review this one.
Comment 6 Alex Villacís Lasso 2014-01-20 16:12:29 EST
I built the linked SRPM under Fedora 20 with latest updates as of 2014-01-20. When installing and trying to open a PHP file in a project, I get this backtrace:

java.lang.IllegalArgumentException: Overlapping start in StyleRange 2:1
	at org.eclipse.php.internal.ui.editor.configuration.PresentationCollector.add(PresentationCollector.java:35)
	at org.eclipse.php.internal.ui.editor.highlighter.LineStyleProviderForPhp.prepareTextRegions(LineStyleProviderForPhp.java:610)
	at org.eclipse.php.internal.ui.editor.highlighter.LineStyleProviderForPhp.prepareRegions(LineStyleProviderForPhp.java:466)
	at org.eclipse.php.internal.ui.editor.configuration.StructuredDocumentDamagerRepairer.createPresentation(StructuredDocumentDamagerRepairer.java:80)
	at org.eclipse.php.internal.ui.editor.configuration.PHPStructuredPresentationReconciler.createPresentation(PHPStructuredPresentationReconciler.java:352)
	at org.eclipse.wst.sse.ui.internal.provisional.style.StructuredPresentationReconciler.processDamage(StructuredPresentationReconciler.java:870)
	at org.eclipse.wst.sse.ui.internal.provisional.style.StructuredPresentationReconciler$InternalListener.inputDocumentChanged(StructuredPresentationReconciler.java:271)
	at org.eclipse.wst.sse.ui.internal.provisional.style.StructuredPresentationReconciler.install(StructuredPresentationReconciler.java:600)
	at org.eclipse.wst.sse.ui.internal.StructuredTextViewer.updateHighlighter(StructuredTextViewer.java:987)
	at org.eclipse.wst.sse.ui.internal.StructuredTextViewer.setDocument(StructuredTextViewer.java:865)
	at org.eclipse.php.internal.ui.editor.PHPStructuredTextViewer.setDocument(PHPStructuredTextViewer.java:645)
	at org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:590)
	at org.eclipse.ui.texteditor.AbstractTextEditor.initializeSourceViewer(AbstractTextEditor.java:4047)
	at org.eclipse.ui.texteditor.AbstractTextEditor.createPartControl(AbstractTextEditor.java:3575)
	at org.eclipse.ui.texteditor.StatusTextEditor.createPartControl(StatusTextEditor.java:54)
	at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.createPartControl(AbstractDecoratedTextEditor.java:447)
	at org.eclipse.wst.sse.ui.StructuredTextEditor.createPartControl(StructuredTextEditor.java:1516)
	at org.eclipse.php.internal.ui.editor.PHPStructuredEditor.createPartControl(PHPStructuredEditor.java:2265)
	at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPartControl(CompatibilityPart.java:142)
	at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPartControl(CompatibilityEditor.java:96)
	at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:323)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
	at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:877)
	at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:857)
	at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:119)
	at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:333)
	at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:254)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:162)
	at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:102)
	at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:71)
	at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:53)
	at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:129)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:949)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:633)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:706)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:700)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:685)
	at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.showTab(StackRenderer.java:1096)
	at org.eclipse.e4.ui.workbench.renderers.swt.LazyStackRenderer$1.handleEvent(LazyStackRenderer.java:66)
	at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:41)
	at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:180)
	at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4491)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:205)
	at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:38)
	at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
	at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
	at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
	at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:135)
	at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78)
	at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39)
	at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:80)
	at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:58)
	at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)
	at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:171)
	at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:576)
	at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:543)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:610)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:322)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1034)
	at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3112)
	at org.eclipse.ui.internal.WorkbenchPage.access$21(WorkbenchPage.java:3034)
	at org.eclipse.ui.internal.WorkbenchPage$8.run(WorkbenchPage.java:3016)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3012)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2976)
	at org.eclipse.ui.actions.OpenWithMenu.openEditor(OpenWithMenu.java:338)
	at org.eclipse.ui.actions.OpenWithMenu$2.handleEvent(OpenWithMenu.java:180)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3742)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3363)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:645)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:600)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1459)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1435)
Comment 7 Alexander Kurtakov 2014-01-21 23:28:47 EST
Alex, does it happen for every file? 
Even in new project with helloworld kind of file?
I'm trying to understand whether this is an upstream bug or packaging issue.

Mat, how did you decided on the git sha to download?
Comment 8 Alex Villacís Lasso 2014-01-22 10:15:59 EST
(In reply to Alexander Kurtakov from comment #7)
> Alex, does it happen for every file? 

The build process creates eclipse-pdt, eclipse-pdt-mylyn, eclipse-pdt-sdk, and eclipse-pdt-tests. I only installed eclipse-pdt for the tests.

I opened an existing project that used phpeclipse, the legacy plugin for PHP. All of the PHP files trigger the error. If neither phpeclipse nor pdt are installed, the same project uses the default text editor for PHP files (without syntax highlighting).

> Even in new project with helloworld kind of file?

Not tested. I have to test that.

> I'm trying to understand whether this is an upstream bug or packaging issue.
> 
> Mat, how did you decided on the git sha to download?
Comment 9 Mat Booth 2014-02-10 16:09:28 EST
Hmm, F20 wasn't released yet when I submitted this review. It seems to build, install and work fine on F19, but I will try on a F20 VM to see if I can reproduce your problem. Thanks for giving it a try :-)

Alexander Kurtakov: The Git SHA is what I could determine to be the SHA of the 3.2.0 release as unfortunately upstream has not tagged any recent releases.
Comment 10 Mat Booth 2014-02-10 18:55:14 EST
I have updated the package to a post-release snapshot version of what is currently the head of upstream's master branch. This version includes support for PHP 5.5 and proper Eclipse >= 4.3 support:

http://fedorapeople.org/~mbooth/reviews/eclipse-pdt.spec
http://fedorapeople.org/~mbooth/reviews/eclipse-pdt-3.2.0-2.git0be0c838.fc19.src.rpm

I have built and installed this on both F19 and F20 machines and I can start Eclipse and create a PHP project and open some PHP files, both trivial examples and some I got from some random PHP projects on Github. This seems to work for me, please Alex give this new SRPM a try.
Comment 11 Alex Villacís Lasso 2014-02-16 18:45:00 EST
I have built and installed the updated package. These are the results:

When creating a brand new project on a existing directory that has never before been used for an phpeclipse project, eclipse-pdt works correctly and can open the files.

When attempting to open a phpeclipse project with eclipse-pdt, the previously-reported backtrace appears.

Removing the phpeclipse project and re-creating it under the same directory does NOT remove the backtrace problem. This situation makes migration to eclipse-pdt very difficult.

All tests were done on Fedora 20 x86_64 with latest system updates.
Comment 12 Alex Villacís Lasso 2014-02-16 19:18:06 EST
The previous comment is partially incorrect.

I cleared out the .eclipse and workspace directories to simulate a clean setup. I then created a new eclipse-pdt project with an existing project, and it also triggered the backtrace. The only difference I can see is that the directory is versioned under CVS, and the other directory (that did not trigger the backtrace) is unversioned. However, I have seen the backtrace with SVN versioned projects too.
Comment 13 Alex Villacís Lasso 2014-02-16 19:21:18 EST
Created attachment 863902 [details]
Small PHP project that triggers the bug

PHP project directory that triggers the backtrace.
Comment 14 Mat Booth 2014-02-17 05:58:58 EST
Thanks for attaching a test-case Alex, I can reproduce your problem with that. It looks like a problem with PDT, nothing to do with PHPEclipse. I will look into it.
Comment 15 Nitin Dahyabhai 2014-03-03 10:03:55 EST
(In reply to Mat Booth from comment #9)
> Hmm, F20 wasn't released yet when I submitted this review. It seems to
> build, install and work fine on F19, but I will try on a F20 VM to see if I
> can reproduce your problem. Thanks for giving it a try :-)
> 
> Alexander Kurtakov: The Git SHA is what I could determine to be the SHA of
> the 3.2.0 release as unfortunately upstream has not tagged any recent
> releases.

Which releases are missing tags?
Comment 16 Mat Booth 2014-03-03 10:34:38 EST
(In reply to Nitin Dahyabhai from comment #15)
> 
> Which releases are missing tags?

Hi Nitin,

3.2.0 seems to be available for download from http://www.eclipse.org/pdt/downloads/ but I do not see a corresponding tag in git at http://git.eclipse.org/c/pdt/org.eclipse.pdt.git/refs/tags
Comment 17 Nitin Dahyabhai 2014-03-03 10:43:08 EST
Opened http://bugs.eclipse.org/429477 .
Comment 18 Mat Booth 2014-03-03 10:56:06 EST
Nice one, thanks.
Comment 19 Mat Booth 2014-03-11 04:52:45 EDT
Alex Villacís Lasso, it seems to be my patches at fault. I previously was not running the integration tests due to them requiring an X display. Now I have got them running I see that some parser tests fail when I apply the patches to make it use the system jflex/java_cup.
Comment 20 Mat Booth 2014-03-11 08:06:10 EDT
I have updated the SPEC file to run the integration tests. The problems seen by Alex Lasso above are now highlighted by test failures. I don't think this should block the review of the SPEC file, because the fix will only change the patches. Unfortunately patches are necessary due to rules on bundling libs, so I obviously won't push a build until all the tests pass.

If you want to force a local build of this SPEC to succeed, you can change "clean verify" to "clean package" in the call to mvn.

Spec URL: http://fedorapeople.org/~mbooth/reviews/eclipse-pdt.spec
SRPM URL: http://fedorapeople.org/~mbooth/reviews/eclipse-pdt-3.2.0-3.git0be0c838.fc20.src.rpm
Comment 21 relaxcold 2014-04-02 11:22:34 EDT
What is the status of this package and the tests ?
Comment 22 Julien Enselme 2014-04-16 04:33:53 EDT
Created attachment 886796 [details]
Test results output
Comment 23 Julien Enselme 2014-04-16 04:35:10 EDT
When I try to build this package with mock, some tests fail:

[ERROR]
[ERROR] Please refer to /builddir/build/BUILD/org.eclipse.pdt-0be0c8386e0e840af876f895a543205942c88f86/tests/org.eclipse.php.core.tests/target/surefire-reports for the individ\
ual test results.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :org.eclipse.php.core.tests   

View attachment for more infos.
Comment 24 Tim Flubshi 2014-06-03 14:29:57 EDT
I'm also interested in getting pdt in the official Fedora repos.
Whats the current status? Can I help?
Comment 25 Mat Booth 2014-06-16 06:05:38 EDT
Upstream have tagged a new release, I will update this package review shortly.
Comment 26 Mat Booth 2014-06-16 08:27:16 EDT
Changes:
 * Updated to latest upstream release
 * Pre-generate the lexer/parser source

Pre-generating the source with upstream's preferred version of jflex works around the incompatibilities between that jflex and the jflex packaged in fedora. All the previously failing tests now pass.

Spec URL: http://fedorapeople.org/~mbooth/reviews/eclipse-pdt.spec
SRPM URL: http://fedorapeople.org/~mbooth/reviews/eclipse-pdt-3.3.0-1.fc21.src.rpm

Here is a rawhide/F21 scratch build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=7047605

Alex Villacís Lasso, Julien Enselme, Tim Flubshi -- If possible please test the above build.
Comment 28 Julien Enselme 2014-06-22 08:53:55 EDT
With the new version all the tests pass and the plugin seems to work fine on my system.
Comment 29 Alex Villacís Lasso 2014-06-22 15:17:29 EDT
I have just tested the 3.3.0-2 version. All files with a .php extension are recognized correctly. However, my projects have lots of PHP files that do not have a .php extension, such as "reconfigure-foo". These files are meant to be run from the command line and have PHP as a script interpreter. These files are initially not associated with any specialized editor. If I force the use of the PHP editor with such a file, a popup appear that states that the content type is not supported by the editor, and should be manually associated. After this, the file is opened with the default text editor, with no syntax highlighting or anything.

This is the wrong behavior. If the user specified the PHP editor for the file, the plugin should just attempt to open the file with the PHP editor, no questions asked. This is the behavior of other language plugins in the system.
Comment 30 Mat Booth 2014-06-22 18:25:34 EDT
Thanks to you both for the feedback! :-)

Alex for your problem with extension-less files, a separate bug should be filed for this -- I believe fixing it would be out of scope of this package review.
Comment 31 Alexander Kurtakov 2014-06-24 06:52:16 EDT
Latest tycho in F20 is aware of eclipse-license, please verify and drop the lines dealing with it from the spec.
Comment 33 Alexander Kurtakov 2014-06-25 04:55:27 EDT
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed

===== MUST items =====

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
x ]: If (and only if) the source package includes the text of the license(s)
     in its own file, then that file, containing the text of the license(s)
     for the package is included in %doc.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "Unknown or generated". 2439 files have unknown license. Detailed output
     of licensecheck in /home/akurtakov/tmp/1003188-eclipse-
     pdt/licensecheck.txt
     Manually checked and licensecheck seems to count EPL as unknown license.
[x]: License file installed when any subpackage combination is installed.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[x]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Package is not known to require an ExcludeArch tag.
[-]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 40960 bytes in 4 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

Java:
[x]: Bundled jar/class files should be removed before build

Maven:
[-]: If package contains pom.xml files install it (including depmaps) even
     when building with ant
[x]: Old add_to_maven_depmap macro is not being used

===== SHOULD items =====

Generic:
[-]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in eclipse-
     pdt-tests
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise justified.
[x]: SourceX tarball generation or download is documented.
     Note: Package contains tarball without URL, check comments
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

Java:
[x]: Package uses upstream build method (ant/maven/etc.)
[x]: Packages are noarch unless they use JNI

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: eclipse-pdt-3.3.0-3.fc20.noarch.rpm
          eclipse-pdt-mylyn-3.3.0-3.fc20.noarch.rpm
          eclipse-pdt-sdk-3.3.0-3.fc20.noarch.rpm
          eclipse-pdt-tests-3.3.0-3.fc20.noarch.rpm
          eclipse-pdt-3.3.0-3.fc20.src.rpm
eclipse-pdt.noarch: W: spelling-error %description -l en_US extensibility -> sensibility, extensible
Fine by me.
eclipse-pdt.noarch: W: dangling-symlink /usr/share/eclipse/dropins/pdt/eclipse/plugins/java_cup.jar /usr/share/java/java_cup.jar
Proper symlink.
eclipse-pdt.src: W: spelling-error %description -l en_US extensibility -> sensibility, extensible
Fine by me.
eclipse-pdt.src: W: invalid-url Source1: code_gen.tar.gz
Thoroughly explained how generated and why thus fine by me.

5 packages and 0 specfiles checked; 0 errors, 4 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint eclipse-pdt-sdk eclipse-pdt-tests eclipse-pdt-mylyn eclipse-pdt
eclipse-pdt.noarch: W: spelling-error %description -l en_US extensibility -> sensibility, extensible
Not a problem.
eclipse-pdt.noarch: W: dangling-symlink /usr/share/eclipse/dropins/pdt/eclipse/plugins/java_cup.jar /usr/share/java/java_cup.jar
4 packages and 0 specfiles checked; 0 errors, 2 warnings.
Properly symlinked.


Source checksums
----------------
http://git.eclipse.org/c/pdt/org.eclipse.pdt.git/snapshot/org.eclipse.pdt-R3_3_0.tar.bz2 :
  CHECKSUM(SHA256) this package     : d163bdf69fee2c5f7367692fc18374fff4222ce31a3b00773b70360b9cb1cb97
  CHECKSUM(SHA256) upstream package : d163bdf69fee2c5f7367692fc18374fff4222ce31a3b00773b70360b9cb1cb97


APPROVED.
Comment 34 Mat Booth 2014-06-25 05:01:46 EDT
New Package SCM Request
=======================
Package Name: eclipse-pdt
Short Description: PHP Development Tools (PDT) Eclipse plugin
Upstream URL: http://www.eclipse.org/pdt/
Owners: mbooth
Branches: f20
InitialCC:
Comment 35 Gwyn Ciesla 2014-06-25 06:23:24 EDT
Git done (by process-git-requests).
Comment 36 Fedora Update System 2014-06-26 07:41:42 EDT
eclipse-pdt-3.3.0-3.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/eclipse-pdt-3.3.0-3.fc20
Comment 37 Fedora Update System 2014-06-26 22:22:33 EDT
eclipse-pdt-3.3.0-3.fc20 has been pushed to the Fedora 20 testing repository.
Comment 38 Fedora Update System 2014-07-07 21:02:44 EDT
eclipse-pdt-3.3.0-3.fc20 has been pushed to the Fedora 20 stable repository.

Note You need to log in before you can comment on or make changes to this bug.