Skip to content

Add --dry-run to DE CLI, fix docs for v0.7.0 API#7

Open
katosh wants to merge 10 commits intomainfrom
readme-cli-examples
Open

Add --dry-run to DE CLI, fix docs for v0.7.0 API#7
katosh wants to merge 10 commits intomainfrom
readme-cli-examples

Conversation

@katosh
Copy link
Copy Markdown
Collaborator

@katosh katosh commented Apr 14, 2026

Summary

  • Add --dry-run flag to kompot de CLI: outputs JSON resource plan to stdout, human report to stderr
  • Add kompot.configure_logging(stream) so CLI logs to stderr by default
  • Add kompot smooth to CLI docs with full command reference
  • Fix Sphinx docs: exclude deprecated APIs from automodule, add smooth module, update RunInfo members, fix toctree labels
  • Fix double-backslash rendering in all RST code blocks
  • Remove redundant Quick Start examples
  • Add [Unreleased] changelog section

Test plan

  • kompot de --dry-run outputs valid JSON to stdout
  • CLI tests pass (24/24)
  • CI green
  • Verify docs render on RTD

katosh and others added 10 commits April 13, 2026 17:51
- Add kompot smooth section with usage, options, and examples
- Add smooth to overview, quick start workflow, config templates, help
- Fix all \\ to single \ in code-block directives (RST renders literally)
The per-command basic examples repeated the same info as the workflow
block above and the detailed command sections below.
…abels

- Exclude compute_differential_abundance/expression from automodule
- Add smooth_expression automodule (exclude deprecated compute_smoothed_expression)
- Add RunInfo.to_settings() and call_args() to documented members
- Rename "Gene Expression Imputation" to "Smoothing" in toctree
- Add --dry-run flag to kompot de: estimates resource requirements
  without running the analysis
- JSON output to stdout (or -o file), human-readable report to stderr
- Exit code 0 if feasible, 1 if not
- Add ResourcePlan.to_dict() for machine-parseable serialization
- Add configure_logging() to redirect kompot logger stream
- CLI now logs to stderr by default (keeps stdout clean for
  machine-parseable output like --dry-run and --table-output)
- Document --dry-run in CLI docs with pipeline examples
Users would likely reuse the same args as the real run, which would
overwrite their h5ad output with a JSON file. Stdout-only is safer.
- Add dry_run=False to all 8 DE test Namespace objects (run_de now
  accesses args.dry_run from the --dry-run flag added in this PR)
- Update actions/checkout v4→v6 and actions/setup-python v5→v6 to
  resolve Node.js 20 deprecation warnings
- Add TestCLIDryRun: covers --dry-run JSON output, infeasible exit
  code 1, and output validation skip when dry_run=True
- Add TestConfigureLogging: covers stream redirection and default
- Fix codecov action: file→files (v5 API change)
- Add --cov-report=term-missing to pytest so coverage stats appear
  in CI logs
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