OS-Lib: a simple filesystem and subprocess library

Just published OS-Lib, a new library that now underlies the Ammonite REPL, Ammonite-Ops (which is now just a wrapper around OS-Lib for backwards compatibility) and the Mill build tool.

OS-Lib is a simple Scala interface to common OS filesystem and subprocess APIs. OS-Lib aims to make working with files and processes in Scala as simple as any scripting language, while still providing the safety, flexibility and performance you would expect from Scala.

OS-Lib aims to be a complete replacement for the java.nio.file.Files / java.nio.file.Paths , java.lang.ProcessBuilder scala.io and scala.sys APIs. You should not need to drop down to underlying Java APIs, as OS-Lib exposes all relevant capabilities in an intuitive and performant way. OS-Lib has no dependencies and is unopinionated: it exposes the underlying APIs is a concise but straightforward way, without introducing it’s own idiosyncrasies, quirks, or clever DSLs.

Try it out!

10 Likes

I noticed it’s not published for 2.13.0-M5. Is there a specific reason for this?

Should definitely make a joint effort to merge some good features from haoyi’s projects

@texasbruce
Are you talking about the Standard Library ?

If it is, I agree.

Then it will evolve slow…

I would like to keep the core Scala small and let the ecosystem to grow.
Scala core is not Scala platform.