[ 
https://issues.apache.org/jira/browse/SOLR-11780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16300412#comment-16300412
 ] 

Shawn Heisey commented on SOLR-11780:
-------------------------------------

After some initial work trying to get this done and finding that I didn't like 
what I was ending up with, I've come up with a general plan.  It's a fairly 
ambitious undertaking that will require a LOT of extreme care to make sure that 
a user's existing codebase can utilize a new SolrJ without any code changes, 
and in the case of a minor version upgrade, without recompiling.

I am planning to begin a package alteration where I copy all the classes 
currently in org.apache.solr.client.solrj up one level, eliminating the "solrj" 
part of the package for the new classes, and deprecating everything in the 
original package.  Anything in the old package that utilizes HttpClient 4.x 
will not become a descendant of the same class in the new package, so it can 
continue using the old HC and be present for existing SolrJ programs.  If an 
old class doesn't use HttpClient, then it can become a descendant of the new 
class.

This plan is likely to increase the size of the solrj jar by a decent 
percentage until the next major release.

Removal of deprecated code in master will just be a matter of completely 
eliminating the old package.

I am thinking that for the classes in src/test, I will just move them to the 
new package, I won't worry about keeping the old classes around.  This could 
affect user code that includes tests, but if things have been separated well 
enough, shouldn't affect runtime operation.  Tests will need to be updated to 
HC 5.0 along with the new implementations.


> Upgrade httpclient to 5.0
> -------------------------
>
>                 Key: SOLR-11780
>                 URL: https://issues.apache.org/jira/browse/SOLR-11780
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: clients - java
>    Affects Versions: 7.1
>            Reporter: Shawn Heisey
>
> The httpcomponents project is working on the 5.0 release.  There is an alpha 
> version of httpclient and a beta version of httpcore.  The httpmime 
> dependency that Solr currently uses has been folded into the main httpclient.
> I've enlisted the help of [~olegk] from httpcomponents and we'll be using 
> github to coordinate.
> This work will not be committed officially until the 5.0 version of 
> httpclient is actually released.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to