Skip to content

v0.12.0🌈

Compare
Choose a tag to compare
@release-drafter release-drafter released this 31 Jul 05:59
· 523 commits to master since this release
fbcbd21

🗒️ Notable Changes

  • This introduces some 💥breaking changes (source-incompatible & binary-incompatible) for better typings and performance.
  • This is a final version for Scala.js 0.6.x. Consider update to Scala.js 1.x.
  • Node.js v14 support is added. Currently Node.js v14.7.0 is supported.
  • Parameter objects (e.g. MkdirOptions for Fs.mkdir) are now trait instead of class. Instances for such traits can be constructred via factory method (e.g. val option = MkdirOptions(recursive = true), just like case classes. This change is intended for performance and small footprint of generated JS file.
  • Most of method definitions now uses method overrides, instead of pseudo union types and default values (e.g. def foo(bar: String | Int, buz: Boolean = js.native)), for better source/binary compatibility.

🚀 Features

  • Typing: Prefer "overload" over "default parameter" for backward compat @exoego (#259, #260)
  • Typing: Prefer "overload" over "union types" for better type inference and backward compat @exoego (#261)
  • Update to Nodejs v14.7.0 @exoego (#302)
  • Use Factory macro for optimization and maintainability @exoego (#234)
  • [Error] Update ErrorCodes for Node.js v14 @exoego (#236)
  • [UDP/Datagram] Add addSourceSpecificMemberShip/dropSourceSpecificMemberShip @exoego (#269)
  • [child_process][cluster] Add serialization option (Node.js v13.2.0+, v12.16.0+) @exoego (#226)
  • [console] Add groupdIndentation to ConsoleOptions (Node.js v14.2.0+) @exoego (#228)
  • [console] Allow 0 argument logging & Allow seq.foreach(Consoe.log) @exoego (#297)
  • [console] Allow passing scala.Any to console @exoego (#299)
  • [crypto] Various updates for Node.js v14 @exoego (#229)
  • [dns] Added DNS.ALL flags (Node.js v14.0.0+) and other flags (Node.js v10+) @exoego (#230)
  • [events] Add experimental captureRejections, events.on, add events.errorMonitor @exoego (#237)
  • [fs] Various updates for Node.js v14 @exoego (#238)
  • [http2] Update to Node.js v14 @exoego (#241)
  • [http] Various updates for Node.js v14 @exoego (#239)
  • [https] Add highWaterMark to RequestOptions , Add agent.onKeylog event hander @exoego (#242)
  • [module] Move Module object to dedicated package, Various updates on Module object @exoego (#243)
  • [os] Add OS.version @exoego (#256)
  • [perf_hooks] Add new perf_hooks module @exoego (#257)
  • [readline] Various updates for Node.js v14 @exoego (#258)
  • [repl] Add preview field to StartOptions, Delete Unused REPLOptions @exoego (#265)
  • [stream] Add writable.writableCorked @exoego (#267)
  • [tls] Update ConnectOptions for Node.js v14 @exoego (#268)
  • [util] Node.js v14 ready @exoego (#224)
  • [vm] SecureContext is renamed to Context and now just an alias of js.Object @exoego (#270)
  • [worker_thread] Add transferList and resourceLimits @exoego (#271)

🐛 Bug Fixes

  • Extension method should not expose value @exoego (#263)
  • "option" objects should extend js.Object & ClusterSettings.serialization should be optional @exoego (#281)
  • [fs] WriteStream wrongly imports ReadStream @exoego (#248)
  • [stream] Fix stream.pipeline returning wrong type @exoego (#266)
  • [stream] Readable.redableFlowing should be nullary @exoego (#249)

📚 Docs

🧰 Maintenance