Releases: typelevel/fs2
v3.1.4
Supports Cats Effect 3 and built for Scala 2.12, 2.13, and 3 final.
FS2 3.1.4 is a bug fix release focused on performance.
What's Changed
- Make indexed traversal of
Chunk.Queue
amortized logarithmic time by @mpilquist in #2631 - parEvalMapUnordered performance by @nikiforo in #2626
- Pull - Remove nested matches. by @diesalbla in #2625
- Use AtomicReference instead of Ref by @notxcain in #2632
- Make Compiler.Target extend MonadCancelThrow by @bplommer in #2612
PipedStreamBuffer
circular copying overflow fix by @vasilmkd in #2638- Update ip4s-core to 3.0.4 by @scala-steward in #2639
- Amended a couple of things on the site by @domaspoliakas in #2636
- Use JDK 17 in the CI by @vasilmkd in #2645
- fix socket leak for unresolvable domains by @stephennancekivell in #2644
- Improve Scope#interruptWhen error by @rossabaker in #2634
- Create
fs2.compression.checksum
by @armanbilge in #2606 - Update scodec-bits to 1.1.29 by @scala-steward in #2648
- Fix simple warnings in the build and tests by @vasilmkd in #2649
- Fix
Stream#concurrently
for short-circuiting monad transformers by @vasilmkd in #2652 - Update munit-cats-effect-3 to 1.0.6 by @scala-steward in #2656
- Revert "Remove unnecessary delegate" for
fs2.io.compression
by @armanbilge in #2658 - Make interruptWhen a no-op with the Sync compiler by @rossabaker in #2657
- Improve IO exceptions on Node.js by @armanbilge in #2655
- Flush CharsetDecoder to produce final chunk by @rossabaker in #2667
- Fix socket close regression by @armanbilge in #2665
- Re-worked Node.js
readReadable
API by @armanbilge in #2663 - Upgrade scalacheck-effect to 1.0.3 by @mpilquist in #2661
New Contributors
- @stephennancekivell made their first contribution in #2644
Full Changelog: v3.1.3...v3.1.4
v2.5.10
Supports Cats Effect 2 and built for Scala 2.12, 2.13, and 3 final.
What's Changed
- Update sbt-scalafmt to version 2.4.3 by @vasilmkd in #2474
- Update Scala to version 3.0.1 by @vasilmkd in #2475
- Update sbt to version 1.5.5 by @vasilmkd in #2486
- Update sbt-mdoc to 2.2.22 by @vasilmkd in #2499
- Update cats-effect to version 2.5.2 by @vasilmkd in #2516
- Upgrade Scala.js to version
1.7.0
by @vasilmkd in #2560 - Scala, plugin and library updates by @vasilmkd in #2620
- Use AtomicReference instead of Ref by @notxcain in #2615
- Fix build warnings after upgrading Cats Effect by @vasilmkd in #2641
PipedStreamBuffer
circular copying overflow fix backport by @vasilmkd in #2640- Use the latest build of JDK 11 by @vasilmkd in #2646
- Rework
parJoin
to work with transformers by @vasilmkd in #2552 - Fix
Stream#concurrently
for short-circuiting monad transformers -2.5.x
by @vasilmkd in #2653
Full Changelog: v2.5.9...v2.5.10
v3.1.3
Supports Cats Effect 3 and built for Scala 2.12, 2.13, and 3 final.
FS2 3.1.3 is a bug fix release focused on performance.
Bugfixes:
Improvements:
- Remove unnecessary indexing in Chunk combinators (#2630)
- Make indexed traversal of
Chunk.Queue
amortized logarithmic time (#2631) - Improve performance of
parEvalMapUnordered
(#2626) - Implement
Files#realPath
(#2622) - Simplify internals (#2625)
- Refactor implementation of
groupWithin
(#2619) - Reworked
parJoin
to work with transformers (#2563)
Acknowledgments
➜ git shortlog -sn --no-merges "v3.1.2".."v3.1.3"
8 mpilquist
7 Michael Pilquist
6 Scala Steward
5 Vasil Vasilev
2 Arman Bilge
2 Diego E. Alonso Blas
1 Tim Spence
v3.1.2
Supports Cats Effect 3 and built for Scala 2.12, 2.13, and 3 final.
FS2 3.1.2 is a bug fix release which addresses a couple of memory leaks in certain types of streams.
Improvements:
- Fixed memory leak when
parJoin
is used withmerge
(#2602) - Add a convenient shorthand for predicating effects on a boolean signal (#2596)
- Make Compression[F] cross-platform and implement on Node.js (#2587)
- Introduce
fs2.io.ClosedChannelException
(#2582) - Special case for
parEvalMap
with max concurrency of 1 (#2577)
Acknowledgments
➜ git shortlog -sn --no-merges "v3.1.1".."v3.1.2"
12 Scala Steward
11 Arman Bilge
3 Stephen Judkins
3 Diego E. Alonso Blas
2 slice
2 Michael Nikolich
1 Ben Stewart
1 mpilquist
1 Adam Rosien
v3.1.1
Supports Cats Effect 3 and built for Scala 2.12, 2.13, and 3 final.
FS2 3.1.1 is a bug fix release which addresses a memory leak in map
on certain types of streams.
Improvements:
Acknowledgments
➜ git shortlog -sn --no-merges "v3.1.0".."v3.1.1"
6 Michael Pilquist
3 Arman Bilge
2 Diego E. Alonso Blas
2 Scala Steward
1 Ross A. Baker
1 Vasil Vasilev
1 Christopher Davenport
1 Philipp Hoffmann
1 Rehan Mahmood
v3.1.0
Supports Cats Effect 3 and built for Scala 2.12, 2.13, and 3 final.
FS2 3.1.0 features new support for Node.js in the fs2-io module, including cross platform APIs for TCP, UDP, TLS, and file management. The fs2.io.file
package has been substantially revamped, removing all dependencies on Java APIs, providing a much nicer experience (though binary compatibility with 3.0.x is provided). The biggest change is the introduction of fs2.io.file.Path
as an alternative for java.nio.file.Path
-- the former has an idiomatic Scala API and works on both the JVM and Node.js. See the Files section of the microsite for some examples.
Features:
- Update
fs2.io.net
to build for Node.js and JVM (#2453) - Update
fs2.io.file
package to build for Node.js and JVM and remove dependencies on Java APIs (#2519) - Implement
unchunks
as the inverse ofchunks
(#2506)
Improvements:
- Improve performance from
Stream.fromQueueUnterminated
andStream.fromQueueNoneTerminated
by @jordiolivares (#2521) - Miscellaneous simplifications & optimizations to main stream interpreter (#2480 #2493 #2501 #2507 #2508 #2524)
- Add a
Monoid[Chunk]
instance (#2470) - Add
text.hex.{encode, decode}
(#2477)
Acknowledgments
Special thanks to @armanbilge who implemented all of the Node.js support in fs2-io as well as in a number of downstream libraries!
➜ git shortlog -sn --no-merges "v3.0.6".."v3.1.0"
121 Arman Bilge
89 Michael Pilquist
9 Scala Steward
6 Andrew Valencik
6 Diego E. Alonso Blas
3 Jordi Olivares Provencio
2 Stanislav Kovalenko
2 nikiforo
1 Jordi Olivares
1 Giovanni Ruggiero
v2.5.9
v3.0.6
Supports Cats Effect 3 and built for Scala 2.12, 2.13, and 3 final.
Fixes:
- Fixed regression in
readOutputStream
(#2459) - Fix TLS socket read stall immediately after handshake (#2461)
- Avoid allocations in TLSEngine when logging is disabled (#2462)
Improvements:
- Add
Pull.sleep
(#2456)
Acknowledgments
➜ git shortlog -sn --no-merges "v3.0.5".."v3.0.6"
3 Vasil Vasilev
2 Michael Pilquist
1 Diego E. Alonso Blas
1 Scala Steward
1 nikiforo
v2.5.8
v3.0.5
Supports Cats Effect 3 and built for Scala 2.12, 2.13, and 3 final.
Fixes:
- Fixed thread handling gotcha when using readOutputStream (#2037 #2383)
- Fixed bug in
sliding
that delayed output by a chunk (#2428) - Fixed a bug in
TLSContext.insecure
where TLS sessions would fail with NPE (#2431) - Fixed TCP socket options to server and client sockets get correct options (#2421)
Improvements:
- Simplified implementation of
zipWithAll
(#2452) - Add partial apply factory for SignallingRef (#2406)
- Internal interpreter simplifications (#2445 #2433 #2416 #2430 #2417)
Acknowledgments
➜ git shortlog -sn --no-merges "v3.0.4".."v3.0.5"
24 Vasil Vasilev
12 Scala Steward
6 Diego E. Alonso Blas
4 Erlend Hamnaberg
1 Arman Bilge
1 jilen
1 Artem Nikiforov
1 Ivan V. Smirnov
1 Michael Pilquist