native_socket 0.4.1
native_socket: ^0.4.1 copied to clipboard
Use unix sockets via file descriptors.
0.4.1 #
- Fix prebuilt hash mismatch: regenerate manifest to
c4cd1a02.../68dad7...matchingnative_socket-v0.4.0release (7b215320...was stale, causedArchive hash mismatchinwayland/bardash). - Bump
native_prebuiltto^0.4.0(code_assets ^1.2.1,hooks ^2.1.0,sdk >=3.10.4). - Fix CI prebuilt merge (flat
linux/vs nestedandroid-*/) and bump GitHub Actions to Node 24 (checkout@v5,upload@v6,download@v7,git-auto-commit@v7,gh-release@v3).
0.4.0 #
- Add Android prebuilt targets.
- Update
native_prebuiltdependency to the published 0.2.0 release. - Declare macOS support via source fallback.
- Bump the native prebuilt tag to
native_socket-v0.4.0.
0.4.0-wip.5 #
- Add
android-armprebuilt target. - Update
native_prebuiltdependency to the published 0.2.0 release. - Declare macOS support via source fallback.
- Bump the native prebuilt tag to
native_socket-v0.4.0-wip.5.
0.4.0-wip.4 #
- Add Android prebuilt targets.
- Update
native_prebuiltdependency to the published 0.2.0 release. - Declare macOS support via source fallback.
- Bump the native prebuilt tag to
native_socket-v0.4.0-wip.4.
0.4.0-wip.3 #
- Update
native_prebuiltdependency to the published 0.2.0 release. - Declare macOS support via source fallback.
- Bump the native prebuilt tag to
native_socket-v0.4.0-wip.3.
0.4.0-wip #
- New high-level Dart API:
UnixSocketclass withconnect(),bind(),accept(),pair(),send(),receive(),sendTo(),receiveFrom(),split() - Address types:
Address.file()andAddress.abstract()for filesystem-path and abstract namespace addressing - SocketType enum:
SocketType.stream(connection-oriented) andSocketType.datagram(message-boundary-preserving) - NativeBuffer: heap-backed and native (off-heap) buffers with zero-copy
slicing — inspired by Java NIO
ByteBufferand NettyByteBuf - Server sockets: full bind/listen/accept workflow
- SCM_RIGHTS fd passing:
send()withfd:argument andreceiveFd() - Socket options:
setSendBufferSize,getSendBufferSize,setReceiveBufferSize,getReceiveBufferSize,setLinger - Split halves:
SocketReader/SocketWriterfor concurrent I/O - Path cleanup:
unlink()andcloseAndUnlink()for Unix socket files - Expanded C API:
create_socket,bind_socket,bind_socket_abstract,listen_socket,accept_socket,connect_unix_socket,connect_unix_socket_abstract,send_to,send_to_abstract,recv_from,set_so_sndbuf/rcvbuf/linger,get_so_sndbuf/rcvbuf,unlink_socket_path,socket_has_data - Migrate to
package:hooks2.0.0,package:code_assets1.0.0+,package:native_toolchain_c0.19.0+ - Programmatic
package:ffigenconfig (tool/generate_bindings.dart) replaces YAMLffigen:block inpubspec.yaml - 55 tests covering all new APIs
- Fix:
recv_bytesreturn type corrected tossize_t - Fix:
receive()no longer returns view into freed calloc memory (use-after-free) - Fix:
pair()uses correct pointer width (IntnotIntPtr) on 64-bit - Fix: EAGAIN retry loop in
receive()andreceiveFrom() - Remove dead
lib/src/socket.dart(old UnixSocket class)
0.3.0 #
- Initial hooks support
0.2.0 #
- Add support for checking if sockets have data available
0.1.0 #
- Initial version.