|
@@ -0,0 +1,48 @@
|
|
|
+# Changelog
|
|
|
+All notable changes to this project will be documented in this file.
|
|
|
+
|
|
|
+The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
+and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
+
|
|
|
+## [Unreleased]
|
|
|
+
|
|
|
+No unreleased changes yet
|
|
|
+
|
|
|
+## [0.7.0] - 2021-01-20
|
|
|
+
|
|
|
+### New features
|
|
|
+- tcp: Allow distinguishing between graceful (FIN) and ungraceful (RST) close. On graceful close, `recv()` now returns `Error::Finished`. On ungraceful close, `Error::Illegal` is returned, as before. (#351)
|
|
|
+- sockets: Add support for attaching async/await Wakers to sockets. Wakers are woken on socket state changes. (#394)
|
|
|
+- tcp: Set retransmission timeout based on an RTT estimation, instead of the previously fixed 100ms. This improves performance on high-latency links, such as mobile networks. (#406)
|
|
|
+- tcp: add Delayed ACK support. On by default, with a 10ms delay. (#404)
|
|
|
+- ip: Process broadcast packets directed to the subnet's broadcast address, such as 192.168.1.255. Previously broadcast packets were
|
|
|
+only processed when directed to the 255.255.255.255 address. (#377)
|
|
|
+
|
|
|
+### Fixes
|
|
|
+- udp,raw,icmp: Fix packet buffer panic caused by large payload (#332)
|
|
|
+- dhcpv4: use offered ip in requested ip option (#310)
|
|
|
+- dhcpv4: Re-export dhcp::clientv4::Config
|
|
|
+- dhcpv4: Enable `proto-dhcpv4` feature by default. (#327)
|
|
|
+- ethernet,arp: Allow for ARP retry during egress (#368)
|
|
|
+- ethernet,arp: Only limit the neighbor cache rate after sending a request packet (#369)
|
|
|
+- tcp: use provided ip for TcpSocket::connect instead of 0.0.0.0 (#329)
|
|
|
+- tcp: Accept data packets in FIN_WAIT_2 state. (#350)
|
|
|
+- tcp: Always send updated ack number in `ack_reply()`. (#353)
|
|
|
+- tcp: allow sending ACKs in FinWait2 state. (#388)
|
|
|
+- tcp: fix racey simultaneous close not sending FIN. (#398)
|
|
|
+- tcp: Do not send window updates in states that shouldn't do so (#360)
|
|
|
+- tcp: Return RST to unexpected ACK in SYN-SENT state. (#367)
|
|
|
+- tcp: Take MTU into account during TcpSocket dispatch. (#384)
|
|
|
+- tcp: don't send data outside the remote window (#387)
|
|
|
+- phy: Take Ethernet header into account for MTU of RawSocket and TapInterface. (#393)
|
|
|
+- phy: add null terminator to c-string passed to libc API (#372)
|
|
|
+
|
|
|
+### Quality of Life™ improvements
|
|
|
+- Update to Rust 2018 edition (#396)
|
|
|
+- Migrate CI to Github Actions (#390)
|
|
|
+- Fix clippy lints, enforce clippy in CI (#395, #402, #403, #405, #407)
|
|
|
+- Use #[non_exhaustive] for enums and structs (#409, #411)
|
|
|
+- Simplify lifetime parameters of sockets, SocketSet, EthernetInterface (#410, #413)
|
|
|
+
|
|
|
+[Unreleased]: https://github.com/smoltcp-rs/smoltcp/compare/v0.7.0...HEAD
|
|
|
+[0.7.0]: https://github.com/smoltcp-rs/smoltcp/compare/v0.6.0...v0.7.0
|