# Prisma 4.16.0 — Release & Upgrade Intelligence
- **Product:** Prisma (https://prisma.io)
- **Version:** 4.16.0
- **Released:** Jun 20, 2023
- **Impact Score:** 5/10
- **Breaking Changes:** Not verified
- **Canonical Analysis:** https://changelogs.us/prisma/updates/4.16.0/

## Executive Summary (TL;DR)
Prisma 4.16.0. Source highlight: 🌟 **Help us spread the word about Prisma by starring the repo or tweeting about the release.** 🌟

## New Features
- **Result** extensions components: add custom fields and methods to query result objects, for example, virtual/computed fields.
- **Model** extensions components: enable you to add new methods to your models alongside existing model methods such as `findMany`.
- **Client** extensions components: allow you to add new top-level methods to Prisma Client. You can use this to extend Prisma Client with functionality that isn’t tied to specific models.
- Added a top-level `$allOperations` method for `query` component that captures all model operations as well as top-level raw queries. Refer to our documentation for more information.
- `Prisma.validator` can now also be used for extended types:
- `query` callbacks for `$queryRaw` and `$executeRaw` will always receive `Sql` instance as `args`. This instance can be used to compose a new query using `Prisma.sql`:

## Improvements
- **Query** extensions components:  let you hook into the lifecycle of a query and perform side effects, modify query arguments, or modify the results in a type-safe way. These are an alternative to middleware that provide complete type safety and can be applied in an ad-hoc manner to different extensions.
- PCE: Improve runtime types in raw query extensions

## Bug Fixes
- Bug: FindXOrThrow don't get batched on the engine

## Upgrade Command
```bash
npm install --save-dev --save-exact prisma@4.16.0
```
