Bug 911559 - jline2: Does not follow guidelines for compatibility packages
Summary: jline2: Does not follow guidelines for compatibility packages
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: jline2
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Mikolaj Izdebski
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 914544
TreeView+ depends on / blocked
 
Reported: 2013-02-15 11:06 UTC by Mikolaj Izdebski
Modified: 2013-02-28 08:58 UTC (History)
3 users (show)

Fixed In Version: 2.10-4
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-02-28 08:58:29 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Proposed patch (2.41 KB, patch)
2013-02-28 08:29 UTC, Mikolaj Izdebski
no flags Details | Diff
Proposed patch (1.85 KB, patch)
2013-02-28 08:40 UTC, Mikolaj Izdebski
no flags Details | Diff

Description Mikolaj Izdebski 2013-02-15 11:06:59 UTC
Description of problem:
jline2 doesn't follow Java packaging guidelines for compatibility packages. According to the guidelines all compatibility packages must have *versioned* JAR and POM files and they *must not* install unversioned versions. Additionally they should not provide depmaps.

If jline2 should be considered as main package and jline as compatibility package then jline has to be renamed to jline1 and jline2 to jline.

This is an important bug as it causes some FTBFS.

Version-Release number of selected component (if applicable):
2.10-2

Additional info:
See Java packaging guidelines [1].

[1] http://fedoraproject.org/wiki/Packaging:Java#Compatibility_packages

Comment 1 Jon VanAlten 2013-02-28 07:14:52 UTC
(In reply to comment #0)
> Description of problem:
> jline2 doesn't follow Java packaging guidelines for compatibility packages.
> According to the guidelines all compatibility packages must have *versioned*
> JAR and POM files and they *must not* install unversioned versions.
> Additionally they should not provide depmaps.
> 
> If jline2 should be considered as main package and jline as compatibility
> package then jline has to be renamed to jline1 and jline2 to jline.
> 
> This is an important bug as it causes some FTBFS.
> 
> Version-Release number of selected component (if applicable):
> 2.10-2
> 
> Additional info:
> See Java packaging guidelines [1].
> 
> [1] http://fedoraproject.org/wiki/Packaging:Java#Compatibility_packages


I believe I have example of ftbfs from this in bz#914544.  The logs for that have been cleaned up, but I can summarize.  Despite having correct (I believe) BR in spec and dependencies in maven build, I see things like:

error: package jline.console does not exist

and

error: cannot find symbol
[ERROR] symbol:   class ConsoleReader

at the point where the build fails (while upstream build using non-fedora jline2 dependency has no problems).

Mikolaj, is there some workaround with xmvn I can use for thermostat package in the meantime?  I would like to update that to newer upstream release.

Comment 2 Mikolaj Izdebski 2013-02-28 07:24:57 UTC
(In reply to comment #1)
> Mikolaj, is there some workaround with xmvn I can use for thermostat package
> in the meantime?  I would like to update that to newer upstream release.

There is a workaround, but this bug causes FTBFS in other packages too. I would rather fix the real cause in one package than introducing workarounds in multiple packages. The fix is quite simple and should be ready before the end of the week.

Marek, what's the status on this bug? Do you mind if I fix this bug as a provenpackager?

Comment 3 Jon VanAlten 2013-02-28 07:44:29 UTC
(In reply to comment #2)
> (In reply to comment #1)
> > Mikolaj, is there some workaround with xmvn I can use for thermostat package
> > in the meantime?  I would like to update that to newer upstream release.
> 
> There is a workaround, but this bug causes FTBFS in other packages too. I
> would rather fix the real cause in one package than introducing workarounds
> in multiple packages. The fix is quite simple and should be ready before the
> end of the week.
> 

Even better.  I will be patient :)

Comment 4 Mikolaj Izdebski 2013-02-28 08:29:27 UTC
Created attachment 703840 [details]
Proposed patch

Comment 5 Mikolaj Izdebski 2013-02-28 08:40:23 UTC
Created attachment 703843 [details]
Proposed patch

Comment 6 Mikolaj Izdebski 2013-02-28 08:41:34 UTC
With this patch applies jline is correctly resolved by default, while jline2 is resolved when a specific version is requested.

$ xmvn-resolve jline:jline
/usr/share/maven-poms/JPP-jline.pom

$ xmvn-resolve jline:jline:2.10
/usr/share/maven-poms/JPP-jline2-2.10.pom

I believe the attached patch resolved the bug.

Comment 7 Marek Goldmann 2013-02-28 08:46:27 UTC
Mikołaj, please go ahead and apply your patch. Thanks!

Comment 8 Mikolaj Izdebski 2013-02-28 08:47:51 UTC
Fixed in jline2-2.10-4

Comment 9 Mikolaj Izdebski 2013-02-28 08:58:29 UTC
I believe that this bug is fixed in jline2-2.10-4,
which is available in Fedora Rawhide, so I am closing this bug now.

The build containing the fix can be found at Koji:
http://koji.fedoraproject.org/koji/buildinfo?buildID=398865


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