• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tschm / pytest-alembic
95%
main: 100%

Build:
Build:
LAST BUILD BRANCH: fix/lazy-asyncio-import
DEFAULT BRANCH: main
Repo Added 24 Aug 2026 04:40AM UTC
Token zu4ZGMQIZotraU3QaNkXCmbxXa8P9miKW regen
Build 75 Last
Files 17
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH docs/docstring-coverage-100
branch: docs/docstring-coverage-100
CHANGE BRANCH
x
Reset
Sync Branches
  • docs/docstring-coverage-100
  • build/declare-dependency-floors
  • build/declare-tested-python-classifiers
  • build/interrogate-docstring-coverage
  • build/pin-python-toolchain
  • build/pre-commit-and-contributing
  • build/replace-m2r2-with-myst-parser
  • chore/bump-version-0.13.0
  • chore/drop-pytest-asyncio
  • chore/drop-python-3.9
  • chore/make-ci-pins-real
  • ci/cross-platform-tests
  • ci/dependency-vuln-scanning
  • ci/gate-dependency-floors
  • ci/gate-docs-build
  • ci/gate-publish-on-tests
  • ci/lock-coveralls-deps
  • ci/make-matrix-pins-real
  • ci/pin-actions-to-shas
  • ci/sqlalchemy-range-coverage
  • deps/urllib3
  • docs/core-api-doctests
  • docs/fix-broken-fixture-examples
  • docs/fix-coverage-badge
  • docs/intersphinx-supported-sqlalchemy
  • docs/migration-context-size-note
  • docs/nitpicky-cross-references
  • docs/readme-badges
  • fix/collect-outside-rootpath
  • fix/collect-test-definitions-default
  • fix/deptry-private-pytest-import
  • fix/drop-dead-sqlalchemy-asyncio-guard
  • fix/lazy-asyncio-import
  • fix/previous-revision-base-tautology
  • fix/ship-license-in-artifacts
  • fix/subprocess-sys-executable
  • main
  • quality/docs-coverage-and-import-cycle
  • refactor/break-package-root-import-cycle
  • refactor/split-option-resolver-tests
  • test/assert-config-feature-effects
  • test/assert-has-test-real-check
  • test/coverage-100
  • test/drop-asyncio-marker
  • test/drop-unused-sqlalchemy-2-marker
  • test/gate-doctest-undefined-names
  • types/disallow-untyped-defs

25 Aug 2026 04:46PM UTC coverage: 94.609% (-0.02%) from 94.633%
32878163292

push

github

tschm
docs: document every symbol, taking docstring coverage to 100%

The interrogate ratchet stood at 70% against a measured 71.7%, with 34 of 120
symbols undocumented. This documents all 34 and moves `fail-under` to 100, so the
floor is now the measured number and cannot silently erode.

Eight module docstrings say what each module is *for* and how it relates to its
neighbours — the two executors, the flattened history, the revision data, the
configuration surface, the fixtures, the default tests, and the two experimental
ones. The rest are the functions that carry real behaviour worth explaining:

- `CommandExecutor.run_command` — why stderr is discarded, and why the buffer
  position is recorded before the command rather than read from the start.
- `ConnectionExecutor.table` / `table_insert` — the per-revision reflection cache,
  and the `__tablename__` key that overrides the `tablename` argument.
- `AlembicHistory.validate_revision` and the four walk methods — `head` coercing
  to `heads`, and what `None` means at each end of the range.
- `check_revision_cycle` — why the comparison is between two rendered DDL diffs
  rather than two reflected `MetaData` objects, and why every step rolls back even
  on success.
- `WrappingConnection` — that alembic's `env.py` calls `connect()`, which would
  otherwise open a second connection outside the test's open transaction.
- `Config.make_alembic_config`, `duplicate_alembic_config`, `parse_collection_output`,
  `url_to_string`, `create_connectable` and the remaining constructors.

Two doctests come with them, on `revision_window` and `set_revision`; `pytest`
runs docstrings under `--doctest-modules`, so both are executed rather than
decorative. Test count goes 122 to 124.

No behaviour changes: `make lint` and `make test` pass, `make docs-coverage`
reports 120/120.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

197 of 222 branches covered (88.74%)

Branch coverage included in aggregate %.

856 of 891 relevant lines covered (96.07%)

11.53 hits per line

Relevant lines Covered
Build:
Build:
891 RELEVANT LINES 856 COVERED LINES
11.53 HITS PER LINE
Source Files on docs/docstring-coverage-100
  • Tree
  • List 17
  • Changed 6
  • Source Changed 0
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
32878163292 docs/docstring-coverage-100 docs: document every symbol, taking docstring coverage to 100% The interrogate ratchet stood at 70% against a measured 71.7%, with 34 of 120 symbols undocumented. This documents all 34 and moves `fail-under` to 100, so the floor is now the measur... push 25 Aug 2026 05:30PM UTC tschm github
94.61
32861373584 docs/docstring-coverage-100 docs: document every symbol, taking docstring coverage to 100% The interrogate ratchet stood at 70% against a measured 71.7%, with 34 of 120 symbols undocumented. This documents all 34 and moves `fail-under` to 100, so the floor is now the measur... push 25 Aug 2026 02:45PM UTC tschm github
94.63
See All Builds (73)

Badge your Repo: pytest-alembic

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc