linear-api 0.1.0

Unofficial async Rust client for the Linear GraphQL API (API-key auth)
Documentation
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.1.0] - 2026-07-05

Initial release.

### Added

- Async `LinearClient` with API-key auth (raw key in `Authorization`, no `Bearer` prefix),
  stored via `secrecy` and marked sensitive on the wire.
- P0 typed surface: viewer / organization, teams (with workflow states), users, workflow
  states, issues (`get` / `list` / `list_stream` / `search` / `create` / `batch_create` /
  `update` / `archive` / `delete` / label add-remove), projects (with milestones and
  statuses), labels (including find-or-create `ensure`), issue relations, and comments.
- Typed filters (`IssueFilter`, `ProjectFilter`, `TeamFilter`, `UserFilter`, and friends)
  and typed IDs.
- Tri-state update inputs via `Undefinable<T>` (leave unchanged / clear / set).
- Header-aware rate limiting with `LinearClient::last_rate_limit()`, plus mutation-safe
  retries with jittered exponential backoff.
- `execute_raw` escape hatch for operations not yet covered by the typed surface.
- Compile-time GraphQL document registry validated in CI against the committed Linear SDL
  snapshot (`schema/linear.graphql`).
- Optional features: `rustls-tls` (default), `native-tls`, `tracing`.

[Unreleased]: https://github.com/bipa-app/linear-api/compare/v0.1.0...HEAD
[0.1.0]: https://github.com/bipa-app/linear-api/releases/tag/v0.1.0