Giter Site home page Giter Site logo

Publish to bintray about volley HOT 14 CLOSED

google avatar google commented on August 29, 2024 2
Publish to bintray

from volley.

Comments (14)

ncruces avatar ncruces commented on August 29, 2024 7

Volley is the recommended by Google way of doing HTTP requests on Android.

Latest release was years ago, and there are abhorrent bugs lurking. Some have supposedly since been fixed in master (who knows which?), but you've now gone for an additional 7 months with zero releases.

This situation is untenable. Volley is not a done thing you can make one release of every three years and then let rot. Either get on with it, or abandon it and leave it to the community to do your work for you. Don't promote stuff you don't intend to offer decent support for.

Sick of waiting. Have better things to do than track a NegativeArraySizeException on an HTTP client library that stays unfixed for 3 years.

from volley.

j-t-h avatar j-t-h commented on August 29, 2024

Any update to when we might see an updated version of Volley published with the changes from the last few months?

from volley.

jpd236 avatar jpd236 commented on August 29, 2024

Sorry for the delay. I'm not sure about a proper numeric release - I think it might be good to get a few more of the open bugs fixed before we do this - but I'm looking now into getting snapshot builds running for anyone interested in picking up fixes prior to release.

from volley.

ncruces avatar ncruces commented on August 29, 2024

Any news on this?

from volley.

joebowbeer avatar joebowbeer commented on August 29, 2024

@j-t-h I believe that another common occurrence of NegativeArraySizeException (NASE) has yet to be fixed. readHeader is also called from initialize(), but NASE is not caught there. The exception caught in get() will be thrown iff the entry is accessed after it has been written but before the cache has been re-initialized, while the exception in initialize() will be thrown if the entry was not accessed before the cache was re-initialized (and will be thrown every time the cache is initialized thereafter). In both call sites, a bad length field is even more likely to cause an OutOfMemoryError (OOME), which is not caught. See Issue #12. Please update #12 if you have more details. I intend to update my pull request soon.

from volley.

joebowbeer avatar joebowbeer commented on August 29, 2024

@j-t-h Update: In the process of adding more tests to DiskBasedCacheTest, I observe that the NegativeArraySizeException (NASE) handling in the get() method is not actually removing the entry! I believe this is because the finally handler is closing the file input stream after an attempt is made to delete the underlying file. If the failure in get() does not actually remove the file, a subsequent initialize() should also fail, and crash the app: because there is no handler for NASE in initialize(). So it appears that neither NASE and OutOfMemoryError (OOME), the more prevalent related problem due to bad lengths, are effectively handled.

from volley.

jpd236 avatar jpd236 commented on August 29, 2024

We should use the specific issues like #12 to track particular bugs - this bug is really just tracking getting a process going where we publish new releases as noted above.

And on that note - we now have snapshots up and running for every commit merged into Volley's master branch. The URL is here:

https://oss.jfrog.org/artifactory/oss-snapshot-local/com/android/volley/volley/

so I believe you can add:

maven { url 'https://oss.jfrog.org/artifactory/oss-snapshot-local/' }

to your repositories {} section in a build.gradle file (or the equivalent for whatever other build system you're using) and set your volley dependency to com.android.volley:volley:1.0.1-SNAPSHOT to use the latest snapshot. This will allow you to pick up bug fixes prior to their official release as long as you're willing to use the bleeding edge of Volley.

Closing this out. We plan to promote one of these snapshots to a proper 1.0.1 release once more issues have been resolved as noted above.

from volley.

fractalbob avatar fractalbob commented on August 29, 2024

The workaround suggested earlier, using the 1.0.1 snapshot, did nothing for me; I'm still running out of memory.

from volley.

jpd236 avatar jpd236 commented on August 29, 2024

This fix is in the finalized 1.1.0 release. If you're still encountering issues with that, please file a new bug with more information about where the crash occurs, what your app is doing, what devices / platform versions you see it on, and ideally some sample code to reproduce the issue. I'm not aware of any outstanding open issues in this area.

from volley.

fractalbob avatar fractalbob commented on August 29, 2024

from volley.

jpd236 avatar jpd236 commented on August 29, 2024

Sorry for not being clear - it's already out :) We've been announcing releases in our Google Group (https://groups.google.com/d/topic/volley-users/9Qg4LStDC-U/discussion) and they're also posted to GitHub and Bintray.

That being said, it's identical to the most recent 1.0.1 snapshots, so I wouldn't expect it to work differently for you if those weren't working (assuming you tested recently). But good to confirm + get a new stack trace so we can look further into it. Thank you!

from volley.

fractalbob avatar fractalbob commented on August 29, 2024

from volley.

androidb88 avatar androidb88 commented on August 29, 2024

Do you know when these recent updates will be included in a build published to jCenter/bintray?

Currently is the only way to get the "NegativeArraySizeException" update is to pull down the entire project and include/build locally?

I would rather use the gradle file for including the dependency.

dependencies {
...
compile 'com.android.volley:volley:1.0.0'
}

from volley.

jpd236 avatar jpd236 commented on August 29, 2024

https://bintray.com/android/android-utils/com.android.volley.volley/1.1.1 has been out since 2018. If that's not new enough, there are also Snapshot builds for each commit to master available at oss.jfrog.org.

from volley.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.