---
title: Arez 0.05 released
type: minor
---

Arez 0.05 released. 

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

Changes in this release:

##### Added
* **\[extras\]** Extract the `StringifyReplacer` from the `ConsoleSpyEventProcessor` class to allow
  subclasses of `ConsoleSpyEventProcessor` to control the mechanisms for formatting action parameters.
* **\[annotations\]** Enhanced `@Action` and `@Track` to the ability to disable reporting of the parameters
  to the core runtime infrastructure from the generated components.

##### Changed
* 💥 **\[browser-extras\]** Update `BrowserLocation` so that it defaults to calling `preventDefault()` on event
  that triggered hash change. This behaviour can be disabled by invoking `BrowserLocation.setPreventDefault(false)`
  to support old behaviour.
* 💥 **\[processor\]** Rename the base repository extension class from `MyComponentRepositoryExtension` to
  `MyComponentBaseRepositoryExtension` as existing downstream projects tend to name their project specific
  extensions using the pattern `MyComponentRepositoryExtension`. (The existing domgen based generators use the
  naming pattern  `MyComponentBaseRepositoryExtension` which is where the new naming pattern was derived from.)
* 💥 **\[core\]** Rename the method `ActionCompletedEvent.isExpectsResult()` to `ActionCompletedEvent.returnsResult()`
  and update the corresponding serialization in `ActionCompletedEvent.toMap()`
* 💥 **\[core\]** Restructure action code so the core action and tracker methods are responsible for generating the
  `ActionStartedEvent` and `ActionCompletedEvent` events. To achieve this goal the action and tracker methods
  have all been modified to add an extra varargs argument that is the list of parameters passed to the action.
  Remove all the corresponding infrastructure from the annotation processor.

##### Fixed
* **\[core\]** Fixed invariant checking in `Transaction` so that `Observable.reportChanged()` can be invoked
  on a dependency of a `ComputedValue` where the `ComputedValue` has already been marked as `POSSIBLY_STALE`.
* **\[processor\]** Fixed the generation of annotated methods that override an annotated method in a parent
  class where the subclass is specialized type of parent class. i.e. If the superclass has a method
  `@Action void foo( T value )` where the `T` type parameter is `<T extends Number>` and the subclass has
  the method `@Action void foo( Integer value )` where the type parameter was resolved to `Integer`, the
  processor would previously generate incorrect code.
* Stop uploading the `examples` and `gwt-examples` artifacts to the distribution repositories.
* **\[core\]** Schedule the "reaction" spy messages after the top-level transaction has completed and sent it's
  corresponding spy message. This means that the `ReactionStartedEvent` and/or `ComputeStartedEvent` will occur
  after the `ActionCompletedEvent` or `ReactionCompletedEvent` that resulted in the reaction/compute being
  scheduled. Thus reactions to an action will be peers of the action in the `ConsoleSpyEventProcessor`, making
  it much easier to how changes flow through the system.



Update site to add new about the 0.05 release
Update site to add new about the 0.05 release
