# Changelog
## [0.19.0] - 2024-01-31
### Breaking changes

 - `InfoBridge::RootId` and `InfoBridge::BridgeId` changed. (fb497b3)

### New features
 - Support bridge bond port information. (faffa52)
 - Support RTM_NEWPREFIX. (2a43e1c)
 - Add `Default` derive to `TcFqCodelQdStats` and etc. (e21122e)

### Bug fixes
 - N/A

## [0.18.1] - 2023-12-05
### Breaking changes

 - N/A

### New features
 - N/A

### Bug fixes
 - Fix crash on RuleFlag of `attempt to subtract with overflow`. (ece8735)

## [0.18.0] - 2023-12-05
### Breaking changes

 - MASSIVE changes to API in order to 1.0 preparation. Please check
   document or code for detail. Sorry for the inconvenience.

### New features
 - Support HSR interface. (37f9c5c)

### Bug fixes
 - vxlan: Do not fail on unknown option. (2457bdf)
 - bond: Do not fail on unknown option. (acac109)
 - vlan: Do not fail on unknown option. (1617948)

## [0.17.1] - 2023-08-30
### Breaking changes
 - N/A

### New features
 - Add support of MACsec interface. (050fd64)

### Bug fixes
 - vxlan: fix port-range attribute marshalling. (55de269)
 - vxlan: fix port-range attribute endianness. (ce406b2)
 - vxlan: fix port attribute endianness. (927bdd7)

## [0.17.0] - 2023-07-10
### Breaking changes
 - `InfoVlan::EgressQos(Vec<u8>)` changed to
   `InfoVlan::EgressQos(Vec<VlanQosMapping>)`. (2d33edb)
 - `InfoVlan::IngressQos(Vec<u8>)` changed to
   `InfoVlan::IngressQos(Vec<VlanQosMapping>)`. (2d33edb)

### New features
 - Added rich representation for VLAN QOS mapping. (2d33edb)
 - Added MacVlan IFLA_MACVLAN_BC_ options. (640be35)

### Bug fixes
 - N/A

## [0.16.1] - 2023-07-10
### Breaking changes
 - N/A

### New features
 - N/A

### Bug fixes
 - Use latest rust-netlink crates. (2eda618)

## [0.16.0] - 2023-06-25
### Breaking changes
 - Replaced all `slave` to `port`. (bfa1ec3)
    * `InfoBond::ActiveSlave` -> `InfoBond::ActivePort`
    * `InfoBond::AllSlavesActive` -> `InfoBond::AllPortsActive`
    * `InfoBond::PacketsPerSlave` -> `InfoBond::PacketsPerPort`
    * `SlaveState` -> `BondPortState`
    * `link_infos::Info::SlaveKind` -> `link_info::Info::PortKind`
    * `link_infos::Info::SlaveData` -> `link_info::Info::PortData`
    * `link_infos::InfoSlaveData` -> `link_info::InfoPortData`

### New features
 - Add support of bond port settings. (83c9689)
 - Add support of TC matchall filter. (d71b961)
 - Add egress builder for TcNat type. (62d2411)
 - Add the nat action to tc. (c80c678)
 - Add XDP nlas structure support. (75ce74c)

### Bug fixes
 - Set `NLM_F_NESTED` for `TCA_ACT_OPTIONS` type. (a93b651)

## [0.15.0] - 2023-01-28
### Breaking changes
 - Removed these reexports. (8784586)
    * `netlink_packet_route::ErrorMessage`
    * `netlink_packet_route::NetlinkBuffer`
    * `netlink_packet_route::NetlinkHeader`
    * `netlink_packet_route::NetlinkMessage`
    * `netlink_packet_route::NetlinkPayload`
    * `netlink_packet_route::traits`
    * `netlink_packet_route::DecodeError`
 - Remove internal fuzz sub-crate. (f2ffa9d)

### New features
 - N/A

### Bug fixes
 - N/A

## [0.14.1] - 2023-01-28
### Breaking changes
 - N/A

### New features
 - N/A

### Bug fixes
 - Bridge VLAN: Fixed incorrect constants. (6994712)

## [0.14.0] - 2023-01-28
### Breaking changes
 - All public struct and enum are marked as `non_exhaustive`. Please check
   https://doc.rust-lang.org/reference/attributes/type_system.html for more
   detail. (0b98180)

### New features
 - LinkAddRequest: Allow adding XFRM tunnel with if_id mark. (5507d97)
 - Bridge: Add support of `IFLA_BR_MCAST_QUERIER_STATE`. (3d91fdf)
 - LinkAddRequest: Allow adding macvtap on a link. (dabd5dc)

### Bug fixes
 - Fix panics when using iif or oif with ip rule. (dab602e)
