Skip to content

Add inline dependencies for project fixtures#47

Merged
mavam merged 2 commits into
mainfrom
topic/pep723-fixtures
May 13, 2026
Merged

Add inline dependencies for project fixtures#47
mavam merged 2 commits into
mainfrom
topic/pep723-fixtures

Conversation

@mavam
Copy link
Copy Markdown
Member

@mavam mavam commented May 13, 2026

🔍 Problem

  • Project fixtures could import optional Python packages, but the harness only
    installed PEP 723 dependencies for Python test scripts.
  • Fixture users had to remember wrapper commands such as uvx --with ..., and
    standalone fixture mode had the same gap.

🛠️ Solution

  • Share inline dependency parsing and installation across Python tests and
    project fixture loading.
  • Scan fixtures.py and recursive fixtures/**/*.py files before importing
    project fixtures.
  • Document fixture dependency metadata and add regression coverage for install
    order, recursive scans, empty metadata, invalid metadata, and undeclared
    dependency fallbacks.

💬 Review

  • Focus on the eager fixture dependency scan and whether installing all declared
    fixture dependencies before fixture import is the right trade-off for the
    current eager registration model.
📚 Docs PR: tenzir/docs#317

Project fixtures now scan PEP 723 script metadata before import and install declared packages through the active Python environment. This shares the existing Python-test behavior with normal fixture loading and standalone fixture mode.

Assisted-by: GPT-5 (Codex)
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6cdc1172df

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/tenzir_test/run.py Outdated
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 562d64f5f7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/tenzir_test/run.py
@mavam mavam force-pushed the topic/pep723-fixtures branch from 562d64f to 344c9a4 Compare May 13, 2026 09:31
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 344c9a43a3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/tenzir_test/run.py Outdated
Match inline dependency discovery to the fixture module import order. Package fixtures now ignore stale top-level files and nested modules that the loader would not import directly.

Assisted-by: ChatGPT (pi)
@mavam mavam force-pushed the topic/pep723-fixtures branch from 344c9a4 to 9d9a8a4 Compare May 13, 2026 11:56
@mavam mavam merged commit f8ed4ff into main May 13, 2026
3 checks passed
@mavam mavam deleted the topic/pep723-fixtures branch May 13, 2026 12:45
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