Conversation
Bump org.json:json 20220320 -> 20231013 and okhttp-version 4.9.1 -> 4.9.2 (logging-interceptor follows the shared property), clearing the 3 open High Dependabot alerts on pom.xml. No source changes needed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GitHub auto-fails jobs that use the deprecated actions/cache@v2, so run_tests never started on this branch (or on main's Dependabot PRs). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PR Summary by QodoBump org.json and OkHttp; restore CI test execution
AI Description
Diagram
High-Level Assessment
Files changed (2)
|
Code Review by Qodo
1. Some users retain vulnerable OkHttp
|
| <gson-fire-version>1.8.5</gson-fire-version> | ||
| <swagger-core-version>1.6.2</swagger-core-version> | ||
| <okhttp-version>4.9.1</okhttp-version> | ||
| <okhttp-version>4.9.2</okhttp-version> |
There was a problem hiding this comment.
1. Some users retain vulnerable okhttp 🐞 Bug ⛨ Security
The Maven property now selects OkHttp 4.9.2, but the Gradle and SBT builds and both documented Spring dependency overrides still select 4.9.1. Gradle or SBT builds retain the old version, and Spring users following the instructions override the updated SDK dependency back to it.
Agent Prompt
## Issue description
The Maven OkHttp bump does not reach the alternate builds, and the documented Spring overrides force consumers back to 4.9.1.
## Fix Focus Areas
- pom.xml[476-476]
- build.gradle[109-110]
- build.sbt[13-14]
- README.md[60-76]
- MIGRATION.md[28-44]
## Recommended Fix
Update both OkHttp artifacts in the Gradle and SBT builds to 4.9.2, and change both Spring dependency examples in each guide to 4.9.2 so they no longer override the SDK's updated version.
ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools
What problem are you trying to solve?
pom.xml:com.squareup.okhttp3:okhttp(Update lob-java-1.1.jar into github #8) andorg.json:json(Fix tracking variable mapping in Job object. #6, Add tests #4). Ticket: SYN-648 (parent SYN-624).How did you solve this problem?
org.json:json20220320 -> 20231013 (pom.xml:454).<okhttp-version>4.9.1 -> 4.9.2 (pom.xml:476).logging-interceptorshares the property and moves with it..github/workflows/run_tests.yml:27actions/cache@v2->@v4. GitHub auto-fails jobs that use cache@v2, sorun_testsnever started on this PR (Dependabot chore(deps): bump com.squareup.okhttp3:okhttp from 4.9.1 to 4.9.2 #351 fails the same way).ApiClient.javaonly uses org.json/okhttp APIs that didn't change across these versions.Important notes
ApiClient.java:803-806and:1041-1043(org.json use) aren't unit-covered. Only the live*SpecTestCI run exercises them, so check that this PR's CI is green before merging.mvn clean compile, notinstall -DskipTests. Themaven-gpg-pluginis bound unconditionally atverify(pom.xml:223-238) and fails without a signing key. That failure predates this change.CI status
run_testsruns: 1189 tests, 11 failures, all in the liveIntegration.*SpecTestsuite, 39 skipped (run 36204693707). Every Api/Model unit test passes.Test plan
Run in Docker (
maven:3-eclipse-temurin-17; CI uses JDK 14):mvn -B dependency:tree -Dincludes=org.json:json,com.squareup.okhttp3shows okhttp 4.9.2, logging-interceptor 4.9.2 and json 20231013.mvn -B clean compile: BUILD SUCCESS.mvn -B test "-Dtest=%regex[.*ApiTest.*]": base 156 tests, 0 failures; after 156, 0 failures.mvn -B test "-Dtest=%regex[.*Model.*]": base 956 tests, 0 failures; after 956, 0 failures.*SpecTestsuite (needs repo secrets) runs in PR CI.Review: 1 round. The lob-java specialist and the tech lead both approved, with no findings on this repo.
Acceptance criteria
guzzlehttp/guzzleresolves to >= 7.15.2 incomposer.lockand thecomposer.jsonconstrphpunit/phpunitresolves to >= 9.6.33 andsymfony/processto >= 5.4.46 in `composer.locorg.json:jsonresolves to >= 20231013 andcom.squareup.okhttp3:okhttpto >= 4.9.2 in tPending checks (the PR stays draft until these pass)
AC5-manual-operatorAC5 · manual-operator · owner: operatorRisks (every review round)
--with-all-dependenciespulled transitive major bumps into composer.lock: guzzlehttp/promises 1.5.1 -> 2.5.3, psr/http-message 1.0.1 -> 2.0 (runtime), nikic/php-parser v4 -> v5 and doctrine/instantiator 1 -> 2 (dev). phpspec/prophecy, phpdocumentor/* and webmozart/assert were dropped. lib/ doesn't implement any PSR-7 interface and doesn't call removed promise functions. Only Psr7\Utils::tryFopen is used. composer.json ranges are unchanged, so SDK consumers resolve their own versions. (r1)mvn clean compile, notinstall -DskipTests, because the maven-gpg-plugin is bound at verify (pom.xml:223-238) and needs a signing key. This predates the change. (r1)Follow-ups
*SpecTestfailures for this PR. Follow-up: fix the CI Lob account and keys used by the live SpecTests. That means live-mode access for Campaigns, Creatives and Uploads, the scheduled-mailing plan limit, the IdentityValidation API-key message, the Check fixture, and the self-mailer render.synchronizetorun_tests.yml'spull_requesttypes (in lob-java and lob-php), so pushes to an open PR run CI.build.gradle:109-110andbuild.sbt:13-14still pin okhttp 4.9.1. Neither Dependabot nor CI reads them; left unchanged on purpose.🤖 Generated with Claude Code