LOADING

Migration Without Tears: 2,000 Projects, One New LTS

In this talk, I will present insights from running the Open Community Build, where we continuously build and migrate nearly 2,000 open-source projects to the newest Scala Next versions, from scratch, every week.

Wojciech Mazur
Scala Compiler/Tooling Engineer @ VirtusLab
About This Talk

Scala 3.3 introduced the first Long-Term Support (LTS) release, setting expectations of stability, incremental improvements, and a predictable migration model - while innovation continued through the Scala Next release line.

Now, three years later, Scala 3.9 becomes the new LTS baseline, marking the next major migration point. But this cycle is fundamentally different: the compiler and tooling can now automate a large portion of migration effort, allowing teams to focus on product development rather than manual refactoring.

In this talk, I will present insights from running the Open Community Build, where we continuously build and migrate nearly 2,000 open-source projects to the newest Scala Next versions, from scratch, every week. This effort surfaces real-world compatibility issues long before they reach users, providing a unique perspective on how migrations behave at scale.

You’ll learn:

- How to approach migration to 3.9 LTS using compiler automation

- The most common problems observed when upgrading

- What breaks in practice, and how to fix it efficiently

- How Community Build feedback loops accelerate ecosystem stability

- Strategies for migrating libraries, applications, and whole ecosystems

This talk is not a feature overview of Scala 3.9, but a practical field report from running large-scale migrations every week. You will leave with a clear, repeatable migration strategy - and confidence that the compiler can handle more of the heavy lifting.

more great talks

Might Be Interesting

Day 1
  —  
12:25 pm
arrow pointing right icon

Protobuf Goes Scala-First

Protobuf is commonly associated with code generation. However, in large projects with tens of thousands of message definitions, this approach can lead to an overwhelming amount of generated code. In this talk, I’ll share my journey in search of a different approach to this problem.

Day 1
  —  
2:00 pm
arrow pointing right icon

The Concurrency Triangle: Scala Fibers, Java Virtual Threads, and Kotlin Coroutines

Scala Fibers, Java Virtual Threads, and Kotlin Coroutines - this talk shows how this elegant solution manifests at three different abstraction levels.

Day 2
  —  
10:10 am
arrow pointing right icon

Can we have the Standard Library for Macros?

Do you like it when compiler generates the boring code for you? Fast, mundane, boring-but-error-prone code? Do you need to implement such a code generator yourself? Have you found out that Shapeless/Mirrors bend your brain a bit too much?

Day 2
  —  
2:35 pm
arrow pointing right icon

Scala and TypeScript Synergy: Developing a real-time collaborative text editor

In this presentation, I will demonstrate how we leveraged the strengths of Scala and TypeScript to develop a collaborative text editor that meets the strictest standards for security, performance, and real-time collaboration.

Day 3
  —  
6:15 pm
arrow pointing right icon

Scalar PreParty

Let's meet before Scalar!

See All Events
Join us!

We're looking for amazing speakers.
CFP is open till 10.01.2023

Fill in Call for Papers
location icon

Location

Centrum Konferencyjne POLIN, Poland
stay in touch icon

Follow Us

Contact Us