# 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

### Added

- Added `have-strchr` feature to disable including `strchr` (#2096)
- Adding a way to deinitialize the WiFi stack (#2187)

### Changed

- esp-wifi now allocates memory from the global allocator provided by `esp-alloc` (#2099)
- Renamed the `wifi-logs` feature to `sys-logs` for consistency (#2183)
- Updated drivers to v5.3.1 (#2239)

### Fixed

- Feature `sys-logs` doesn't break the build anymore (#2117)
- Fixed a panic when overflow-checks are enabled (#2164)
- Create mutexes in heap memory, fixes running out of mutexes when connecting and disconnecting to a WPA2-ENTERPRISE ap multiple times (#2202)

### Removed

- Removed the `clocks` parameter from `esp_wifi::initialize` (#1999)
- `cfg_toml` configuration system has been removed in favour of [esp-config](https://docs.rs/esp-config) (#2156)
- Removed the `embedded-svc` traits and feature (#2235)
- Removed the `log` feature from default features (#2253)
- Removed the `enumset` feature (#2297)

## 0.9.1 - 2024-09-03

### Added

### Changed

### Fixed

- Builds on stable, again (#2067)

### Removed

## 0.9.0 - 2024-09-03

### Added

- Added support for WPA2-ENTERPRISE (#2004)

### Changed

### Fixed

### Removed

## 0.8.0 - 2024-08-29

### Added

- Implement `embedded_io::{ReadReady, WriteReady}` traits for `WifiStack` (#1882)
- Implement `queue_msg_waiting` on the os_adapter (#1925)
- Added API for promiscuous mode (#1935)
- Implement `bt_hci::transport::Transport` traits for BLE (#1933)

### Changed

- Changed `init` to accept timers of multiple types (#1957)

### Fixed

- Increased NPL event queue size to prevent overflow (#1891)

## 0.7.1 - 2024-07-17

### Changed

- Check no password is set when using `AuthMethod::None`(#1806)

### Fixed

- Downgrade `embedded-svc` to 0.27.1 (#1820)

## 0.7.0 - 2024-07-15

### Added

- Add support for `Protocol::P802D11BGNAX` (#1742)

### Fixed

- Fixed `set_mode` functionality (#1742)

### Changed

- `esp_wifi::initialize` no longer requires running maximum CPU clock, instead check it runs above 80MHz. (#1688)
- Rename `set_mode` to `set_protocol`, also available in esp-now API (#1742)
- `esp_wifi::initialize` now takes a `PeriodicTimer<ErasedTimer>` (#1753)

## 0.6.0 - 2024-06-04

### Removed

- Removed embedded-hal v0.2 dependency

## 0.5.1 - 2024-04-22

Patch release to fix docs.rs build

## 0.5.0 - 2024-04-19

### Fixed

- Fix compile error when using smoltcp `DNS_MAX_RESULT_COUNT` values other than 1

## 0.4.0 - 2024-03-12

### Changed

- Users don't need embedded-svc to control wifi anymore. The wifi trait is optionally implemented now. (#429)
- Better network performance by forced yielding of the task when buffers are full / empty. (#430)
- Depend on esp-hal 0.16.1, update other dependencies

## 0.3.0 - 2024-01-29

### Added

- Include coex in list of enabled features for docs.rs (#405)

### Fixed

- Small correction to coex warning message (#404)
- Use a random local port when initializing the wifi stack. (#414)

### Changed

- Update driver blobs (#410)
- Update dependencies to fit `embedded-hal` `1.0`

### Removed

## 0.2.0 - 2024-01-05

Initial release supporting WiFi on ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6, supporting BLE on WiFi on ESP32, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6, ESP32-H2

## 0.1.0 - 2023-11-27

Initial release supporting WiFi on ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6, supporting BLE on WiFi on ESP32, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-C6
