|
Migrating sbt plugins to sbt 2 with sbt2-compat plugin
There’s an ongoing, community-driven effort to repopulate the sbt plugin ecosystem in preparation for the sbt 2 release. From sbt 1.x, plugin authors can cross publish against sbt 2.0 release candidates. To facilitate the plugin migration, we’ve created the sbt2-compat plugin. Anatolii Kmetiuk (@AKmetyuk) |
|
scala-cli E2E Repo Setup
This post is the reference I wish I had: a complete copy-paste workflow for a small library, using only scala-cli. Maybe it’ll save you the same googling. Bartłomiej Kozak |
|
Tracking Capabilities for Safer Agents
AI agents that interact with the real world through tool calls pose fundamental safety challenges: agents might leak private information, cause unintended side effects, or be manipulated through prompt injection. To address these challenges, we propose to put the agent in a programming-language-based "safety harness": instead of calling tools directly, agents express their intentions as code in a capability-safe language: Scala 3 with capture checking Martin Odersky, Yaoyu Zhao, Yichen Xu, Oliver Bračevac, Cao Nguyen Pham |
|
Hardening Scoverage Support in Scala 3
Code coverage is a key part of maintaining high-quality Scala projects. We’ve recently made progress on making Scoverage more robust for Scala 3, expanding the way we test it and discovering and fixing new issues. Anatolii Kmetiuk (@AKmetyuk) |
|
Introducing PureLogic: direct-style, pure domain logic for Scala
PureLogic’s design based on context functions and capabilities is a natural fit for Scala’s upcoming capture checking feature. Capture checking will allow the compiler to verify that capabilities don’t escape their scope. PureLogic is ready for this and it will be integrated when capture checking becomes more stable in future versions of Scala. Pierre Ricadat (@ghostdogpr) |
|
Rage Against the (Plurality of) Effect Systems
Effect systems are great. Having five of them is not. Each alternative brings real improvements, but none clears the bar that would justify the ecosystem fragmentation it causes. I believe we should pick one and rally around it — with shims to other systems — rather than keep splitting libraries, effort, and newcomer attention across parallel worlds. This isn’t anyone’s fault. It’s a coordination problem. But it’s still a problem. Voytek Pituła (@Krever01) |