Oleg, I'm quite sorry that Android included an unreleased rev of Apache HTTP client, and I suspect we'll be paying for that mistake for quite a while.
Because of the strict compatibility requirements of our platform, we will be unable to make forwards-incompatible API changes to the HTTP code. Unlike your desktop and serverside users, including the API as a part of the core platform significantly reduces our ability to make API changes. These days we aren't spending much time on the HTTP client code. Our users seem to be mostly satisfied with the ancient version in the SDK, and have been directing their complaints elsewhere (crypto, locales, XML...). That said, we do want to figure out a long term strategy for an HTTP client API that will work for both us and the Apache HTTP client team. We're considering a variety of options... - Discouraging our users from using the built-in Apache HTTP client, preferring the JDK's own URLConnection classes. Whether this is feasible depends mostly on whether the new APIs in Java 6 (which we're working on) will satisfy the use cases that Apache HTTP client has covered for years. - Replacing the Apache HTTP client API with a 3rd API in a "com.google" or "android." package. Such an API would likely be based on parts of your own code, but with a more limited API. - Tidying up the version of Apache HTTP that we're already stuck with. This includes deprecating APIs that shouldn't have ever been exposed as public, and possibly filling in any gaps using newer code from your project. But none of this work is particularly urgent since we're actively fighting fires in other areas of the core libraries. Cheers, Jesse On Tue, Mar 16, 2010 at 2:45 AM, Oleg Kalnichevski <[email protected]> wrote: > Hi Jesse > > As far as I know Android still ships with a very old, pre-BETA version > of HttpClient 4.0. There have been numerous changes in the HttpClient > main code line, which, sadly, have not been picked up by Android. My > main concern is that the more two code lines stay out of sync, the more > they deviate from one another the more difficult it may become for you > to rebase your code line to the latest snapshot upstream. > > We have also been deprecating code in HttpClient. At some point of time > I would like to start removing old code that has been deprecated for a > couple of GA releases. Since you have been skipping releases it will be > impossible to remove deprecated code without breaking API compatibility > with the version of HttpClient shipped with Android. > > Could you please share with us your plans regarding HttpClient and let > us know whether you intend to upgrade to the latest 4.0.x release at > some point? > > Cheers > > Oleg > >
