Scala Space's Avatar

Scala Space

@scalaspace.bsky.social

Where #Scala meets the industry By virtuslab.com & softwaremill.com

111 Followers  |  1 Following  |  206 Posts  |  Joined: 26.11.2024  |  1.9128

Latest posts by scalaspace.bsky.social on Bluesky

Preview
Metals v1.6.3 - Osmium | Metals We're happy to announce the release of Metals v1.6.3, which brings a number of

Take a look at the full release notes to learn even more! Try out the new features and let the maintainers know about any potential issues!

scalameta.org/metals/blog...

16.10.2025 15:01 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

And another code action will allow you to quickly switch any map/filter chains into a collect method invocation.

16.10.2025 15:01 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

We also have two new code actions. First one will allow you to convert any infix notation to a standard one. This is not enabled for symbolic operators.

16.10.2025 15:01 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

If you are using Bazel you might have noticed that until now there was no information about tests and no ability to run them. With this release we will be able to run any tests we want! This will require semanticdb enabled in your workspace.

16.10.2025 15:01 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

There is more! If you are a fun of quickly checking currently worked on test case, it's now possible to run the closes test case or method to the current cursor position!

16.10.2025 15:01 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

Did you ever get annoyed that you need to reimport everything when copying between different files? Worry no more! Metals will now try it's best to take care of that for you.

16.10.2025 15:01 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Enabling the new closing labels inlay hints will allow you to easily track where each method or class body ends.

16.10.2025 15:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

New 'copy FQN' command will allow you to get the fully qualified name for any class, method, object or value. This can later be used in places like scaladocs. For example when invoked on the "main" method, you will get a result in for of "com.example.Main#main"

16.10.2025 15:00 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

New MCP tool to generate Scalafix rules will allow LLMs to generate refactorings tailored to your workspace.

It's especially useful for any manual repetitive tasks.

Ask your agent to use Metals MCP with the Scalafix rule generation to try it yourself.

16.10.2025 15:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

New Metals 1.6.3, codename "Osmium", has just been released!

It comes with few interesting new features and we'll take the opportunity to go on a small tour.

16.10.2025 15:00 β€” πŸ‘ 6    πŸ” 1    πŸ’¬ 1    πŸ“Œ 1
Preview
Release v0.4.0 Β· softwaremill/sttp-ai Project name change The project is now called sttp-ai, as it contains a client for both OpenAI and Claude APIs. Migration Most of the time it should suffice to change the dependency coordinates fro...

We've just released sttp-ai 0.4.0 (formerly sttp-openai): you can now find clients for both OpenAI and Claude APIs. Same as sttp-client, the library works with any #Scala ecosystem: direct-style (synchronous), Future, cats-effect & ZIO. Enjoy!

github.com/softwaremil...

13.10.2025 10:00 β€” πŸ‘ 4    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
GitHub - softwaremill/ox: Safe direct-style streaming, concurrency and resiliency for Scala on the JVM Safe direct-style streaming, concurrency and resiliency for Scala on the JVM - softwaremill/ox

This concludes our Ox feature tour - hope you've enjoyed it as much as we did!

If you feel a feature is missing, or if you have a suggestion for an integration, just create an issue, we'll be happy to assist:
github.com/softwaremil...

08.10.2025 10:00 β€” πŸ‘ 2    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
GitHub - softwaremill/bootzooka: Template project to quickly start developing a Scala-based microservice or web application, with the build & project structure provided Template project to quickly start developing a Scala-based microservice or web application, with the build & project structure provided - softwaremill/bootzooka

More in the docs:
ox.softwaremill.com/latest/inte...

And/or, check out our OpenTelemtry-enabled application template, written using direct-style & Ox:
github.com/softwaremil...

07.10.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Ox feature tour, day 19: because it's direct style, integration with OpenTelemetry (metrics+logging+tracing) "just works"! To propagate tracing context inside concurrency scopes, you only need a single switch at your top-level `OxApp`!

07.10.2025 10:00 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Scala Tooling Spree | Scala Tooling Spree Home page for Scala tooling spree initiative

🌏 You can find more information on the Tooling Spree website at scalameta.org/scala-tooli....
πŸ“¨ In case of issues or questions feel free to email us at tooling-spree@virtuslab.com.

06.10.2025 21:39 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

πŸ› οΈ Next Scala Tooling Spree is coming up.
πŸ—“οΈ It will take place on 09.10 17:30-19:30 CET.
✍️ If you'd like to participate please register by 7th here:
forms.gle/yUurzS2KiM2...

06.10.2025 21:39 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

More in the docs:
ox.softwaremill.com/latest/util...

02.10.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Ox feature tour, day 18: `.pipe` and `.tap`, even extremely simple, are suprisingly useful! And there's no overhead: these are inline methods, hence a "zero-cost abstraction". Bonus: discover the `debug`, `.discar` and `.tapException` methods!

02.10.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

More in the docs:
ox.softwaremill.com/latest/basi...

01.10.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Ox feature tour, day 17: converting exceptions to `Either`s, and vice versa is trivial thanks to the inline `.catching[]` and `.orThrow` methods. A panic at one level, might become an expected error at another!

01.10.2025 10:00 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

More in the docs:
ox.softwaremill.com/latest/basi...

30.09.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Ox feature tour, day 16: we propose error handling based on "panics" (exceptions) and "expected" errors, represented as Eithers. Working with the lattter is ergonomic thanks to Scala's boundary/break, and its Ox-provided specialization to Eithers using `either: and `.ok()`

30.09.2025 10:00 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

More in the docs:
ox.softwaremill.com/latest/inte...

25.09.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Ox feature tour, day 15: Flows provide integration with Kafka, allowing one to implement the common publish-then-commit pattern using an elegant high-level, functional API.

25.09.2025 10:00 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

More, in the docs:
ox.softwaremill.com/latest/stre...

24.09.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Ox feature tour, day 14: declarative concurrency in flows - virtual threads are started (and terminated on error) safely, without ever needing to touch concurrency scopes! Signalling an error is as easy as throwing an exception.

24.09.2025 10:00 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

More in the docs:
ox.softwaremill.com/latest/stre...

23.09.2025 10:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

Ox feature tour, day 13: flows provide I/O integration, declarative concurrency, and reactive streams compatibility!

23.09.2025 10:00 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

(2/2) > With these new features, Wasm has much better support for compiling high-level programming languages. Enabled by this, we have seen various new languages popping up to target Wasm, such as Java, OCaml, Scala, Kotlin, Scheme, or Dart, all of which use the new GC feature.

22.09.2025 13:30 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
Wasm 3.0 Completed - WebAssembly WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable compilation target for programming languages, enabling deployment on the web for client and server applications.

Wasm 3.0 is completed, with major new features like GC and exception handling! Scala is now acknowledged as a language that compiles to WebAssembly πŸš€
webassembly.org/news/2025-0...
(1/2)
#Wasm #Scala

22.09.2025 13:30 β€” πŸ‘ 6    πŸ” 2    πŸ’¬ 1    πŸ“Œ 0

@scalaspace is following 1 prominent accounts