State of Scala 2026

February 10, 2026

Scala remains one of the best-paid niches in software. 38% of Scala developers sit in the top salary bracket, despite only ~2% using it as a primary language. The catch? 43% of teams struggle to hire developers, and 44% see the language declining. It's a small pond, but the fish eat well.

Infographic titled "State of Scala 2026: Maturity, AI, and Market Dynamics" split into two sections. On the left, "Market Health & Technical Roadmap" shows 38% of Scala developers earn top-tier salaries despite 43% of teams struggling to hire, JDK 17 baseline with Scala 3.8+ officially requiring JDK 17 and ending support for legacy Java 8 environments, and transition to Scala 3.9 LTS arriving Q2 2026 as the stable production target. On the right, "Tooling, AI & Security" highlights Metals AI Integration with MCP support enabling AI agents to compile code and run tests directly, 41% faster build startup with sbt 2.0 and Mill 1.0 delivering performance gains via native launchers, ecosystem dominance showing sbt at 90%, IntelliJ Scala Plugin at 69% usage, and Scala 3 at 92% adoption, plus lz4-java security warning requiring teams to migrate to the community-maintained fork.
State of Scala 2026: Maturity, AI, and Market Dynamics

Scala 3.8 shipped in January 2026 with two firsts: a JDK 17 baseline and the standard library compiled in Scala 3. Stick to 3.8.1 or later; 3.8.0 had a runtime regression. Surveyed teams report 92% Scala 3 adoption, though that number skews toward early adopters. The next LTS, Scala 3.9, lands Q2 2026 and will be the stable target for production systems.

Build tooling finally caught up. Mill 1.0 ships with GraalVM native launchers achieving ~100ms startup. sbt 2.0 release candidates show up to 41% faster startup in benchmarks, with GA still pending. On the IDE front, Metals gained Model Context Protocol support, letting AI agents compile code, run tests, and inspect symbols directly. The language server becomes a semantic database, not just a text editor.

Licensing changed. Akka 22.10 reverted to Apache 2.0 after its three-year BSL term expired, giving teams a viable open-source option again. Apache Pekko continued maturing post-incubation, and the community debated whether to port newly-available Akka 2.7 features. For teams choosing between actor frameworks, ZIO and Cats Effect offer alternative concurrency models with active development.

Security demanded attention. CVE-2025-12183 hit lz4-java with an 8.8 CVSS score, cascading through Pekko and Play Framework via transitive dependencies. The upstream lz4-java project has no active maintainers. Migrate to the community fork immediately.

Actions for 2026: Upgrade to Scala 3.8.2+ once stabilized, or wait for Scala 3.9 LTS expected Q2 2026. Migrate from lz4-java to the community fork at.yawk.lz4:lz4-java:1.8.1+. Try sbt 2.0 RCs for build performance gains. As of early February 2026, sbt 2.0 remains in RC phase (2.0.0-RC8), with GA pending.


Scala 2025 Timeline

Timeline infographic titled "2025: A Year of Velocity" showing major Scala ecosystem events across the year. January shows Scala 3.6.3 with JDK 24 support. March shows sbt 2.0 M4 and Pekko Graduation from Apache incubation. May shows Spark 4.0 release, Scala 3.7 with Named Tuples, and Metals MCP integration. July shows Mill 1.0 release and Akka Agentic AI Pivot announcement. September shows Akka 22.10 reverting to Apache 2.0 licensing. November shows sbt 2.0 RC7 and Scala 2.13.18 releases with security patches. December shows Play 3.0.10 security release. The caption reads "Despite a quiet narrative, technical velocity was extremely high across the entire stack."
2025: A Year of Velocity

January 2025

January 9
release

Scala.js 1.18.1

Scala.js 1.18.1 released with maintenance fixes.
January 15
release

Scala 2.13.16

Scala 2.13.16 released adding JDK 24 compatibility and smoother cross-building with Scala 3.6. Notable breaking change: .tail and .init on empty strings now throw exceptions rather than returning empty strings.
January 20
release

Scala 3.6.3

Scala 3.6.3 released with new -Yprofile-trace compiler option to trace compile phase timings (JSON traces visualizable with Perfetto).
January 23
release

Scala.js 1.18.2

Scala.js 1.18.2 hotfix addressing binary incompatibility issues.
January 29
release

Scala 3.3.5 LTS

Scala 3.3.5 LTS released backporting dozens of fixes from 3.5.x, updated to JDK 23, and added -Wall lint option.

February 2025

February 18
announcement

Scala Days 2025 Announced

The Scala Center announced Scala Days 2025 would return to Lausanne on August 19–21, marking 15 years of Scala Days and returning to EPFL in Lausanne, the birthplace of Scala.
February 26
release

Scala Native 0.5.7

Scala Native 0.5.7 released; notably, the runtime no longer requires C++ standard library by default on Unix systems. Added StackOverflowError detection and Position Independent Executable support.

March 2025

March 5
announcement

Scala 3.8 JDK 17 Baseline Announced

The compiler team announced Scala 3.8 would require JDK 17+, signaling the end of "Java 8 compatibility at all costs."
March 7
release

Scala 3.6.4

March 12
release

sbt 2.0.0-M4 Official

March 13
release

Play Framework 3.0.7 and 2.9.7

Play Framework 3.0.7 and 2.9.7 released with dependency upgrades, minor bug fixes, and Scala 3 compatibility improvements. Play 3.0 embraces Apache Pekko while Play 2.9 continues supporting Akka, catering to migrating users.
March 24
announcement

"Evolving Scala" Debate

Martin Odersky and Li Haoyi published "Evolving Scala" vision, explicitly rejecting calls to freeze feature development, arguing it "would doom the Scala language." The Hacker News discussion with 183 comments revealed fundamental tensions. One commenter captured widespread frustration: "Yes, it's a very common one shared by virtually all Scala 3 developers. Stop. At least for a couple of years. Tooling and the community just can't keep up." Others argued the language represented "an ongoing research project on which many students and professors depend" rather than production-first software.

April 2025

April 16
release

IntelliJ Scala Plugin 2025.1

IntelliJ Scala Plugin 2025.1 released with initial support for context bounds and givens syntax, and X-Ray hints for apply methods as a direct response to the "implicits magic" criticism, making hidden logic visible in the IDE. JetBrains joined the Scala Center's Advisory Board in 2024.
April 21
release

Scala.js 1.19.0

Scala.js 1.19.0 released with major Wasm backend speedups, often faster than JS output for compute-heavy code. Native support for JavaScript async/await via new js.async and js.await APIs, alongside JSPI support for Wasm.
April 22
milestone

Gradle Joins Scala Center Advisory Board

May 2025

May 7
release

Scala 3.7.0

Scala 3.7.0 landed with notable additions. Stabilized Named Tuples (SIP-58) let you write (name = "Value", age = 30), bridging opaque tuples and verbose case classes. Named tuples support pattern matching, type inference, and conversion to/from regular tuples; the Selectable trait's Fields member allows purely structural types, useful for database-oriented code. Also stabilized @publicInBinary annotation (introduced experimentally in Scala 3.4), rolled out preview features like improved for-comprehensions, and began using new given resolution rules by default. Scala can work with GraalVM Native Image, though even standard-library-only apps often need extra Native Image configuration. VirtusLab took a major role in compiler development; most 3.x releases are now authored by VirtusLab engineers.
May 8
release

Scala 3.3.6 LTS

Scala 3.3.6 LTS shipped with backports through 3.6.4, including REPL init script settings, ASM 9.8.0 for JDK compatibility, and -Yprofile-trace.
May 13
release

Metals 1.5.3 with MCP

Metals v1.5.3 released introducing an experimental Model Context Protocol (MCP) server. AI agents can now compile code, run tests, inspect symbols, retrieve documentation/usages, and import builds, turning the IDE into a semantic database. Metals also enabled inline parameter name hints and implicit conversion hints.
Slide titled "AI-Native IDE: Metals + MCP" showing a diagram of how AI agents interact with the Metals language server. On the left, text explains that the IDE is no longer just a text editor but a semantic agent, with Model Context Protocol allowing AI agents to access the build graph directly, and noting GitHub Copilot retrieval improved by 37.6% using semantic embeddings. The diagram shows an AI Agent querying via MCP to the Metals Server Semantic Database, which provides structured context to compile code, run tests, and inspect symbols. A quote at the bottom reads "AI agents can now compile code and run tests directly."
AI-Native IDE: Metals and MCP Integration
May 21
release

ZIO HTTP 3.3.0

ZIO HTTP 3.3.0 released with JSON endpoint behavior improvements and dependency updates.
May 23
release

Apache Spark 4.0

Apache Spark 4.0 released as a major upgrade. Dropped Scala 2.12 support (Scala 2.13 now required), requires Java 17+. 5,100+ fixes/features from 390+ individuals. Defaults to ANSI SQL mode, Arrow-based UDF interface for better Python interop.
Slide titled "Big Data Infrastructure" focusing on Spark 4.0. On the left, text reads "Scala remains the engine room of Big Data. The release of Spark 4.0 forces a modernization of the underlying Scala version across the industry." On the right, an Apache Spark 4.0 requirements panel shows three items: "Scala 2.13 Required" in red with note "Support for Scala 2.12 officially dropped", "Java 17+ Required" in teal with note "Drops Java 8/11 support", and "ANSI SQL Default" in teal with note "Standardized behavior enabled by default". At the bottom: "Integration: Databricks Runtime 17.3 LTS (Oct 2025)".
Big Data Infrastructure: Apache Spark 4.0
May 24
release

sbt 1.11.0

sbt 1.11.0 released primarily adding built-in support for Central Repository publishing.

June 2025

June 3
security

CVE-2025-46548

CVE-2025-46548 disclosed (also at NVD) affecting Apache Pekko Management before 1.1.1 and Akka Management before 1.6.1, allowing Basic Authentication bypass when configured via Java DSL. CVSS 3.1: 6.5 Medium.
June 4
release

Scala 3.7.1

Scala 3.7.1 released fixing early 3.7.0 bugs. Scala 3.7.0 had integrated the expression compiler for IDE debuggers directly into the Scala 3 compiler codebase.
June 18
milestone

RedMonk Q1 2025 Rankings

RedMonk Q1 2025 placed Scala at #14, tied with Shell and Kotlin. The position is stable but not growing, with Go ahead at #13; Rust ranked nearby while showing strong momentum. RedMonk noted declining confidence in Stack Overflow as a data source due to AI's impact on the platform.

July 2025

July 1
release

Play 3.0.8 and 2.9.8

Play 3.0.8 and 2.9.8 released with maintenance updates.
July 10
release

Mill 1.0.0

Mill Build Tool 1.0.0 released with GraalVM Native launcher (~100ms startup), no JVM required to run Mill itself, built-in Bash/Zsh tab completion, task filesystem sandboxing, stabilized Kotlin support, and Python-like build definition syntax. (Note: Scala CLI became the official scala command with Scala 3.5.0 in August 2024, and by 2025 is standard for scripting, education, and prototyping.)
Slide titled "The Build Tool Speed Wars" with subtitle "Performance is finally a priority." Two panels compare sbt 2.0 and Mill 1.0. Left panel shows sbt 2.0 (RC Phase) with a speedometer icon, displaying "41% FASTER" in large red text, "Startup Time vs 1.x" below, and bullet points: "Parallel testing by default", "Bazel-style remote caching", "Status: RC8 (Jan 2026)". Right panel shows Mill 1.0 with a lightning bolt icon, displaying "~100ms" in large red text, "Startup Time via GraalVM" below, and bullet points: "No JVM required for tool itself", "Released July 2025", "Python-like syntax".
The Build Tool Speed Wars: sbt 2.0 vs Mill 1.0
July 11
announcement

Lightbend Agentic AI Pivot

Lightbend announced their "Agentic AI" demo using stateful actors, reflecting a pivot to positioning Akka as an AI orchestration platform.
July 21
release

Apache Pekko 1.2.0-M2

Apache Pekko 1.2.0-M2 milestone completed. (Pekko 1.2.0, 1.3.0, and 1.4.0 all shipped by year-end.)
July 29
milestone

Stack Overflow 2025 Survey

Stack Overflow 2025 Developer Survey showed Scala at ~2.6% of respondents (~2.8% among professionals), with over 49,000 responses from 177 countries in its fifteenth year.
July 31
release

IntelliJ Scala Plugin 2025.2

IntelliJ Scala Plugin 2025.2 released with improved error highlighting, type resolution, and code completion for named tuples. Includes memory leak fixes from the prior 2025.1.24 hotfix.

August 2025

August 1
release

Scala 3.7.2

Scala 3.7.2 released with Scala CLI v1.8.4, experimental -Yimplicit-to-given rewrite flag for migrating implicit definitions to given syntax, and extensions to Capture Calculus features.
August 19-21
event

Scala Days 2025

Scala Days 2025 in Lausanne drew approximately 300 attendees for 57 talks and 5 workshops with keynotes from Martin Odersky, Elm creator Evan Czaplicki, and Rust's Ralf Jung. Theme: "Functional Programming And The Real World." Nearly 50% of attendees were first-timers. The Scala organization issued statements on community safety and CoC enforcement: updated Code of Conduct, accessibility, childcare, and quiet room provided, credited with making Scala Days 2025 more inclusive. Eugene Yokota presented "sbt 2.0: go big" detailing the build tool's modernization. Community organized a "Scala Jam Train" meetup connecting London through Paris.

September 2025

September 6
release

Scala.js 1.20.1

Scala.js 1.20.1 released with performance improvements as Chrome v137+ gained support for all required Wasm features. (1.20.0 turned out to be severely broken and was never announced.)
September 9
release

Scala 3.7.3

Scala 3.7.3 shipped with new warnings for implicit shadowing and standardized -Vprint flags. Scala 3.7.4 followed on November 11.
September 11
release

Play 2.9.9 and 3.0.9

Play 2.9.9 and 3.0.9 released with Java 25 support.
September 23
security

CVE-2025-59822

CVE-2025-59822 hit http4s, an HTTP Request Smuggling vulnerability from improper handling of trailer sections. GHSA/OSV rate it Moderate (CVSS 6.3), while NVD CVSS v3.1 rates it High (7.5), affecting versions before 1.0.0-M45 and before 0.23.31, enabling attackers to bypass front-end security controls and poison web caches when deployed behind reverse proxies.
September 29
release

sbt 2.0.0-RC6

sbt 2.0.0-RC6 released introducing Bazel-compatible remote caching with compile and test as cacheable tasks.
September 30
release

Scala 2.13.17

Scala 2.13.17 released with JDK 25 compatibility.
September
milestone

Akka 22.10 Reverts to Apache 2.0

Lightbend's Akka 22.10 reached the end of its 3-year BSL term, and Akka 22.10 automatically reverted to Apache 2.0 open-source licensing in September 2025.

October 2025

October 10
milestone

State of Scala 2025 Report

"State of Scala 2025" report (Scalac survey of 400+ self-selected respondents) revealed ecosystem data. Adoption: 92% of surveyed teams using Scala 3 (though this likely reflects early adopters more than the broader ecosystem), with 48% fully migrated to production. Migration difficulty rated 3.16/5 (moderate). Challenges: 43% of teams struggling to hire Scala developers, 43% struggle convincing stakeholders. Sentiment: 44% see Scala declining, 37% stable, only 9% see growth. Use cases: 85% backend/APIs, 41% data processing, 38% distributed systems; ML/AI only 6.5% (ceded to Python). Top libraries: Cats (56%), http4s (45%), ZIO (31%), Akka (26%), Play (23%), Spark (19%). Tooling: sbt dominates at 90%, IntelliJ at 69%, VS Code+Metals at 22%. Demographics skew senior: 69% have 5+ years Scala experience, only ~5% are newcomers. The report characterizes Scala as "narrow but deep," thriving in finance, big data, and infrastructure where reliability at scale is non-negotiable. On the AI front, LLM4S, a Scala-native framework for LLM applications (officially introduced on February 25, 2025), supports OpenAI, Anthropic, and other providers with MCP integration. Other AI tools emerged: Giter8 web UI suggests project settings using LLM for template selection, ScalaCheckGPT (experimental) generates property-based tests using GPT-4, Scala Chats Discord bot was fine-tuned on Scala content, ScalaVect library provides vector embeddings in Scala, and DeepLearning4J (JVM ML library) continued Scala support. Scala docs integrated AI-powered search using embeddings. One team reported using Scala to write a shared AI module for image recognition, compiled via Scala Native for iOS edge deployment.
Slide titled "The Talent Paradox" with subtitle "A Small Pond, But the Fish Eat Well." Two columns on a dark background. Left column "The Struggle" shows: "43%" in large red text with "Teams struggle to hire" below, "44%" in red with "See language declining" below, and "~2% Global Usage" at bottom. Right column "The Reward" shows: "38%" in large green text with "Developers in top salary bracket" below, a quote "Scala remains a high-value niche for Finance and Data Infrastructure.", and "92%" in large blue text with "Scala 3 Adoption (Surveyed)" below. At the bottom: "Strategic Action: Treat Scala hiring as a specialist investment, not a commodity search."
The Talent Paradox: Scala's Market Position
October 12
release

Scala Native 0.5.9

Scala Native 0.5.9 released with Int128 support and configurable C++ standards.
October 17
security

Logback RCE Fix (CVE-2025-11226)

Logback 1.3.16/1.5.19 fixed CVE-2025-11226. This vulnerability allowed arbitrary code execution via malicious configuration files. Play 3.0.10 (announced December 23, 2025) includes a logback-core upgrade to address it.
October 28
milestone

GitHub Octoverse 2025

GitHub Octoverse 2025 reported TypeScript overtook Python and JavaScript to become the most-used language on GitHub in August 2025, the biggest language shift in over a decade. GitHub reported over 36 million new developers joined, reaching 180 million total users. Scala remained outside the top languages.

November 2025

November 6
milestone

Akka 2.7.0 Open-Sourced

Akka 2.7.0 code became available under Apache 2.0 after the three-year BSL period. (Note: Akka uses both SemVer for the 2.x line and CalVer for newer 22.x/23.x releases, which revert on different schedules.) The Apache Pekko mailing list debated whether to port Akka 2.7 features now legally available. Lightbend offered "Technical Support for Apache Pekko" users, somewhat ironically given the fork's origins. Community skepticism on Reddit: "The Akka company is trying to pull a hype pivot to agentic AI. Pekko is still maintained. I personally wouldn't use either."
November 11
release

Scala 3.7.4

Scala 3.7.4 released bundling Scala CLI 1.9.1 and deprecating scala_legacy launcher and MainGenericRunner ahead of removal in Scala 3.8.
November 21
milestone

Spark 4.0 on Amazon EMR Serverless

release

Metals 1.6.4

Metals v1.6.4 released with continued MCP support enhancements.
November 24
release

Scala 2.13.18

Scala 2.13.18 released, one of the final 2.x releases as the series winds down. It includes new GPG key signing and Java 25+ main method detection.
November 26
release

sbt 2.0.0-RC7

sbt 2.0.0-RC7 released declaring binary compatibility within the sbt 2.x series (RCs through GA).
release

Scala Days Recordings

Scala Days recordings posted on YouTube, including sessions about large-scale use cases. The following enterprise usage claims come from third-party sources and conference talks, not independently verified: Netflix reportedly presented its QoE Measures Library built with Scala 3 features (Opaque Types, Type Classes, Macros, and Context Functions). BMW reportedly uses Scala with Akka for connected car backends. Disney Streaming reportedly uses Scala for high-throughput services. Financial services remain the largest segment: J.P. Morgan, Citi, Morgan Stanley, Barclays, and PayPal reportedly maintain sizeable Scala teams, with new greenfield fintech projects starting directly on Scala 3 with ZIO and Smithy4s. Kpler reportedly uses Scala for high-performance commodity trade data platforms. One case study claimed switching to Scala cut AWS bills by 30% due to more efficient concurrency and memory management. One estimate puts ~35,700 companies using Scala globally, with strongest adoption in the United States. Big tech companies like Apple and Amazon are reportedly hiring Scala engineers for specific teams. Signify Technology sponsored Scala Days promoting Scala opportunities. Some notable tech companies that historically used Scala have been diversifying: Twitter (one of Scala's poster children) has reportedly been refactoring some services to Java and Kotlin. Data platforms like Snowflake continue to use Scala in core infrastructure.
milestone

Scala Community Growth

The Scala Center highlighted community growth at Scala Days, with Martin Odersky and contributors speaking about bringing in new developers. The Scala Toolkit initiative saw companies volunteer engineers for a batteries-included stdlib add-on, improving "bus factor" for critical ecosystem pieces.
November 28
security

CVE-2025-12183

CVE-2025-12183 affected lz4-java with 8.8 CVSS score. Out-of-bounds memory access in versions 1.8.0 and earlier causing DoS, cascading through Apache Pekko and Play Framework via transitive dependencies. Official lz4-java discontinued; migrate to community fork at.yawk.lz4:lz4-java:1.8.1+.
Security alert banner with red border on light pink background. Header reads "SECURITY ALERT" with "Immediate Action Required" below. Center displays "CVE-2025-12183" in large dark red text with "CVSS 8.8 (High)" in red below. Three bullet points: "VULNERABILITY: lz4-java Out-of-bounds memory access (DoS).", "IMPACT: Cascades through Pekko, Play Framework, and Kafka.", "STATUS: Upstream project abandoned." Dark red footer bar reads "REMEDIATION: Force dependency to community fork: at.yawk.lz4:lz4-java:1.8.1+"
Security Alert: CVE-2025-12183 lz4-java Vulnerability

December 2025

December 7
milestone

"Scala 3 Slowed Us Down?" Viral Post

Community blog post "Scala 3 slowed us down?" went viral, highlighting pain points in migrating code and macros, while the Hacker News discussion added behavioral differences like @inline vs inline. Detractors questioned "why migrate at all if 2.13 isn't EOL?", while compiler contributors countered that migration is "pretty smooth" for most codebases. One widely-discussed Medium piece noted: "Scala 3 was released in 2021... It is already 2025, but the Scala community has not fully switched to version 3." The Scala Center responded by doubling down on migration tools (ScalaFix rules and Scala 3's -source:3.0-migration mode).
December 8
December 11
release

Scala 2.12.21

Scala 2.12.21 arrived as a maintenance release.
December 12
December 16
release

Apache Spark 4.1.0

Apache Spark 4.1.0 released December 16, 2025, shipping pre-built with Scala 2.13 only, officially dropping Scala 2.12.

January 2026

January 5
release

sbt 2.0.0-RC8

sbt 2.0.0-RC8 released with continued refinements toward GA. See Watchlist #3 for full sbt 2.0 context.
January 16
release

Scala 3.8.0 GA

Scala 3.8.0 GA shipped, the first release with the standard library compiled in Scala 3 and a JDK 17 baseline. A runtime regression surfaced shortly after release.
January 22
release

Scala 3.8.1

Scala 3.8.1 released as a quick follow-up fixing the 3.8.0 runtime regression. The Scala team recommends 3.8.1 over 3.8.0.

Scala 2026 Watchlist

Slide titled "The Road to Stability: Scala 3.9 LTS" with subtitle "Production Target: Q2 2026". A timeline shows three milestones: "Jan 2026" with checkmark and "Scala 3.8 (Feature Complete)", "Feb/Mar 2026" with checkmark and "Stabilization", and "Q2 2026" with a large red circle containing "Scala 3.9 LTS" connected by dotted line to "Support through Q2 2027". Below the timeline, four bullet points: "Successor to 3.3 LTS", "Zero new features vs 3.8", "Capture Checking Finalization", "SIP-62 Better Fors". Gray footer bar reads "ACTION ITEM: Schedule production system upgrades for Q3 2026."
The Road to Stability: Scala 3.9 LTS Timeline

1. Scala 3.9 LTS

When: Q2 2026
Context: The next Long-Term Support release succeeding Scala 3.3 LTS. Feature freeze after 3.8 means no new features compared to 3.8; the purpose is a stable, rock-solid base. Some preview features may become stable. May include finalization of "Capture Checking" experiment (Rust-like memory safety). JDK 17 baseline carries forward. Scala 3.3 LTS will receive support for at least one year after 3.9 ships (so likely through ~Q2 2027 if 3.9 lands Q2 2026). Mill should continue iterating toward full Scala 3.8 support. Scala CLI reached the 1.0.0 milestone and is the official implementation of the `scala` command (as of Scala 3.5.0). Scala 3.8 support started in Scala Plugin 2025.3, with further incremental improvements continuing in 2026.
Action: Plan migration to 3.9 LTS for production systems requiring long-term stability. Expect this to be the next LTS line.


2. Scala 3.8 Stabilization

When: Q1 2026
Context: 3.8.0 required a quick 3.8.1 follow-up due to a specialization/Scala 2.13 interop regression. 3.8.1 released January 22, 2026. 3.8.2 scheduled late February for remaining regressions. Key features: standard library compiled with Scala 3, JDK 17 baseline (emits Java 17 bytecode, uses invokedynamic for lambdas), SIP-57 runtimeChecked, SIP-62 Better Fors stabilized, SIP-71 into modifier in preview, ASM 9.9 for JDK 26 support, REPL becomes separate artifact, Flexible Varargs and Strict Equality experimental. Note source incompatibility around context bounds, now using using instead of implicit. Scala 3.3 LTS continues to target JDK 8 bytecode for legacy compatibility.
Action: Cautious teams should wait for 3.8.2. Test your codebase against 3.8.x to identify migration issues early.


3. sbt 2.0 GA

When: TBD (still RC as of Jan 2026)
Context: 2.0.0-RC7 shipped in November 2025; the most recent RC is 2.0.0-RC8 (January 2026). Major improvements: task caching by default, parallel testing by default, Bazel-inspired remote caching for shared build artifacts, ~41% loading/startup-time speedup vs sbt 1.10.2 in PR #7866 benchmarks, Scala 3 build definitions. Many popular plugins already cross-building. sbt 2 uses Scala 3, enabling plugin authors to use Scala 3 features and potentially sparking innovation in sbt plugins. Note: task scoping removal and DSL restructuring caused friction for plugin maintainers. Talk of consolidating Scala CLI and sbt launchers in the long term.
Action: Begin testing sbt 2.0 RCs with your projects. Verify plugin compatibility. Plugin authors should publish 2.0-compatible versions.


4. lz4-java Migration

When: Now
Context: CVE-2025-12183 (8.8 CVSS) and CVE-2025-66566 affected lz4-java, cascading through Apache Pekko and Play Framework via transitive dependencies. Official lz4-java project discontinued.
Action: Migrate to community fork at.yawk.lz4:lz4-java:1.8.1+ immediately. Run dependency audit to identify all lz4-java usages.


5. Apache Pekko Post-Incubation

When: Ongoing through 2026
Context: Pekko graduated from incubation in March 2024. Team discussing Pekko 2.0 plans for 2026. Akka 23.5 shipped May 16, 2023 and, under Akka's 36-month conversion rule, would revert to Apache v2 around May 2026. Lightbend highlighted Pekko introduced breaking changes and "unresolved runtime bugs" (seen by some as FUD). Lightbend offers "Technical Support for Apache Pekko". ZIO and Typelevel ecosystems (with Cats Effect 3.7.0-RC1 enabling native multithreading) offer alternative concurrency models.
Action: Decide whether to stay with Pekko, migrate to ZIO/Cats Effect, or wait for more Akka versions to open-source. Play Framework 3.0 users are already on Pekko.


6. Metals MCP Integration

When: Now
Context: Metals introduced Model Context Protocol (MCP) allowing AI agents to compile code, run tests, inspect symbols, retrieve documentation/usages, and import builds after dependency changes. VirtusLab showcased LLM-assisted developer workflows potentially integrating into Metals. GitHub Copilot officially supports Scala. Separately, GitHub reported in September 2025 that a new Copilot embedding model improved Agent Mode retrieval by 37.6% and nearly doubled embedding throughput. Amazon Q Developer expanded customization support to more languages including Scala on April 30, 2025. JetBrains AI Assistant (EAP) offers chat-based code explanation for Scala, including explaining complex type errors in plain English. Metals worksheet mode and remote development support continue improving. With more Scala devs working in cloud IDEs or GitHub Codespaces, Metals' ability to run in remote containers is increasingly important.
Action: Update to Metals 1.6.4+ and configure MCP for AI-assisted development. Explore LLM4S for type-safe AI integrations.


7. Scala Native WebAssembly

When: 2026
Context: Scala Native 0.5 introduced multithreading based on platform threads, integrated into Cats Effect 3.7.0-RC1 with full multithreading on LLVM. Viable for sidecar processes and serverless functions with competitive performance. Scala.js 1.19.0 delivers Wasm output often faster than JS for compute-heavy code; Scala.js 1.20.1 includes varargs compatibility improvements for Scala 3.8.0+. Question if Scala Native will target WebAssembly directly for lightweight runtime scenarios. Performance discussions dominated by the "Direct Style" vs. "Monadic" debate, fueled by Project Loom. Libraries like Ox (SoftwareMill) leverage virtual threads; anecdotal reports suggest comparable throughput to ZIO for I/O-bound tasks. As one Scala Days talk cheekily titled it: "Scala: Fast is the New Correct". After years focusing on correctness and features, the ecosystem is back to paying serious attention to speed.
Action: For CLI tools and serverless functions where startup time is critical, consider Scala Native (often tens of ms startup in small CLIs, low memory footprint). Track Scala Native WASM developments.


8. Scalar 2026

When: March 26-27, Warsaw
Context: Scalar 2026 scheduled. Scalar 2025 maintained single-track format with Martin Odersky keynoting. Scala Days 2026 location and dates were still pending announcement as of November 26, 2025. Typelevel Summit and Scala eXchange likely to resume fully in-person with potential announcements about new experimental libraries and cross-pollination with other FP languages.
Action: Submit talk proposals for Scalar by deadlines. Watch for Scala Days 2026 announcements.


9. ZIO and Cats Effect Ecosystem

When: Ongoing (no official ZIO 3.0 or CE4 timeline announced)
Context: ZIO adoption jumped from 27% to 32% in 2025. Plans to integrate logging, config, metrics, profiling into ZIO Core. Cats Effect 3.7.0-RC1 brought true multithreading to native Scala executables, making Scala Native viable for CLI and system tools where fast startup and low memory footprint matter. Scala 3.9 targets Q2 2026 as the next Scala LTS, but as of now there is no official release alignment announced for ZIO 3.0 or Cats Effect 4; active lines are ZIO 2.1.x and Cats Effect 3.7.x. Play Framework may start discussing Scala 3-only direction. Spark may discuss Scala 3 migration (currently 2.13 for 4.x line).
Action: Track ZIO 3.0 and CE4 development. For new projects, choose between the "batteries-included" ZIO ecosystem or the more modular Typelevel stack based on team preferences.


10. JDK 25/Valhalla Value Types

When: 2026+
Context: Scala 2.13.17 added early JDK 25 support. JEP 471 support ensures JDK 25+ compatibility continues smoothly. Project Valhalla's value types promise C++ levels of memory efficiency. Project Loom virtual threads already showing results: Akka 25.05 introduced support for configuring dispatchers to run on virtual threads on JVM 21+, Cats Effect Loom integration can match/beat traditional scheduler for IO-heavy workloads. As Loom threads become mainstream, IDEs will need to handle virtual threads in debuggers. Scala 4 is not on the 2026 map; the core team indicated it's years away and would only happen for fundamental changes (new meta-programming framework or significant VM shift). Possible Scala 3.10 SIPs: Multiversal Equality defaults, typeclass coherence, async/await built-in. Scala 3 deprecates XML literals and 3.10 may drop them; the community will use string interpolation via scala-xml library instead. Deprecations in Scala 3.8 removed old -repl/-run scalac options. Scala 2.13: Likely 2.13.19+ with only critical fixes and JDK updates.
Action: Ensure CI/CD pipelines support JDK 17+ (required for Scala 3.8+). Plan JDK 21+ adoption to leverage virtual threads. Track Valhalla progress for future performance gains.

Enjoyed this article?

Subscribe to get more deep-dives in your inbox.

Continue Reading

Stay ahead of the curve

Weekly deep-dives into programming languages, frameworks, and the tools shaping software engineering.