<commit_before># Unreleased Features
Please add a note of your changes below this heading if you make a Pull Request.

# Unreleased

### Added
* **Trapezoidal Trajectory Planner**
* Hook to execute protocol property written callback
* -Wdouble-promotion warning to compilation

### Changed
* Make python tools compatible with python 2.7 (so it can be used with ROS)
  * Threading API constructor can't take the daemon parameter, so all thread creation had to be expanded out.
  * `TimeoutError` isn't defined, but it makes for more readable code, so I defined it as an OSError subclass.
  * `ModuleNotFoundError` is replaced by the older ImportError.
  * Print function imported from future
* Using new hooks to calculate:
  * `motor.config.current_control_bandwidth`
    * This deprecates `motor.set_current_control_bandwidth()`
  * `encoder.config.bandwidth`
* Default value for `motor.resistance_calib_max_voltage` changed to 2.0

### Fixed
* An issue where the axis state machine would jump in and out of idle when there is an error
* There is a [bug](https://github.com/ARM-software/CMSIS_5/issues/267) in the arm fast math library, which gives spikes in the output of arm_cos_f32 for input values close to -pi/2. We fixed the bug locally, and hence are using "our_arm_cos_f32".

# Releases
## [0.4.4] - 2018-09-18
### Fixed
* Serious reliability issue with USB communication where packets on Native and the CDC interface would collide with each other.

## [0.4.3] - 2018-08-30
### Added<commit_msg>release firmware v0.4.5<commit_after># Unreleased Features
Please add a note of your changes below this heading if you make a Pull Request.

# Releases

## [0.4.5] - 2018-10-06
### Added
* **Trapezoidal Trajectory Planner**
* Hook to execute protocol property written callback
* -Wdouble-promotion warning to compilation

### Changed
* Make python tools compatible with python 2.7 (so it can be used with ROS)
  * Threading API constructor can't take the daemon parameter, so all thread creation had to be expanded out.
  * `TimeoutError` isn't defined, but it makes for more readable code, so I defined it as an OSError subclass.
  * `ModuleNotFoundError` is replaced by the older ImportError.
  * Print function imported from future
* Using new hooks to calculate:
  * `motor.config.current_control_bandwidth`
    * This deprecates `motor.set_current_control_bandwidth()`
  * `encoder.config.bandwidth`
* Default value for `motor.resistance_calib_max_voltage` changed to 2.0

### Fixed
* An issue where the axis state machine would jump in and out of idle when there is an error
* There is a [bug](https://github.com/ARM-software/CMSIS_5/issues/267) in the arm fast math library, which gives spikes in the output of arm_cos_f32 for input values close to -pi/2. We fixed the bug locally, and hence are using "our_arm_cos_f32".

## [0.4.4] - 2018-09-18
### Fixed
* Serious reliability issue with USB communication where packets on Native and the CDC interface would collide with each other.

## [0.4.3] - 2018-08-30
### Added
{'fraction_non_alphanumeric': 0.08055463849455266, 'fraction_numerical': 0.027731924727632883, 'mean_word_length': 4.315789473684211, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6557054', 'n_tokens_mistral': 949, 'n_tokens_neox': 854, 'n_words': 390}