---
title: Arez 0.157 released
author: Arez Project
authorURL: https://github.com/arez
---

[Full Changelog](https://github.com/arez/arez/compare/v0.156...v0.157)
[API Differences](/api-diff/?key=arez&old=0.156&new=0.157)

The release includes 1 breaking API change.

Changes in this release:

* Start using consistent error messages when extracting names from various Arez elements. Initially the `@Action` annotation processing has been moved to use the common error message pattern.
* Remove the warnings generated by `@ComponentIdRef` annotated methods that are "unnecessarily" public or protected. These warnings were added in `0.155` but experimentation in the wild has determined that it is perfect reasonable for these methods to be called from outside the class.
* Generate a suppressable warning if a lifecycle or hook method is protected and in the same class that is annotated by `@ArezComponent` or is public and not an implementation of an interface method. These methods are not expected to be invoked from outside the component instance and this warning discourages incorrect usage. This constraint has been applied to the annotations:
  * `@OnActivate`
  * `@OnDeactivate`
  * `@OnDepsChange`
  * `@PostConstruct`
  * `@PostDispose`
  * `@PreDispose`
* Remove the `@OnStale` annotation. It has never been used in any downstream library or application.
* Add the ability to suppress the warning if the `allowEmpty=true` is specified on the `@ArezComponent` annotation but there are reactive components present. Previously this scenario was an error and only suppressable by if the component was also marked as `@Generated`.

Update site to add news about the 0.157 release
Update site to add news about the 0.157 release
