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

[Full Changelog](https://github.com/arez/arez/compare/v0.49...v0.50)

Changes in this release:

#### Fixed
* **\[extras\]** Remove useless invariant check in `IntervalTicker` class.
* **\[core\]** Reordered code in `ArezContext.action(...)` so that code that code that is replaced with a
  compile time constant (i.e. `Arez.areSpiesEnabled()`) occurs first which significantly helps the GWT
  compiler with optimizations. Now when spies are disabled, the classes `ActionStartedEvent` and
  `ActionCompletedEvent` are optimized out.
* **\[processor\]** Add explicit checks using `Arez.shouldCheckApiInvariants()` in generated component
  classes where an invariant check is generated. This works around a limitation in GWT 2.x dead code
  elimination optimization and ensures that all the lambdas created for invariant checking are optimized
  out in production mode.
* **\[processor\]** Fixed a bug where methods annotated `@Track` generated duplicate invariant checking
  code. This could significantly slow down development mode, particularly as `@Track` observers are often
  the most common type of observer within web applications using Arez.

#### Added
* **\[core\]** Introduce the configuration setting `arez.check_invariants` and `arez.check_api_invariants`
  that provide mechanisms to explicitly control whether invariants checking is enabled in the Arez library.
  Add support methods `Arez.shouldCheckInvariants()` and `Arez.shouldCheckApiInvariants()` that expose this
  configuration to application code.

#### Changed
* Upgrade the braincheck dependency to `1.4.0`.
* Invariant messages are started are prefixed with `"Arez-####: "` so it is easy to identify and communicate
  sources of error. The numbers are currently continuous and not ordered in any meaningful order. It is
  expected that over time that as invariants are added and removed the numbers may develop gaps but no number
  should ever be reused to avoid confusion when discussing particular errors.

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