# Dapr 1.10.4

This hotfix release contains two bug fixes.

- [Fixes gRPC proxying not working when API allowlists are configured](#fixes-grpc-proxying-not-working-when-api-allowlists-are-configured)
- [Fixes Dapr invoking the app subscriptions endpoint when the metadata endpoint is called](#fixes-dapr-calling-the-application-to-get-subscriptions-when-the-metadata-endpoint-is-invoked)

## Fixes gRPC proxying not working when API allowlists are configured

### Problem

A regression introduced in Dapr 1.10.0 caused gRPC proxying to not work when [API allowlists](https://docs.dapr.io/operations/configuration/api-allowlist/) are used. All calls to proxied gRPC endpoints would fail with an "Unimplemented" gRPC error.

### Impact

The issue impacts users on Dapr 1.10.0-1.10.3 that use API allowlists for gRPC APIs, and who use gRPC proxying.

### Root cause

A regression was introduced in Dapr 1.10.0 that caused all proxied gRPC requests to be matched against the API allowlist when that is configured for gRPC, with the consequence that all calls were rejected.

### Solution

We have changed how API allowlists work for gRPC, so all proxied calls are always allowed regardless of the rules in the allowlists. We have added tests to prevent future regressions.

## Fixes Dapr calling the application to get subscriptions when the metadata endpoint is invoked

### Problem

A regression introduced in Dapr 1.10.0 caused Dapr to invoke the application on the `/dapr/subscribe` endpoint when the [metadata endpoint](https://docs.dapr.io/reference/api/metadata_api/#http-request) is called. This doesn't affect any existing subscriptions and does not result in Dapr re-subscribing to topics.

### Impact

The issue impacts users on Dapr 1.10.0-1.10.3.

### Root cause

A regression was introduced in Dapr 1.10.0 when returning the list of subscriptions in a metadata endpoint response. Instead of only returning a local cache snapshot, Dapr called the application to get the list of subscriptions every time the metadata endpoint is invoked.

### Solution

We updated Dapr to return a subscriptions list snapshot and not invoke the app when the metadata endpoint is invoked.