---
title: Diagnostics
framework: swift-package-manager
role: symbol
role_heading: Structure
path: swift-package-manager/documentation/packageplugin/diagnostics
---

# Diagnostics

Emits errors, warnings, and remarks to show as a result of running the plugin.

## Declaration

```swift
struct Diagnostics
```

## Overview

Overview After emitting one or more errors, a plugin should return a non-zero exit code.

## Topics

### Emitting Errors and Diagnostics

- [progress(_:)](swift-package-manager/documentation/packageplugin/diagnostics/progress(_:).md)
- [error(_:file:line:)](swift-package-manager/documentation/packageplugin/diagnostics/error(_:file:line:).md)
- [warning(_:file:line:)](swift-package-manager/documentation/packageplugin/diagnostics/warning(_:file:line:).md)
- [remark(_:file:line:)](swift-package-manager/documentation/packageplugin/diagnostics/remark(_:file:line:).md)
- [emit(_:_:file:line:)](swift-package-manager/documentation/packageplugin/diagnostics/emit(_:_:file:line:).md)
- [Diagnostics.Severity](swift-package-manager/documentation/packageplugin/diagnostics/severity.md)

## See Also

### Plugin Diagnostics and Errors

- [PluginContextError](swift-package-manager/documentation/packageplugin/plugincontexterror.md)
- [PluginDeserializationError](swift-package-manager/documentation/packageplugin/plugindeserializationerror.md)
