https://issues.apache.org/jira/browse/JCLOUDS-770 on this techdebt
area. I'll use the other branch of this thread to discuss
blobstore-relevant topics.

On Wed, Nov 5, 2014 at 12:05 PM, Adrian Cole <adrian.f.c...@gmail.com> wrote:
> Pps we can't change restannotationprocessor yet anyway because not only have
> we not moved off the deprecated approach of expect tests, we still have
> tests that use the even older restannotationprocessortest!
>
> Iotw, if anyone has time to offer and wanta to make it count, please migrate
> off deprecated test frameworks (or at least atop making new tests with
> them!) and onto MWS.
>
> Not only is this a better idea anyway, it reduces the backlog of work needed
> to even start fixing core.
>
> -A
>
> On Nov 5, 2014 11:17 AM, "Adrian Cole" <adrian.f.c...@gmail.com> wrote:
>>
>> PS one of my largest disappointments is that folks haven't helped with
>> things discussed for years on RestAnnotationProcessor. For example, we
>> had a plan to deprecate and remove the async interfaces that required
>> a lot of the complexity there. That started and then it literally
>> waited until I did all of the rest of the cleaning over a weekend.
>> When we really care about something, and want to make things better,
>> chipping in to complete rudimentary tasks is the best way to preserve
>> time for folks like me who can help address complex core issues.
>>
>> Relying on one person to not only improve core, but also address
>> deprecation cleanup of, in this case most async apis outside openstack
>> is a great way of ensuring success. There's plenty of other known
>> problem road fixes left as presents for me personally, such as moving
>> off Expect tests, which are horribly difficult to debug, and trip
>> builds etc.
>>
>> Long story short, (and this is addressed to devs, not Diwaker) put
>> skin in the game, vote with your pull requests, clear path for core
>> changes if you can't do them yourselves. This will facilitate the
>> ability to get changes we all want in.
>>
>> /me ends soap box
>>
>> On Wed, Nov 5, 2014 at 11:06 AM, Adrian Cole <adrian.f.c...@gmail.com>
>> wrote:
>> > Thanks for chiming in. some notes on notes below!
>> >
>> >> through jclouds. This conversion not only makes jclouds needlessly at
>> >> the whim of guava compatibility, but is also unnecessarily expensive.
>> >
>> > Perhaps, but are these the biggest pain points for users/devs? The
>> > Guava compatibility fiasco is admittedly frustrating, but hopefully
>> > rare going forward.
>> > Guava prevents blobstore (and jclouds) from being considered many
>> > android environments. Guava compatibility is not only a frustration,
>> > but a non-starter for folks who write frameworks. This thread is
>> > thoroughly discussed elsewhere. We don't need a guava dep for
>> > blobstore so can avoid this class of problems completely in the
>> > future. For example, once our views stop propagating guava, we can
>> > clean it from core. This is clearly not your biggest concern, but
>> > believe me, being the author of jclouds and not being able to use it
>> > in most recent companies has made me quite frustrated potential user.
>> >
>> > As for pain points, IMO there are other bigger and
>> > lower hanging fruit that may be worth tackling.
>> >
>> > Two concrete examples that are not blobstore specific:
>> >
>> > 1. URL encoding/decoding issues:
>> > https://issues.apache.org/jira/browse/JCLOUDS-217
>> > Agreed this isn't blobstore specific and more a favorite bug.
>> >
>> > 2. RestAnnotationProcessor magic: there are two sub-issues here
>> > actually. First is the performance overhead of all the reflection that
>> > happens to make this work. I've not measured it, but we have run into
>> > cases in the past where reflection added non-trivial overhead (e.g.
>> > https://issues.apache.org/jira/browse/JCLOUDS-301). The second (and
>> > perhaps bigger) issue is that the code base is really hard to
>> > penetrate for new developers. At work, every new jclouds contributor
>> > has had a long ramp up and faced a steep learning curve just to figure
>> > out how things work before being able to make productive changes.
>> > And yet no-one has helped to fix this. We are amazingly capable of
>> > complaining for years, right? I already solved this in netflix feign
>> > and can obviously solve this here. Not blobstore related, but
>> > certainly and provably solvable.
>> >
>> >> In summary, I would like to fork BlobStore so that it can progress in
>> >
>> > Can you elaborate a bit more on the plans for existing blobstore and
>> > impact (if any) on existing consumers? IIUC, the proposal is to leave
>> > the current blobstore as is and develop the fork in parallel? Will
>> > there be a switch when compatibility is reached or will users always
>> > have the choice of using the legacy API? Preferably the latter, but
>> > that would double the effort for bug fixes and feature additions (e.g.
>> > implementing S3 V4 signatures). The former will require consumers to
>> > change their applications and runs the risk of introducing
>> > regressions. So neither option seems safe.
>> > Some methods as mention should have been dropped years ago. We can
>> > deprecate them now. We can also make a janky bridge once the new apis
>> > are in. Most projects evolve more than once every 5 years. we can do
>> > better, right? Even if it took us a year, it adds hope.
>> >
>> >> If anyone is interested in helping on this, let me know. I'll open a
>> >> jira in a bit.
>> >
>> > Definitely interested! What's the JIRA for this?
>> > Not created yet, but will do once I finish cleaning up other things :)
>> > Thanks for the interest!

Reply via email to