Releases: Kotlin/kotlinx-io
v0.5.1
v0.5.0
Features
-
Provided an API allowing direct access to Buffer and Segment internals #135, #166
The API is unsafe, delisted from public docs and requires explicit opt-in. It's recommended to avoid this API unless you're working on integration with other APIs (like,
java.nio
orio_uring
, for example). -
Improved the way segment pooling is working on JVM #352
Now sharing a segment won't make an original segment and all its copies recyclable. Instead, the last remaining copy will be placed back into the pool when recycled.
Segments are no longer allocated or lost when taking or recycling a segment from a pool under a high contention due to concurrent requests.
The size of the segment pool on the JVM could now be statically configured by setting a system propertykotlinx.io.pool.size.bytes
.
Thanks to @bjhham, @e5l, @lppedd, @qwwdfsad, @shanshin, and @whyoleg for their participation in this release release!
v0.4.0
v0.3.5
v0.3.4
v0.3.3
The release replaces a required reasoning API uses with alternatives that do not require any app’s privacy manifest updates for iOS/iPadOS/tvOS/watchOS apps.
Features
- Reimplemented file metadata gathering without required reasoning APIs on Apple targets #297
- Updated Kover version #293
Bugfixes
- Muted Webpack warnings about node-js modules on JS target #285
v0.3.2
v0.3.1
Features
- Updated Kotlin to
1.9.22
- Enabled Wasm Wasi target #236 (Note that neither of Wasm targets has filesystem support yet)
- Support path resolution #228
- Dokka configs are improved
Bugfixes
v0.3.0
Features
- Enabled Wasm target #164
- Added Sink/Source integration with Apple's NSInputStream and NSOutputStream (#174)
- Added extension functions integrating ByteString with Base64 and HexFormat APIs (#149)
- Added extension functions to read and write floating point numbers (#167)
- Extended filesystems support by adding functions to create and delete files and directories, check their existence,
perform atomic move, and get file size (#211, #214).
Also extended Path's API to request Path's parent and to get file's name (#206, #212). - Updated Kotlin version to 1.9.10
Bugfixes
- Fixed undefined behavior in the ByteString's hashCode computation on native targets (#190)
- Fixed compatibility issues with Android API 25 and below (#202)
Shout out to @shanshin, @jeffdgr8, @whyoleg and @qwwdfsad for contributing changes and reviewing the code.