Skip to content

Latest commit

 

History

History
265 lines (166 loc) · 6.27 KB

CHANGELOG.md

File metadata and controls

265 lines (166 loc) · 6.27 KB

0.6.3 (July 15, 2024)

Added

  • Add try_write to TcpStream (#176)
  • Add ability to run hosts in random order (#173)
  • Add API parity stubs for UDP sockets/TCP streams (#174)

0.6.2 (April 3, 2024)

Added

  • Enable tokio io driver (#171)

Fixed

  • Make sim_elapsed function safe to call outside of simulation (#170)

0.6.1 (January 10, 2024)

Added

  • Documentation on using tracing with Turmoil (#155 #164)
  • Add a check for port exhaustion (#157)
  • Add `turmoil::sim_elapsed`` for retrieving total simulation virtual time (#164)
  • Update Axum example to use axum 0.7 and hyper 1 (#154)

0.6.0 (November 17, 2023)

Added

  • Documentation to the sim builder (#152)

Fixed

  • Avoid trying to spawn on teardown when rt is gone (#153)
  • Deliver loopback packets in the next step (#153)

Breaking

  • Remove rng from sim builder as it wasn't applied when building. This is technically a bug fix, but will break consumers. Use build_with_rng instead (#150)

0.5.8 (November 6, 2023)

Fixed

  • Fix subtraction overflow bug with latency (#147)
  • Fix ephemeral port leak upon tcp stream shutdown (#145)

0.5.7 (October 20, 2023)

Added

  • Add reverse DNS resolution capabilities (#141)

Fixed

  • Fix duplicate FIN in the drop glue (#142)
  • Extend loopback workaround (#140)

0.5.6 (July 24, 2023)

Added

  • Return io::Error instead of panicking (#130)
  • Add network manipulation capabilities to Sim (#129)
  • Tracing improvments (#124)

0.5.5 (June 6, 2023)

Added

  • Make socket buffer capacity configurable (#121)

Fixed

  • Fix reverse dns lookups on static binds (#120)

0.5.4 (May 23, 2023)

Added

  • Support ephemeral port assignments on bind (#110)
  • Add support for Ipv6 network/binds (#113)
  • Add support for loopback (#118)

Fixed

  • Filter out equal IpAddrs for regex matching (#116)
  • Remove inconsistent address resolution (#114)
  • Fix bug in binding an in use port (#117)

0.5.3 (Mar 22, 2023)

Added

  • Expose whether a host has software running (#108)
  • DNS improvements (#109)

Fixed

  • Fix AsyncRead impl for TcpStream (#107)

0.5.2 (Mar 13, 2023)

Added

0.5.1 (Mar 1, 2023)

Added

  • gRPC example (#81)
  • axum example (#91)

Fixed

  • Handle task cancellation due to crashing a host (#85)
  • Remove runtime after host crashes (#89)

0.5 (Feb 8, 2023)

Added

  • Expose a mechanism to manually drive the Sim (#76)
  • Add option to query hosts via regex (#77)
  • Add network topology introspection (#78)

Changed

  • The following methods use a new trait (ToIpAddrs) for host lookup which includes the same implementations as ToIpAddr.
    • Sim#bounce
    • Sim#crash
    • Sim#set_link_fail_rate
    • Sim#set_max_message_latency
    • repair
    • partition
    • release
    • hold

0.4 (Jan 10, 2023)

Added

  • Add more type conversions for ToSocketAddrs (#71)
  • Add host error support (#67)

Changed

  • Make tokio unstable opt in (#73)
  • Rename ToSocketAddr to ToSocketAddrs (#60)

0.3.3 (Dec 7, 2022)

Fixed

  • Fix host elapsed time across software restarts (#65)

0.3.2 (Nov 14, 2022)

Added

  • Expose the sim's epoch and elapsed duration (#54)

0.3.1 (Nov 9, 2022)

Added

  • Add local/peer addrs to tcp types
  • Expose host elapsed time

Changed

  • Use tracing levels for different network events (#53)

Fixed

  • Fix host crash behavior (#52)

0.3.0 (Oct 28, 2022)

Added

  • Bind to multiple ports per host
  • Simulated networking (UDP and TCP) that mirror tokio::net
  • Client host error handling

Changed

  • Logging uses tracing for writing events

0.2.0 (Aug 11, 2022)

  • Initial release