[ 
https://issues.apache.org/jira/browse/HTTPCORE-184?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12673030#action_12673030
 ] 

Chris Hubick commented on HTTPCORE-184:
---------------------------------------

I talked on IRC with Deepak Bhole who does Maven and packaging work for RedHat 
about this, and he says most projects don't include the parent pom file in 
their source dists, and that this does make life harder for packagers who then 
have to manually grab this stuff from SVN or the Maven repo when creating the 
package. He does agree that having it all in the source distribution "will help 
us though, and if they don't mind doing it that way, I'm all for it!".

So, I think the feature would be for the 'core' and 'client' module source 
distributions to each also contain the parent 'project' folder.  I see two ways 
to do this:
1) Just add the additional 'project' folder at the root, ie, 
httpcomponents-core-4.0-beta3-src.tar.gz currently contains a single 
"/httpcomponents-core-4.0-beta3/" folder in the root, it could then also 
contain a second "/project/" folder.
2) Modify the source dist to parallel SVN, with an extra layer of depth at the 
root, ie httpcomponents-core-4.0-beta3-src.tar.gz would then contain 
"/httpcomponents-core-4.0-beta3/httpcore/" and 
"/httpcomponents-core-4.0-beta3/project/".

I don't know how you generate your source distributions (Maven 'assembly' 
plugin?), or how hard that would be for you to do this.

It seems likely that my expectations in filing this were perhaps too high (this 
is my first attempt to package a modularized Maven project), and I think I 
should just deal with it as-is :)  So, maybe change this from a 'Bug' to a 
'Feature Request', or just outright close it if it's too hard?


> Source bundle needs unincluded parent project to build
> ------------------------------------------------------
>
>                 Key: HTTPCORE-184
>                 URL: https://issues.apache.org/jira/browse/HTTPCORE-184
>             Project: HttpComponents HttpCore
>          Issue Type: Bug
>          Components: HttpCore
>    Affects Versions: 4.0-beta3
>            Reporter: Chris Hubick
>             Fix For: 4.0
>
>
> I could be missing something, but it appears the httpcore (and httpclient) 
> source bundle build depends on a parent Maven project which isn't included in 
> the bundle.
> Given a Maven install with the required plugins, it should be possible to 
> build binaries from the source distribution in an offline situation, entirely 
> using files found in the source bundle.
> I am trying to write RPM packages for httpcore and httpclient.  This is done 
> by creating a spec file which, given to the rpmbuild tool with the source 
> bundle, will build it in a temp directory and generate (S)RPM packages 
> containing the source and binaries.  These packages are designed to be self 
> contained - that is, besides the declared project dependencies, they should 
> contain all the files needed to rebuild the generated source package into the 
> binary package.  The httpcore maven pom references the parent project using a 
> path to the parent directory, which would be outside the distributed source 
> package, and thus outside the temp directory used by rpmbuild.  This is 
> problematic.
> I was going to work around this situation by ignoring the default distributed 
> source bundles for httpcore/httpclient, and just create my own bundle of the 
> whole parent and child project source directly out of svn, and having a 
> single spec file to build the whole thing, with sub-packages for each of 
> core/client - this would have the RPM's nicely parallel the Maven structure.  
> The problem here is that core and client exist in separate svn folders, and 
> as near as I can tell, you don't actually branch/tag the parent project info. 
>  This is problematic.
> I don't quite know what to suggest here.  The simplest solution would perhaps 
> be to have the httpcore bundle include the parent project folder and pom, 
> with core as a subdir of that - meaning the core dist actually includes the 
> core and the parent.  But that would mean you have files in that bundle which 
> can't be recreated from SVN tags.  You could add branches/tags/trunk under 
> the parent project dir in SVN to fix that though.  Or something?
> Thanks for your consideration.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to