---
title: Arez 0.15 released
type: minor
---

[Full Changelog](https://github.com/realityforge/arez/compare/v0.14...v0.15)

Changes in this release:

##### Fixed
* **\[processor\]** Repositories that define a `create` method with no parameters no longer suffix the name with
  a "_" character.
* **\[processor\]** Repositories will call `reportObserved()` in the generated `findBy[Id]` and `contains` methods.
* **\[processor\]** The "entities" observable that is defined as part of the generated repository will now be disposed
  correctly when the repository is disposed.

##### Added
* **\[annotations\]** Add the `@ObservableRef` annotation to allow the reactive component to get access to
  the underling `Observable` instance. This is useful for framework authors who need access to low level
  primitives but still want to make use of the arez component model.
* **\[annotations\]** Add the `expectSetter` parameter to the `@Observable` annotation to support defining reactive
  components with observable properties but no explicit setter. This is useful in combination with the `@ObservableRef`
  annotation to more precisely control how change is detected and when it is propagated. If the `expectSetter`
  parameter is set to false then a `@ObservableRef` must be defined for observable property.

##### Changed
* 💥 **\[processor\]** The `destroy` method in repositories have been annotated with `@Action` to avoid the need for
  defining an action separately.
* **\[processor\]** Accessing a component after it has been disposed results in an Braincheck invariant
  failure rather than an assert failure. This means a more meaningful message can be presented to the developer.
* **\[processor\]** Generated repositories have been reworked to make use of `@ObservableRef` and
  `@Observable(expectSetter = false)` features to simplify code and make it consistent with downstream code.

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