Skip to content

chore(deps-dev): bump pytest from 9.0.2 to 9.0.3#5

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/pytest-9.0.3
Open

chore(deps-dev): bump pytest from 9.0.2 to 9.0.3#5
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/pytest-9.0.3

Conversation

@dependabot
Copy link
Copy Markdown

@dependabot dependabot Bot commented on behalf of github Apr 14, 2026

Bumps pytest from 9.0.2 to 9.0.3.

Release notes

Sourced from pytest's releases.

9.0.3

pytest 9.0.3 (2026-04-07)

Bug fixes

  • #12444: Fixed pytest.approx which now correctly takes into account ~collections.abc.Mapping keys order to compare them.

  • #13634: Blocking a conftest.py file using the -p no: option is now explicitly disallowed.

    Previously this resulted in an internal assertion failure during plugin loading.

    Pytest now raises a clear UsageError explaining that conftest files are not plugins and cannot be disabled via -p.

  • #13734: Fixed crash when a test raises an exceptiongroup with __tracebackhide__ = True.

  • #14195: Fixed an issue where non-string messages passed to unittest.TestCase.subTest() were not printed.

  • #14343: Fixed use of insecure temporary directory (CVE-2025-71176).

Improved documentation

  • #13388: Clarified documentation for -p vs PYTEST_PLUGINS plugin loading and fixed an incorrect -p example.
  • #13731: Clarified that capture fixtures (e.g. capsys and capfd) take precedence over the -s / --capture=no command-line options in Accessing captured output from a test function <accessing-captured-output>.
  • #14088: Clarified that the default pytest_collection hook sets session.items before it calls pytest_collection_finish, not after.
  • #14255: TOML integer log levels must be quoted: Updating reference documentation.

Contributor-facing changes

  • #12689: The test reports are now published to Codecov from GitHub Actions. The test statistics is visible on the web interface.

    -- by aleguy02

Commits

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.0.2 to 9.0.3.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](pytest-dev/pytest@9.0.2...9.0.3)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.3
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Apr 14, 2026
gitpcl pushed a commit that referenced this pull request May 24, 2026
Sprint 026 closes six concrete defects exposed by post-merge review of
the Sprint 023 (branch mode) + Sprint 025 (herdr) surfaces. No new
features; defect closure + regression-test hardening only.

Phase 1 — session_type on status rows (defect #1 root cause)
- models/status.py: session_type: Literal['worktree', 'branch'] = 'worktree'
- core/status.py: schema 3.2 with ALTER TABLE migration for legacy DBs
- _upsert_status / _row_to_status round-trip the field
- agent_launcher.py threads request.session_type through both
  interactive and headless paths via _init_pane_tracking

Phase 2 — Doctor branch-mode safety (defect #1)
- commands/doctor.py rewritten: partition statuses by session_type
- worktree rows reconciled against git worktree list as before
- branch rows reconciled against git branch --list — orphan iff
  backend session dead AND branch absent. Never compared to worktree
  list, so a healthy in-place branch session is never destroyed by --fix.
- --fix dispatches to the right teardown per session_type

Phase 3 — herdr socket plumbing (defect #2)
- detect_herdr(socket_session, socket_path=None) — probe targets the
  same socket the backend will actually use
- New select_backend_for_session(session) helper reconstructs the
  backend from a recorded BackendSession, preserving meta['socket']
  end-to-end (was silently dropped before)
- All call sites in commands/agent.py, commands/worktree.py, commands/
  doctor.py, core/pane_actions.py, core/status.py replaced
- HerdrBackend.create_session / session_for now persist herdr_session +
  socket in BackendSession.meta for deterministic reconstruction

Phase 4 — Attach forced-backend re-resolution (defect #3)
- commands/worktree.py:attach_worktree: when --tmux/--herdr conflicts
  with the recorded backend, call forced_backend.session_for(name)
  instead of coercing the recorded id (tmux and herdr ids are
  different shapes — coercing would silently misroute)
- Raises ClickException with a clear message when the forced backend
  can't find a session, naming both kinds so the user can correct

Phase 5 — Branch-mode parity in send / switch / delete (defect #4)
- New commands/_shared.py:resolve_session_target() helper: tries
  WorktreeManager.get first, falls back to status DB on
  WorktreeNotFoundError so branch-mode sessions are first-class
- commands/agent.py:send_to_worktree, commands/worktree.py:switch /
  delete / attach all route through the helper
- delete on a branch row dispatches to branch teardown (delete_branch
  + pop_stash) instead of trying to remove a non-existent worktree dir

Phase 6 — Headless skips backend resolution (defect #5)
- commands/worktree.py:new_worktree: backend resolution moved inside
  the non-headless branch. [backend] mode='herdr' + --headless +
  herdr uninstalled is now a legal CI configuration.

Phase 6a — Herdr submit chokepoint audit + tests (defect #6, in-scope)
- core/herdr_backend.py audited: every pane.send_text that delivers
  user/agent-facing text routes through _send_line(); send_keys is
  reserved for raw control sequences
- 6 new unit tests: default ('\r'), text:\r\n override, keys:Enter
  override, keys-failure fallback, unknown-mode warning, env-unset
- Manual matrix file (tests/manual/herdr_submit_matrix.md) ready for
  the empirical lock-in — this is the one acceptance criterion that
  requires a live herdr build and stays open in TODO.json

Phase 7 — Test-suite hardening
- conftest.py: shared herdr_socket_path fixture (short /tmp path,
  macOS sun_path is 104 chars and pytest tmp_path overflows)
- 3 herdr test files migrated to the fixture
- Fixed I001 import ordering in test_agent_launcher_herdr.py
- New tests:
  * test_commands_doctor.py: branch-mode safety, dead-branch detection,
    mixed fleet, herdr-backed worktree (4 cases)
  * test_cli_herdr_flags.py: forced-override re-resolution against
    opposite-kind recorded sessions (3 cases)
  * test_branch_mode.py: send / switch / delete on in-place branch
    sessions (3 cases)
  * test_headless_no_backend.py (new): asserts headless launch never
    calls select_backend even with [backend] mode='herdr'

Phase 8 — Docs sync
- README.md: backend recording fields, attach override semantics,
  branch-mode parity, headless+herdr, TUI prompt submission
- SKILL.md: same updates with explicit Sprint 026 phase tagging
- docs/herdr-integration.md: new sections for branch-mode parity,
  headless+herdr, and "Agent prompt submission (TUI agents)" with
  the full OWT_HERDR_SUBMIT escape hatch reference

Verification: 1440 passed / 5 skipped (+17 from 1423 baseline);
ruff check + ruff format + mypy all clean. TODO.json: 116/117 complete;
the open item is the herdr-submit empirical matrix lock-in.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants