-
Notifications
You must be signed in to change notification settings - Fork 3
Comparing changes
Open a pull request
base repository: serpapi/serpapi-java
base: 1.1.0
head repository: serpapi/serpapi-java
compare: 1.2.0
- 12 commits
- 11 files changed
- 3 contributors
Commits on Jun 9, 2026
-
docs: fix SerpApi link format and add migration guide from google-sea…
…rch-results-java - Fix SerpApi homepage URL to use proper markdown link syntax - Add migration guide section covering dependency change, class/method renames, and before/after code example for users upgrading from the legacy google-search-results-java library Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4660582 - Browse repository at this point
Copy the full SHA 4660582View commit details
Commits on Aug 14, 2026
-
Audrey Kendrick authored and Audrey Kendrick committedAug 14, 2026 Configuration menu - View commit details
-
Copy full SHA for ec86d1a - Browse repository at this point
Copy the full SHA ec86d1aView commit details
Commits on Aug 15, 2026
-
fix(test): stop GoogleEventsTest NPE on empty events_results
The google_events engine returned no events_results for q=coffee, so getAsJsonArray returned null and .size() threw an NPE, failing CI. Use a location-scoped query, assert non-null with the response body in the message so future failures are diagnosable, and relax the size threshold from >5 to >0. Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 56305b6 - Browse repository at this point
Copy the full SHA 56305b6View commit details
Commits on Aug 16, 2026
-
test: print full exception format for test failures
exceptionFormat = "short" prints only the exception class and line, swallowing assertion messages. GoogleEventsTest embeds the API response in its assertion message, which CI was discarding, making the failure undiagnosable from logs alone. Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 454e2be - Browse repository at this point
Copy the full SHA 454e2beView commit details -
test: quarantine GoogleEventsTest while engine returns no results
The google_events engine responds HTTP 200 / status "Success" but with events_results_state "Fully empty" and an error field saying Google returned no results. Reproduced across two queries two days apart, so it is the engine rather than the query or this client. Ignore the test so CI reflects the state of this library rather than an upstream outage. Re-enable once the engine returns events again. Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c77a5ba - Browse repository at this point
Copy the full SHA c77a5baView commit details -
fix: raise SerpApiException on an error in a 200 response body
SerpApi reports some failures inside the body of an HTTP 200 response, for example the google_events engine: HTTP 200 {"search_metadata":{"status":"Success"}, "search_information":{"events_results_state":"Fully empty"}, "error":"Google hasn't returned any results for this query."} The client decided success purely from the status code, so search() returned an object that was semantically an error. Callers then reached for the key they expected and got a NullPointerException pointing at their own code, with the explanation sitting unread in the error field. This is what broke GoogleEventsTest. Check for a body-level error in json() and location(), routing it through the existing triggerSerpApiException so every SerpApi error reaches the caller as a SerpApiException regardless of status code. html() still returns its raw String unchecked; parsing arbitrary HTML as JSON to look for an error field is not worth the risk. Co-Authored-By: Claude Opus 5 <[email protected]>Configuration menu - View commit details
-
Copy full SHA for 7913f2e - Browse repository at this point
Copy the full SHA 7913f2eView commit details -
feat: add markdown() for the md output format
SerpApi accepts output=md, "a markdown-formatted version optimized for LLMs and AI agents", but this client exposed no way to ask for it short of calling the low-level get("/search", "md", parameter) and knowing the endpoint path. Add markdown(), mirroring html(): the raw String is returned unparsed. Also correct the get() javadoc, which listed the output formats as (json, html, json_with_images) where the API documents (json, html, md). Tests stub the HTTP client and assert on the request this client builds, so they run offline without a SERPAPI_KEY. Co-Authored-By: Claude Opus 5 <[email protected]>Configuration menu - View commit details
-
Copy full SHA for 666b382 - Browse repository at this point
Copy the full SHA 666b382View commit details -
docs: simplify the Markdown output section
Drop the intro and trailing note, and follow the auth/parameter naming and the "it prints ..." closing line used by the surrounding sections. Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8ed1d39 - Browse repository at this point
Copy the full SHA 8ed1d39View commit details -
Bump the project version and the places that restate it: - build.gradle, which names the published artifact - README installation snippet and changelog, in both the erb template and the generated README.md - SerpApiHttp.VERSION, which had drifted to 1.0.0 while the project was at 1.1.0. It is public and never read anywhere in the library, so the stale value was only ever visible to callers. demo/build.gradle still pins 1.0.0 and is left alone, since it resolves a published JitPack artifact rather than this source tree. Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b6322fe - Browse repository at this point
Copy the full SHA b6322feView commit details -
docs: describe 1.2.0 in the changelog
Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 46851aa - Browse repository at this point
Copy the full SHA 46851aaView commit details -
fix: apply the client timeout to reading, not just connecting
HomeDepotTest failed 4 of the last 7 CI runs, always the same way: SerpApiException: java.net.http.HttpTimeoutException: request timed out SerpApi.timeout was wired only to setHttpConnectionTimeout, so the read timeout was never configured and kept SerpApiHttp's 60s default. That is backwards: a 60s connection timeout is meaningless, since connecting takes milliseconds, while 60s to read is tight for engines that scrape. Apply the timeout to both, and raise the default to 120s, which the home_depot engine regularly needs. This is a library fix rather than a test fix: any caller searching a slow engine hit the same timeout. Also repair the README snippet helper, which sliced examples at a hardcoded lines[23..], assuming every example body starts at line 24. Quarantining GoogleEventsTest shifted that file and pulled the @ignore and its comment into the docs as if they were usage code. Anchor on the "// setup serpapi client" marker instead, which every example test has exactly once, and regenerate. Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4e26572 - Browse repository at this point
Copy the full SHA 4e26572View commit details -
chore: remove stray empty file
Created accidentally by a shell redirect run from the wrong directory. Co-Authored-By: Claude Opus 5 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 02fb8d9 - Browse repository at this point
Copy the full SHA 02fb8d9View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 1.1.0...1.2.0