Bug 551587

Summary: Review Request: java-gnome - Java GNOME bindings
Product: [Fedora] Fedora Reporter: Alexander Boström <abo>
Component: Package ReviewAssignee: Mat Booth <mat.booth>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: cagney, fedora-package-review, mcepl, mcepl, notting, otto_rey, walters
Target Milestone: ---Flags: mat.booth: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: java-gnome-4.0.15-3.fc13 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-05-13 19:23:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Alexander Boström 2009-12-31 13:16:40 UTC
Spec URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome.spec
SRPM URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome-4.0.14-1.fc12.src.rpm
Description:

%description
These are the Java bindings for GTK and GNOME! Featuring a robust 
engineering design, completely generated internals, a lovingly 
crafted layer presenting the public API, and steadily increasing 
coverage of the underlying libraries.

You can use java-gnome to develop sophisticated user interfaces 
for Linux applications so that they richly integrate with the 
GNOME Desktop while leveraging the power of the Java language 
and your expertise with it.

Comment 1 Alexander Boström 2009-12-31 13:23:36 UTC
I'm trying to take over from where bug 438452 stalled.

$ rpmlint java-gnome-4.0.14-1.fc12.src.rpm java-gnome-4.0.14-1.fc12.x86_64.rpm java-gnome-debuginfo-4.0.14-1.fc12.x86_64.rpm java-gnome-javadoc-4.0.14-1.fc12.x86_64.rpm java-gnome.spec
4 packages and 1 specfiles checked; 0 errors, 0 warnings.

I've asked on fedora-legal-list about how to handle the exception in the license. I've also asked upstream to include a COPYING file.

Comment 2 Alexander Boström 2009-12-31 13:24:27 UTC
Quoting https://bugzilla.redhat.com/show_bug.cgi?id=438452#c14 here:

> I'm also not sure whether to care that the gcc invocations don't use
> $RPM_OPT_FLAGS and that make doesn't use %{?_smp_mflags}.

I think optflags are used properly now.

> [-] If the project name and the commonly used JAR filename differ, a symbolic
> link with the usual name must also be provided.
> 
>     If I understand this guideline correctly, the jar file generated by
>     this package should be called java-gnome.jar, with gtk.jar as a
>     symbolic link.

It now installs java-gnome-4.0.14.jar and a bunch of symlinks.

> [?] Since this package builds with OpenJDK, I'm not sure about the status
> of the GCJ guidelines. Probably not applicable ...

java-gnome upstream has stopped supporting gcj.

> [-] There are conflicting guidelines about JNI -- on the one hand, it says
> that 

They're still confusing, but I'm following the definitions under "Guideline" and ignoring what's under "Rationale".

Quoting https://bugzilla.redhat.com/show_bug.cgi?id=438452#c15 here:

> Calling any of the jars delivered by this rpm as java-gnome.jar would make
> little sense and confuse people.  

Yeah, I'm also hesitant about inventing a name java-gnome.jar that upstream doesn't use, but I'm doing just that now anyway.

Comment 3 Alexander Boström 2010-01-01 19:36:37 UTC
* Properly mention the Classpath exception in the license.
* Fixed "no prebuilt binary" check which didn't actually do anything.

Spec URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome.spec
SRPM URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome-4.0.14-2.fc12.src.rpm

$ rpmlint java-gnome-4.0.14-2.fc12.src.rpm java-gnome-4.0.14-2.fc12.x86_64.rpm java-gnome-debuginfo-4.0.14-2.fc12.x86_64.rpm java-gnome-javadoc-4.0.14-2.fc12.x86_64.rpm java-gnome.spec
4 packages and 1 specfiles checked; 0 errors, 0 warnings.

Comment 4 Alexander Boström 2010-01-02 14:45:00 UTC
* Simplify the .jar symlink mess.

Spec URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome.spec
SRPM URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome-4.0.14-3.fc12.src.rpm

$ rpmlint java-gnome.spec java-gnome-4.0.14-3.fc12.src.rpm java-gnome-4.0.14-3.fc12.x86_64.rpm java-gnome-debuginfo-4.0.14-3.fc12.x86_64.rpm java-gnome-javadoc-4.0.14-3.fc12.x86_64.rpm
4 packages and 1 specfiles checked; 0 errors, 0 warnings.

Comment 5 Mat Booth 2010-03-15 15:11:24 UTC
Hi Alexander,

Are you still interested in getting this package reviewed? The URLs in your last comment are not working for me.

Comment 6 Alexander Boström 2010-03-16 10:36:25 UTC
Yeah, I'm still interested! The links should work now, but I'll update it to 4.0.15 in a bit.

Comment 7 Mat Booth 2010-03-16 11:04:54 UTC
Cool, do you still need sponsorship?

If so, can you point me to any other review requests that you've had a stab at reviewing?

(It's important to demonstrate an understanding of both the packaging guidelines and the package review process.)

Comment 8 Alexander Boström 2010-03-19 11:30:36 UTC
- upgrade to 4.0.15
- remove jar symlink that's not actually required

Spec URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome.spec
SRPM URL: http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome-4.0.15-1.fc14.src.rpm

$ rpmlint java-gnome-4.0.15-1.fc14.src.rpm java-gnome-4.0.15-1.fc14.x86_64.rpm java-gnome-debuginfo-4.0.15-1.fc14.x86_64.rpm java-gnome-javadoc-4.0.15-1.fc14.x86_64.rpm java-gnome.spec
4 packages and 1 specfiles checked; 0 errors, 0 warnings.

Comment 9 Alexander Boström 2010-03-19 12:29:57 UTC
(In reply to comment #7)
> Cool, do you still need sponsorship?
> 
> If so, can you point me to any other review requests that you've had a stab at
> reviewing?

Yup, I'm not sponsored yet. I've poked at a few reviews, I'll make a list but I don't have one at the moment. I also have a couple of other packages planned.

Comment 10 Alexander Boström 2010-03-19 15:43:50 UTC
(In reply to comment #9)

> I'll make a list

https://fedoraproject.org/wiki/User:Abo/ReviewActivity

Comment 11 Mat Booth 2010-03-19 15:52:43 UTC
I've started the process to become a sponsor of new contributors. Hopefully we will be able to move this forward soon.

Thanks for putting the work in, Alexander. And thanks for your patience. :-)

Comment 12 Mat Booth 2010-03-25 23:28:43 UTC
Hi again,

When I build this on my machine I get lots of "Failed to parse" errors when it's generating the bindings. What do you make of this?

-------------------------

JAVA	BindingsGenerator
/usr/bin/java -client -ea -Djava.awt.headless=true -classpath tmp/generator/ BindingsGenerator
Failed to parse
GtkEntryIconPosition.defs, In GtkEntryIconPosition.defs, line 10:
 
Parser failed to find a proper define line
[continuing next block]

Failed to parse
PangoItem.defs, In PangoItem.defs, line 9:
    '("PangoEngineShape*" "analysis.shape_engine")
Couldn't match characteristics line
[continuing next block]

Comment 13 Alexander Boström 2010-04-01 20:00:05 UTC
(In reply to comment #12)

> When I build this on my machine I get lots of "Failed to parse" errors when
> it's generating the bindings. What do you make of this?

Yeah, that worried me too, but according to upstream it's nothing to worry about.

http://thread.gmane.org/gmane.comp.gnome.bindings.java.devel/1459/focus=1460

Comment 14 Mat Booth 2010-04-11 13:08:07 UTC
Ok, if upstream are not worried about it, then I'm not worried about it. :-)

As for a more formal review, the package in general is very good. Rpmlint is clean and the package works (I tried the libnotify example). Thanks for noting in the SPEC why parallel make is not used and including a bugzilla link for the patch. The only *must* guideline that is not followed is this one:

* On the Java guidelines page, it states that if the project name (java-gnome) and the common jar name (gtk) differ, then symlinks must be provided to provide jars with both names. http://fedoraproject.org/wiki/Packaging:Java#Jar_file_naming

Other nit-picks:

* The javadoc sub-package could (should?) be noarch.
* It's usual to include an unversioned symlink to the Javadocs so that bookmarks continue to work after updates, etc.

Comment 15 Mat Booth 2010-04-14 14:50:48 UTC
I am able to sponsor you now, BTW, so removing FE-NEEDSPONSOR. :-)

Comment 16 Alexander Boström 2010-04-18 18:46:03 UTC
(In reply to comment #14)
> Ok, if upstream are not worried about it, then I'm not worried about it. :-)
> 
> As for a more formal review, the package in general is very good. Rpmlint is
> clean and the package works (I tried the libnotify example). Thanks for noting
> in the SPEC why parallel make is not used and including a bugzilla link for the
> patch.

Thanks!

> The only *must* guideline that is not followed is this one:
> 
> * On the Java guidelines page, it states that if the project name (java-gnome)
> and the common jar name (gtk) differ, then symlinks must be provided to provide
> jars with both names.
> http://fedoraproject.org/wiki/Packaging:Java#Jar_file_naming

Yeah, earlier revisions of the package did have that symlink, but I removed it because I thought it was reasonable to assume that that section is meant to apply to the native JARs that go in /usr/share/java, not to JNI JARs which have their own section in the guidelines. Now I find I can't really argue convincingly for that interpretation so I'll put the symlink back.

A while back I requested the packaging committee to consider these updated guidelines:
http://fedoraproject.org/wiki/User:Abo/JavaPackagingDraftUpdate
Hopefully those will eventually clarify matters.

> * The javadoc sub-package could (should?) be noarch.

Good call. I added this to the package and to my draft guidelines.

> * It's usual to include an unversioned symlink to the Javadocs so that
> bookmarks continue to work after updates, etc.    

Sounds like a good idea. Either that or just an unversioned directory. Fixed too.

(In reply to comment #15)
> I am able to sponsor you now, BTW, so removing FE-NEEDSPONSOR. :-)

Awesome!


Spec URL:
http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome.spec
SRPM URL:
http://www.root.snowtree.se/abo/fedora/reviews/java-gnome/java-gnome-4.0.15-3.fc13.src.rpm

rpmlint:
4 packages and 1 specfiles checked; 0 errors, 0 warnings.

Comment 17 Mat Booth 2010-04-19 10:20:15 UTC
Cool, this package looks ship-shape now.

APPROVED


I will add you to the packagers group in the Fedora Account System (FAS), which will give you commit rights for the packages you own. Once you receive confirmation that you been added to the packagers group, please follow the CVS admin procedure [1] to get a module set up in CVS for this package.

One thing that sometimes catches people out is that your Bugzilla email address *must* be the same as your FAS email address, so please check this is the case otherwise your packager rights will not be reflected in Bugzilla.



[1] http://fedoraproject.org/wiki/PackageMaintainers/CVSAdminProcedure

Comment 18 Alexander Boström 2010-04-19 20:00:30 UTC
New Package CVS Request
=======================
Package Name: java-gnome
Short Description: Java GNOME bindings
Owners: abo
Branches: F-12 F-13
InitialCC:

Comment 19 Kevin Fenzi 2010-04-21 03:59:29 UTC
CVS done (by process-cvs-requests.py).

Comment 20 Fedora Update System 2010-04-25 16:23:05 UTC
java-gnome-4.0.15-3.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/java-gnome-4.0.15-3.fc12

Comment 21 Fedora Update System 2010-04-25 16:23:13 UTC
java-gnome-4.0.15-3.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/java-gnome-4.0.15-3.fc13

Comment 22 Fedora Update System 2010-04-27 02:17:11 UTC
java-gnome-4.0.15-3.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update java-gnome'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/java-gnome-4.0.15-3.fc13

Comment 23 Fedora Update System 2010-04-27 02:25:15 UTC
java-gnome-4.0.15-3.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update java-gnome'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/java-gnome-4.0.15-3.fc12

Comment 24 Mat Booth 2010-05-11 20:34:39 UTC
*** Bug 438452 has been marked as a duplicate of this bug. ***

Comment 25 Fedora Update System 2010-05-13 19:23:27 UTC
java-gnome-4.0.15-3.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 26 Fedora Update System 2010-05-13 19:28:38 UTC
java-gnome-4.0.15-3.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.