unirest-java v3.12.0 Release Notes

    • ⬆️ Bump GSON to 2.8.8
    • 👌 Support honoring Retry-After headers on 429/529 for regular (not async) requests.
      • This feature will likely not make it to async until Unirest 4.
      • Can be enabled with Unirest.config().retryAfter(true);
      • Has a max re-try counter with a default of 10 which can be set with:
      • Unirest.config().retryAfter(true, maxNumberOfRetries);
      • 🔥 While Honoring The Retry-After header the thread will be blocked! 🔥
      • It is highly recommend that this feature be used in conjunction with a circuit-breaking framework.
      • Let's say you have a web app that is making Unirest calls to downstream system X. You have many requests invoking this same service. If X starts to return 429's and Unirest is waiting on ALL of those requests. Unirest will quickly consume all your threads. At this time Unirest has no circuit-breaker of it's own to detect that this is happening. It will simply be happy to pause all of your threads forever.