Skip to content

chore: add 'all' extra and planning/ workflow directory#41

Merged
lesnik512 merged 4 commits into
mainfrom
chore/all-extra-and-planning-dir
Jun 3, 2026
Merged

chore: add 'all' extra and planning/ workflow directory#41
lesnik512 merged 4 commits into
mainfrom
chore/all-extra-and-planning-dir

Conversation

@lesnik512
Copy link
Copy Markdown
Member

Summary

Two small project-hygiene changes, single implementation commit:

  • pyproject.toml — add a self-referential all aggregate so users can pip install faststream-outbox[all] for the full feature set (asyncpg + validate + fastapi + prometheus + opentelemetry). Standard PyPI convention; references the extra names, not version pins, so individual extra pin bumps flow through automatically.
  • planning/{specs,plans}/ — adopt the layout used by the sister httpware project for superpowers spec/plan artifacts. .gitkeep files keep both subdirs tracked.
  • CLAUDE.md — document the per-feature workflow lifecycle in a new ## Workflow section (between ## Commands and ## Architecture).

No runtime code touched. No public API change. No uv.lock change.

Branch contains three commits: spec → plan → implementation.

  • Spec: planning/specs/2026-06-03-all-extra-and-planning-dir-design.md
  • Plan: planning/plans/2026-06-03-all-extra-and-planning-dir-plan.md

Test Plan

  • uv sync --extra all resolves cleanly
  • uv sync --extra all and uv sync --all-extras produce the same installed set (parity check passed)
  • just lint-ci passes (eof-fixer, ruff format --check, ruff check, ty check)
  • just test passes — 390 passed, 100% coverage, --cov-fail-under=100 gate satisfied
  • planning/specs/ and planning/plans/ exist and are tracked by git
  • CLAUDE.md ## Workflow heading appears between ## Commands and ## Architecture

lesnik512 and others added 3 commits June 3, 2026 10:55
Captures the design for two project-hygiene changes: a self-referential
`all` aggregate extra in pyproject.toml, and adoption of the planning/
specs/+plans/ workflow directory mirroring the sister httpware project.
Implementation follows in a separate commit.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Implementation plan for spec 91201a2: bite-sized tasks for pyproject.toml
'all' extra, planning/{specs,plans}/.gitkeep, and the CLAUDE.md
'## Workflow' section. Single implementation commit at the end.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- pyproject.toml: self-referential `all` aggregate so users can
  `pip install faststream-outbox[all]` for the full feature set
  (asyncpg + validate + fastapi + prometheus + opentelemetry).
- planning/{specs,plans}/: adopt the layout used by the sister
  httpware project for superpowers spec/plan artifacts.
- CLAUDE.md: document the per-feature workflow lifecycle in a new
  `## Workflow` section between `## Commands` and `## Architecture`.

Spec: planning/specs/2026-06-03-all-extra-and-planning-dir-design.md.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@lesnik512 lesnik512 self-assigned this Jun 3, 2026
faststream 0.7.0 ships breaking changes to the FastStream internals the
outbox subclasses against: ProducerProto gained a `codec` member,
SubscriberUsecase.add_call dropped the `middlewares_` kwarg, and
TestBroker.create_publisher_fake_subscriber became an instance method.
The outbox code targets the 0.6.x surface; upgrading to 0.7 is a
separate piece of work. Pin <0.7 so fresh `uv sync` resolves to 0.6.x.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@lesnik512 lesnik512 merged commit 0ebccf3 into main Jun 3, 2026
3 checks passed
@lesnik512 lesnik512 deleted the chore/all-extra-and-planning-dir branch June 3, 2026 09:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant