# apollo-reporting-protobuf

> Protobuf format for Apollo usage reporting

Latest version **3.4.0** (published 2023-03-02) · MIT license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install apollo-reporting-protobuf
pnpm add apollo-reporting-protobuf
yarn add apollo-reporting-protobuf
bun add apollo-reporting-protobuf
```

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 3.4.0 |
| Published | 2023-03-02 |
| First published | 2020-09-18 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 508.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 13951 |
| Author | Apollo |
| Maintainers | apollo-bot |
| Keywords | GraphQL, Apollo, Server, Javascript |

## Links

- npm: https://www.npmjs.com/package/apollo-reporting-protobuf
- Repository: https://github.com/apollographql/apollo-server
- Homepage: https://github.com/apollographql/apollo-server#readme
- Issues: https://github.com/apollographql/apollo-server/issues
- npm.io page: https://npm.io/package/apollo-reporting-protobuf

## Dependencies (1)

- [@apollo/protobufjs](https://npm.io/package/@apollo/protobufjs.md) 1.2.6

## Alternatives

- [apollo-link-http-common](https://npm.io/package/apollo-link-http-common.md) — 879.0K weekly downloads
- [react-relay](https://npm.io/package/react-relay.md) — 336.8K weekly downloads
- [relay-test-utils](https://npm.io/package/relay-test-utils.md) — 181.6K weekly downloads
- [@vendure/core](https://npm.io/package/@vendure/core.md) — 14.8K weekly downloads
- [@pnpm/deps.graph-sequencer](https://npm.io/package/@pnpm/deps.graph-sequencer.md) — 13.4K weekly downloads

## Recent versions

- 3.4.0 (latest) — 2023-03-02
- 3.3.0-alpha.1 (alpha) — 2021-12-28
- 3.0.0 (next) — 2021-07-07
- 3.0.0-rc.0 (rc) — 2021-07-01
- 3.0.0-preview.1 (preview) — 2021-06-16
- 0.6.3-unified2.1 (unified) — 2021-04-27
- 3.3.3 — 2022-10-07
- 3.3.2 — 2022-07-11
- 3.3.1 — 2022-03-21
- 3.3.0 — 2021-12-30
- 3.3.0-alpha.0 — 2021-12-17
- 3.2.0 — 2021-11-05
- 3.1.0 — 2021-10-11
- 3.1.0-alpha.0 — 2021-10-09
- 0.300.0-preview.0 — 2021-06-01
- … 14 more at https://npm.io/package/apollo-reporting-protobuf/versions

## README

# `apollo-reporting-protobuf`

> **Note:** The Apollo usage reporting API is subject to change.  We strongly
> encourage developers to contact Apollo support at `support@apollographql.com`
> to discuss their use case prior to building their own reporting agent using
> this module.

This module provides JavaScript/TypeScript
[Protocol buffer](https://developers.google.com/protocol-buffers/) definitions
for the Apollo usage reporting API.  These definitions are generated for
consumption from the `reports.proto` file which is defined internally within
Apollo.

## Development

> **Note:** Due to a dependency on Unix tools (e.g. `bash`, `grep`, etc.), the
> development of this module requires a Unix system.  There is no reason why
> this can't be avoided, the time just hasn't been taken to make those changes.
> We'd happily accept a PR which makes the appropriate changes!

Currently, this package generates a majority of its code with
`@apollo/protobufjs` (a fork of
[`protobufjs`](https://www.npmjs.com/package/protobufjs) that we maintain
specifically for this package) based on the `reports.proto` file. The output is
generated with the `generate` npm script.

The root of the repository provides some `devDependencies` necessary to build
these definitions and the `prepare` npm script is invoked programmatically via
the monorepo tooling (e.g. Lerna) thanks to _this_ module's `postinstall`
script.  Therefore, when making changes to this module, run scripts via `npx
lerna run SCRIPTNAME` in the **root** of this monorepo in order to update the
definitions in _this_ module.

To update `reports.proto` to the current version recognized by the Studio usage
reporting ingress, run `lerna run update-proto`. To then regenerate the JS and
TS files, run `npx lerna run generate`. We check in the generated code and only
regenerate it manually, partially to make builds faster (no need to run pbjs on
every `npm install`) and partially so that we don't have to make sure that
`pbjs` runs on every Node version that we support.

---
_Source: https://npm.io/package/apollo-reporting-protobuf · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
