Skip to content

OpenLibExtended v1.8.2

Latest

Choose a tag to compare

@warreth warreth released this 09 Nov 15:40
· 1 commit to main since this release

Windows: the challenge window no longer hangs or lingers

The desktop challenge solver opened a "Verifying access..." window for every DDoS-Guard/Cloudflare gate, even when the gate was a silent JavaScript check with nothing to click. If the page never rendered, the window sat there for the full three-minute timeout and stayed on screen after the search had already failed.

  • Silent JS challenges now run off-screen; the window only appears when the page has something a person can actually click (Turnstile, checkbox, button).
  • The window closes when the solve finishes, times out or fails.
  • A window that stays blank for 15 seconds, or shows the browser's own DNS/connection error page, is treated as a failed load instead of polling to the deadline.
  • A page that stays below the 1000-character threshold the callers need is no longer reported as "solved"; the solver gives up after 15 seconds instead of waiting out the clock.
  • Only one desktop challenge window can be open at a time; a second solve waits briefly, then gives up instead of destroying the first window.

Z-Library: DiamWall's 307 gate is handled

DiamWall now answers a 307 to the same URL with a __diamwall cookie, then either serves the page or blocks the request with a 517 "Access Denied" page. The app now replays the cookie like a browser (including relative redirect targets and solved proof-of-work retries) and reports a block instead of failing with a redirect loop.

Book details: no cover, no crash

Opening a libgen result without a cover could crash the book page with type 'Null' is not a subtype of type 'String'. The page now shows the placeholder cover instead.

Testing

Added Maestro end-to-end flows for onboarding, search, a real download that lands in My Library and opens in the reader, and the live mirror list for every service. All four pass on an x86_64 Android 28 emulator. The live provider tests now accept a network-level DiamWall block as a mirror-side condition rather than a parser failure.

Thanks @apoapostolov for the detailed report and log.

Full changelog: v1.8.1...v1.8.2