toad 0.19.1

Universal implementation of the CoAP networking protocol
Documentation
# Changelog

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

## [0.19.1]https://github.com/toad-lib/toad/compare/toad-v0.19.0...toad-v0.19.1 (2023-04-26)


### Bug Fixes

* retry should drop state on RESET ([#337]https://github.com/toad-lib/toad/issues/337) ([bf8924a]https://github.com/toad-lib/toad/commit/bf8924ae641863a937db3560892e3f125b0824a6)

## [0.19.0]https://github.com/toad-lib/toad/compare/toad-v0.18.0...toad-v0.19.0 (2023-04-26)


### Features

* logging in provisionids, provisiontokens ([#335]https://github.com/toad-lib/toad/issues/335) ([74e59a1]https://github.com/toad-lib/toad/commit/74e59a1418c55a482ce9f2275e706271a42fe898)


### Bug Fixes

* retry logging + tests rework ([#334]https://github.com/toad-lib/toad/issues/334) ([22804e5]https://github.com/toad-lib/toad/commit/22804e59db8c798e7bf17e47cca94dcdbe552f06)

## [0.18.0]https://github.com/toad-lib/toad/compare/toad-v0.17.7...toad-v0.18.0 (2023-04-24)


### Features

* add many String inherent methods and functionality ([#332]https://github.com/toad-lib/toad/issues/332) ([6ee3d8c]https://github.com/toad-lib/toad/commit/6ee3d8ce1f491609c91764e55105f93b370b538f)

## [0.17.7]https://github.com/toad-lib/toad/compare/toad-v0.17.6...toad-v0.17.7 (2023-04-24)


### Bug Fixes

* handleAcks should log expected tokens when ignoring an ack ([#328]https://github.com/toad-lib/toad/issues/328) ([0846759]https://github.com/toad-lib/toad/commit/084675940b1dedcdd31d31d099324ca14328cc64)

## [0.17.6]https://github.com/toad-lib/toad/compare/toad-v0.17.5...toad-v0.17.6 (2023-04-23)


### Bug Fixes

* step order ([#326]https://github.com/toad-lib/toad/issues/326) ([2cb4182]https://github.com/toad-lib/toad/commit/2cb4182f0c2085cdc27b41c8bb582325e2707047)

## [0.17.5]https://github.com/toad-lib/toad/compare/toad-v0.17.4...toad-v0.17.5 (2023-04-22)


### Bug Fixes

* add traces to observe ([#323]https://github.com/toad-lib/toad/issues/323) ([8c7f023]https://github.com/toad-lib/toad/commit/8c7f023f396ab01ae17746112e440db976c4d878)

## [0.17.4]https://github.com/toad-lib/toad/compare/toad-v0.17.3...toad-v0.17.4 (2023-04-17)


### Bug Fixes

* HandleAck should support piggyACK, Snapshot should impl Debug ([#312]https://github.com/toad-lib/toad/issues/312) ([789adaa]https://github.com/toad-lib/toad/commit/789adaa87d8acfd5fe9193c677413812f879f7d1)

## [0.17.3]https://github.com/toad-lib/toad/compare/toad-v0.17.2...toad-v0.17.3 (2023-04-07)


### Bug Fixes

* update toad-msg ([#293]https://github.com/toad-lib/toad/issues/293) ([bf4e7d6]https://github.com/toad-lib/toad/commit/bf4e7d6c89b3338a4a1c2cdb59bac36578cd1546)

## [0.17.2]https://github.com/toad-lib/toad/compare/toad-v0.17.1...toad-v0.17.2 (2023-03-18)


### Bug Fixes

* **toad:** use microcrates ([#260]https://github.com/toad-lib/toad/issues/260) ([7770654]https://github.com/toad-lib/toad/commit/7770654943a9c3f5e32065c952103e52c62cdcd7)

## [0.17.1]https://github.com/toad-lib/toad/compare/toad-v0.17.0...toad-v0.17.1 (2023-03-12)


### Bug Fixes

* ci ([3e3af9d]https://github.com/toad-lib/toad/commit/3e3af9dff55d20f3f69de4dfd696f4c52e20b3d2)

## [0.17.0]https://github.com/toad-lib/toad/compare/toad-v0.16.0...toad-v0.17.0 (2023-03-06)


### ⚠ BREAKING CHANGES

* **toad:** update toad-msg, fix warnings ([#233]https://github.com/toad-lib/toad/issues/233)

### Features

* **toad:** update toad-msg, fix warnings ([#233]https://github.com/toad-lib/toad/issues/233) ([3a19673]https://github.com/toad-lib/toad/commit/3a19673aceee6672f5fd7bf3b50832c178ff939f)

## [0.16.0]https://github.com/toad-lib/toad/compare/toad-v0.15.0...toad-v0.16.0 (2023-03-04)


### Features

* **toad:** runtime should support pubsub via observe ([#229]https://github.com/toad-lib/toad/issues/229) ([a33cb3c]https://github.com/toad-lib/toad/commit/a33cb3c573b525f3785442be44daf6bcd14f78ef)

## [0.15.0]https://github.com/toad-lib/toad/compare/toad-v0.14.0...toad-v0.15.0 (2023-02-07)


### Features

* add server method filters ([#217]https://github.com/toad-lib/toad/issues/217) ([0ec28c7]https://github.com/toad-lib/toad/commit/0ec28c71ef9ef09021ba5b903f8cecc9c8e2b9ac)

## [0.14.0]https://github.com/toad-lib/toad/compare/toad-v0.13.0...toad-v0.14.0 (2023-02-06)


### Features

* add JSON response support ([#215]https://github.com/toad-lib/toad/issues/215) ([645a2ed]https://github.com/toad-lib/toad/commit/645a2edff475d9d766af2afbad5a2d1ed136e4e9)

## [0.13.0]https://github.com/toad-lib/toad/compare/toad-v0.12.2...toad-v0.13.0 (2023-01-31)


### ⚠ BREAKING CHANGES

* **toad:** rewrite server, client, platform, core abstractions  ([#197]https://github.com/toad-lib/toad/issues/197)

### Features

* **toad:** rewrite server, client, platform, core abstractions  ([#197]https://github.com/toad-lib/toad/issues/197) ([e77f8cc]https://github.com/toad-lib/toad/commit/e77f8ccfc84e144cdf9b8217810212f05b362b53)

## [0.12.2]https://github.com/toad-lib/toad/compare/toad-v0.12.1...toad-v0.12.2 (2023-01-24)


### Bug Fixes

* add existing release-please tags ([0d4bf22]https://github.com/toad-lib/toad/commit/0d4bf22b37ff0e2e1e5a27b79355fe2cfec80793)

### 0.12.1 (2023-01-22)

## 0.12.0 (2022-10-21)


### ⚠ BREAKING CHANGES

* lightly revise blocking client api (#148)

### Bug Fixes

* lightly revise blocking client api ([#148]https://github.com/clov-coffee/toad/issues/148) ([f6181fb]https://github.com/clov-coffee/toad/commit/f6181fbf9a034ab1d861d5a3257941b0f42b608a)

### 0.11.1 (2022-10-20)


### Bug Fixes

* **toad:** update toad-msg -> 0.8.1, toad-common -> 0.11.0 ([#146]https://github.com/clov-coffee/toad/issues/146) ([8d68cb1]https://github.com/clov-coffee/toad/commit/8d68cb1789acc89905a4d76981874276e8df231a)

## 0.11.0 (2022-10-08)


### ⚠ BREAKING CHANGES

* rename kwap -> toad (#139)

### Features

* rename kwap -> toad ([#139]https://github.com/clov-coffee/toad/issues/139) ([e7d4b4b]https://github.com/clov-coffee/toad/commit/e7d4b4b61f9bd41b6abb8c933c3d2602cf5d4333)

## 0.10.0 (2022-06-17)


### ⚠ BREAKING CHANGES

* **toad:** add dtls support (#131)

### Features

* **toad:** add dtls support ([#131]https://github.com/clov-coffee/toad/issues/131) ([0e4b7ae]https://github.com/clov-coffee/toad/commit/0e4b7ae7ffa5a94da2f5967ffa37735962ac51a0)

## 0.9.0 (2022-06-01)


### ⚠ BREAKING CHANGES

* **toad:** add support for multicast, improve server ux (#129)

### Features

* **toad:** add support for multicast, improve server ux ([#129]https://github.com/clov-coffee/toad/issues/129) ([0ebfcd0]https://github.com/clov-coffee/toad/commit/0ebfcd0a7a2a74ca928b9d10602f9d24420d3404)

### 0.8.1 (2022-05-26)


### Features

* **toad:** add logging ([#127]https://github.com/clov-coffee/toad/issues/127) ([73d538d]https://github.com/clov-coffee/toad/commit/73d538d2793afbf4ae993a48668bdddaa9d5bf10)

## 0.8.0 (2022-05-25)


### ⚠ BREAKING CHANGES

* **toad:** support ipv4 and ipv6 (#126)

### Features

* **toad:** support ipv4 and ipv6 ([#126]https://github.com/clov-coffee/toad/issues/126) ([9150ca1]https://github.com/clov-coffee/toad/commit/9150ca13950db5c8f17f0963f3ae111f8362ba79)

### 0.7.3 (2022-05-22)

### 0.7.2 (2022-05-21)


### Features

* **toad:** calc EXCHANGE_LIFETIME & discard old tokens/ids ([#122]https://github.com/clov-coffee/toad/issues/122) ([b7001d5]https://github.com/clov-coffee/toad/commit/b7001d5b24d6e74889ea86aad44b4c74f6c07d5e)

### 0.7.1 (2022-05-21)


### Features

* **toad:** add support for coap runtime config ([9c8ef54]https://github.com/clov-coffee/toad/commit/9c8ef541d89e8430010845f3b0f1ec7f06a220c7)

## 0.7.0 (2022-05-20)


### ⚠ BREAKING CHANGES

* **toad:** Choose CON / NON responses to NON requests (#117)

### Features

* **toad:** Choose CON / NON responses to NON requests ([#117]https://github.com/clov-coffee/toad/issues/117) ([5d39603]https://github.com/clov-coffee/toad/commit/5d3960314ffef7cac4f896d92c056d6e9100f10e)

### 0.6.2 (2022-05-14)


### Features

* **toad:** servers should automatically respond to ping requests  ([#113]https://github.com/clov-coffee/toad/issues/113) ([91de497]https://github.com/clov-coffee/toad/commit/91de4976db8289c4e1fe5cf8c2e29d7067a0a207)

### 0.6.1 (2022-05-10)

## 0.6.0 (2022-05-08)


### ⚠ BREAKING CHANGES

* **toad:** make module and type names more ergonomic (#88)

### Features

* **toad:** make module and type names more ergonomic ([#88]https://github.com/clov-coffee/toad/issues/88) ([8d33a64]https://github.com/clov-coffee/toad/commit/8d33a64884ddecce41b8c58e734d5edaa5b5c609)

### 0.5.5 (2022-05-07)

### 0.5.4 (2022-05-01)

### 0.5.3 (2022-05-01)

### 0.5.2 (2022-04-27)

### 0.5.1 (2022-04-27)


### Bug Fixes

* **toad:** update common ([#72]https://github.com/clov-coffee/toad/issues/72) ([4301139]https://github.com/clov-coffee/toad/commit/43011395ab6047c5a0b54784cbadfa2e171139e5)

## 0.5.0 (2022-04-25)


### ⚠ BREAKING CHANGES

* **toad:** reduce complexity (#69)

### Features

* **toad:** reduce complexity ([#69]https://github.com/clov-coffee/toad/issues/69) ([2762226]https://github.com/clov-coffee/toad/commit/2762226634e2a538bb3c3f3173792c32e7c4b8b9)

## 0.4.0 (2022-04-01)


### ⚠ BREAKING CHANGES

* **toad:** errors should be more ergonomic (#68)

### Features

* **toad:** errors should be more ergonomic ([#68]https://github.com/clov-coffee/toad/issues/68) ([cdb018d]https://github.com/clov-coffee/toad/commit/cdb018ddd04de63f385f22940e3e1f313a27d3b5)

### 0.3.7 (2022-02-12)


### Bug Fixes

* **toad:** add EventIO type marker for fns that fire events ([#67]https://github.com/clov-coffee/toad/issues/67) ([5ed5d9c]https://github.com/clov-coffee/toad/commit/5ed5d9c5db2c93afa20aa0034ad734789d400d87)

### 0.3.6 (2022-02-05)

### 0.3.5 (2022-02-04)


### Bug Fixes

* **toad:** support nons that do not receive a response ([#64]https://github.com/clov-coffee/toad/issues/64) ([27f64f1]https://github.com/clov-coffee/toad/commit/27f64f198dc8211d6a8d35cd5e54702f842a8da3)

### 0.3.4 (2022-01-29)

### 0.3.3 (2022-01-29)


### Features

* **toad:** add platformless blocking::Client::new and Config struct ([#60]https://github.com/clov-coffee/toad/issues/60) ([45c6a65]https://github.com/clov-coffee/toad/commit/45c6a65b72709d5ad37d042353e45c891ef88fc7)

### 0.3.2 (2022-01-28)

### 0.3.1 (2022-01-22)

## 0.3.0 (2022-01-15)


### ⚠ BREAKING CHANGES

* **toad:** we should retry sending CONfirmable messages until ACKed (#56)

### Features

* **toad:** we should retry sending CONfirmable messages until ACKed ([#56]https://github.com/clov-coffee/toad/issues/56) ([7de512d]https://github.com/clov-coffee/toad/commit/7de512dcb8ed4e24b9a725bb4add9d175864aab7)

## 0.2.0 (2022-01-15)


### ⚠ BREAKING CHANGES

* **toad:** remove interior mutability in Core (#55)

### Bug Fixes

* **toad:** remove interior mutability in Core ([#55]https://github.com/clov-coffee/toad/issues/55) ([768f4b9]https://github.com/clov-coffee/toad/commit/768f4b94c078958f54e18efa53d93ce1ab144182)

### 0.1.10 (2022-01-12)


### Features

* **toad:** core should allow pinging coap servers ([#53]https://github.com/clov-coffee/toad/issues/53) ([de7cfda]https://github.com/clov-coffee/toad/commit/de7cfda186b47ad1a41da2f9da922ceb2ea5e1ed)

### 0.1.9 (2022-01-11)

### 0.1.8 (2022-01-11)


### Bug Fixes

* **toad:** add error types to send_req ([#50]https://github.com/clov-coffee/toad/issues/50) ([818904a]https://github.com/clov-coffee/toad/commit/818904a039b3e7884d3411bc2cd0462f4f3f56a6)

### 0.1.7 (2022-01-11)

### 0.1.6 (2022-01-08)

### 0.1.5 (2022-01-08)


### Bug Fixes

* **toad:** client should work ([#46]https://github.com/clov-coffee/toad/issues/46) ([0e8058c]https://github.com/clov-coffee/toad/commit/0e8058c4e8a9828339e8c6d89e015f9a85c24242)

### 0.1.4 (2022-01-07)


### Features

* **toad:** runtime should support acting as client ([#45]https://github.com/clov-coffee/toad/issues/45) ([0d63c52]https://github.com/clov-coffee/toad/commit/0d63c52fa872e7a33ac7b298ae55e75870c1a147)

### 0.1.3 (2022-01-07)


### Features

* **toad:** initial commit of client ([#43]https://github.com/clov-coffee/toad/issues/43) ([f9f13cb]https://github.com/clov-coffee/toad/commit/f9f13cb67cc3d962c038f93a798261d8572c3fa5)

### 0.1.2 (2022-01-04)


### Features

* **toad:** add request type ([#39]https://github.com/clov-coffee/toad/issues/39) ([2fb2622]https://github.com/clov-coffee/toad/commit/2fb262260f80455e3649f99d7be763015a269b2d)

### 0.1.1 (2022-01-02)


### Features

* **toad:** rough cut of response struct ([#31]https://github.com/clov-coffee/toad/issues/31) ([306f30d]https://github.com/clov-coffee/toad/commit/306f30dbbb459cc7eae32db8b20f8d213dd23a2c)