~/talk

Nasty Dependencies: Surviving and fixing bugs in 3rd-party libra…

Talkat DroidKaigi 2025 · 2025-09-10..09-12· [developer-experience]
name:Yury Vlad
links:none on file
slides:none on file

Step‑by‑step options for when a dependency breaks: use composite builds with dependency substitution to edit and debug a local library without mixing Gradle plugins, or publish a frozen snapshot via publishToMavenLocal or a private Maven repo to keep POMs and transitive deps; fork and sync upstream (watch for CLAs and company IP), or use git submodules or squash‑copied repos for frequent edits; for closed binaries patch with recaf bytecode edits or reflection (example: change WorkManager default dispatcher), add lightweight in‑library logging, then publish your artifact and monitor crash limits (Crashlytics/Sentry quotas).

AI-written summary · about

  1. 0:00Third-party dependency issues
  2. 1:27Investigating library bugs
  3. 4:01Debugging with Gradle builds
  4. 9:18Forking and maintaining fixes
  5. 14:03Hosting patched libraries
  6. 21:03Alternatives to forking
  7. 24:39Contributing fixes upstream
  8. 27:31Fixing closed-source with reflection
  9. 30:20Patching bytecode
  10. 35:27Summary
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.