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

[Full Changelog](https://github.com/arez/arez/compare/v0.160...v0.161)

Changes in this release:

* Improve the error message generated by the annotation processor when a `@Reference` annotated method references a non-`@ArezComponent` annotated element but has an inverse configured.
* Correct the error message generated by the annotation processor when the type on which an `@Inverse` annotated exists is a different type to the return type of the paired `@Reference` annotated method.
* Fixed compile errors that occurred when the type of the component has type parameters and is annotated with `@Repository`.
* Improve the code generation so that rather than copying the `@SuppressWarnings` annotation from the input source code, Arez will analyze the type of the code being generated and add a `@SuppressWarning` when and if it is needed. In particular the annotation processor will attempt to detect when `unchecked`, `rawtypes` and `deprecation` suppressions are required.
* Continue to refactor the annotation processor infrastructure and ensure that the generated code is internally consistent and easier to maintain. The changes should have had no practical impact on how end-users use the results. The changes include removing final qualifier from methods in final class, adding the private qualifier to internal methods, adding the `@Override` annotation where appropriate etc.
* Stop making the generated component class public unless needed to support dagger injection or to support inverse references in a different package.
* Stop copying the scope annotation to the generated class when the generated class is not directly injected but is exposed via a factory class.
* Extract the non-Arez specific annotation processor utility methods into a separate project `org.realityforge.proton:proton-processor-pack`. These were previously copy-paste shared between several projects. This is the first step towards sharing the code directly. The code is relocated as part of the build process to potential code eliminate conflicts.

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