TL;DR
Tim van der Lippe (TimvdLippe) plans to step down as Mockito maintainer in March 2026 after ten years. He cites burnout linked to JVM agent changes, recurring maintenance complexity from Kotlin, and renewed interest in other open source work such as the Servo web engine.
What happened
In a pinned GitHub issue, Mockito maintainer TimvdLippe said he will hand over maintainership in March 2026, marking ten years in the role. He wrote that recent changes in the JVM ecosystem — notably Mockito 5 shipping with an agent because dynamic attachment is placed behind a flag in JVM 22 — contributed to an energy drain. He described the way that change was communicated and the lack of collaborative alternatives as a major strain on volunteer maintainers. TimvdLippe also flagged growing maintenance friction from Kotlin support: language-specific behaviors (suspend functions were given as a prominent example) have required separate code paths inside mockito-core, increasing complexity. Finally, he said he has been spending more of his spare coding time on other projects, including Servo, and that maintaining Mockito had become less enjoyable. He plans to spend the coming months working on a smooth transition and will open separate discussions about future maintainership.
Why it matters
- Leadership change could affect project direction and day-to-day maintenance of a widely used testing library.
- The episode highlights friction between JVM platform changes and downstream open source projects that rely on deep JVM features.
- It underscores the vulnerability of volunteer-run core infrastructure to burnout when ecosystem changes are poorly coordinated.
- Kotlin-specific maintenance burdens illustrate how language features can increase complexity for cross-language JVM libraries.
Key facts
- TimvdLippe intends to step down as Mockito maintainer in March 2026 after nearly ten years.
- Mockito 5’s primary artifact is now an agent; this responds to JVM 22 placing dynamic agent attachment behind a flag.
- The maintainer described the JVM agent transition as energy draining and said the project felt left to solve the fallout largely on its own.
- Lack of proper build support for agents was noted as evidence that agent workflows are not yet a priority in the wider ecosystem.
- Kotlin’s language behavior (with suspend functions as a cited example) required separate code flows inside mockito-core, increasing complexity and duplication.
- TimvdLippe said he has been spending more volunteer time on other projects such as Servo, a web engine written in Rust.
- He plans to facilitate a smooth handover and expects discussions about future maintainership to take place in a separate GitHub issue.
What to watch next
- A follow-up GitHub issue where maintainership transition plans and candidate discussion will be posted.
- Progress on transition activities and any formal handover timeline between now and March 2026.
- Whether collaborators step forward as named maintainers or a governance model is introduced — not confirmed in the source.
Quick glossary
- Mockito: An open-source Java library commonly used for creating mock objects in unit tests.
- JVM agent: A component that can instrument or modify a Java Virtual Machine process, often loaded at startup or attached dynamically.
- Dynamic attachment: The ability to attach an agent to a running JVM process without restarting it; in recent JVM versions this capability can be restricted by flags.
- Kotlin: A modern programming language that targets the JVM (among other platforms) and introduces language features that can behave differently from Java at runtime.
- Suspend function: A Kotlin language construct used in coroutines to allow pausing and resuming execution without blocking threads.
Reader FAQ
When will the maintainer step down?
He plans to step down in March 2026.
Why is he leaving?
He cites energy drain from the JVM agent change, increased maintenance complexity from Kotlin support, and renewed interest in other open source projects.
Has a replacement been named?
Not confirmed in the source.
Will the project continue after he leaves?
Not confirmed in the source; the maintainer said others are eager to work on areas like Kotlin support and he will help ensure a smooth transition.
mockito / mockito Public Sponsor Notifications Fork 2.6k Star 15.3k Code Issues 452 Pull requests 27 Discussions Actions Stepping down as maintainer after 10 years #3777 New issue Open Description TimvdLippe…
Sources
- Stepping down as Mockito maintainer after 10 years
- 'java.lang.AutoCloseable org.mockito.MockitoAnnotations. …
- Archives
- AirHacks.FM podcast
Related posts
- Handling Rust Errors Without External Crates: Patterns Using std Only
- tc-ematch(8): extended matches for ‘basic’, ‘cgroup’ and ‘flow’ filters
- Dialtone revives AOL 3.0 on modern hardware via a P3 protocol server