# 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).

## [0.11.0]

### Changed

- Required Bevy version is now 0.16
- Bevy types are now being pulled in via their specific sub-crates, instead of the re-export on the main `bevy` crate. This change allows for better compiler performance, as it no longer forces the compilation of this library to wait for the entire Bevy suite to compile

### Removed

- Components that hold an `Entity` no longer implement `Serialize` or `Deserialize` when the `serialize` feature is enabled

## [0.10.0]

### Added

- Tag components for the different animation types, and dependencies to construct the correct component groupings
- Helper functions for grouping common animation types, replacing bundle usage

### Changed

- Required Bevy version is now 0.15

### Removed

- Removed `SpriteAnimationBundle`, `DirectionalAnimationBundle`, `SimpleAnimationBundle`, and `ChildAnimationBundle` in favour of component dependencies

## [0.9.2]

### Fixed

- Directional override animations were being skipped by the override animation filters
- Relational sync was being scheduled in the same set as animation ticks, potentially causing 1-frame desync based on
  Bevy scheduling

## [0.9.0]

### Changed

- Required Bevy version is now 0.14

## [0.8.0]

### Changed

- Required Bevy version is now 0.13

## [0.7.0]

### Added

- Add a series of WorldQuery types for retrieving animation components
- Add a series of WorldQuery types for filtering animation entities

### Changed

- Required Bevy version is now 0.12

### Removed

- `AnimationQuery` has been removed; instead, the ergonomics of controlling animations by manipulating components
  directly is much more ergonomic
- Support for `bevy_ecs_tilemap` has been dropped
-

## [0.6.0]

### Changed

- Required bevy version is now 0.11
- Optional bevy_ecs_tilemap version is now 0.11

## [0.5.0-beta.1]

### Changed

- Required bevy version is now 0.10
- Optional bevy_ecs_tilemap version is now 0.10

## [0.3.1]

### Fixed

- Child animations would not play correct animation when parent has an override

## [0.2.1]

### Fixed

- Action animation frames overflow

## [0.2.0]

### Added

- Constructor functions for `AnimationOverride`

### Changed

- `bevy` version `0.9`
- `bevy_ecs_tilemap` version `0.9`
- `AnimationOverride` now contains its own state

### Fixed

- `AnimationOverride` will play animation without needing to be driven by `apply_direction_animation`

## [0.1.1]

### Fixed

- "play once and then" animations could overflow frame array bounds