[DEPRECATION] Remove legacy Python build CLI - #3545
Conversation
There was a problem hiding this comment.
PR Summary:
- Removes the retired Python build CLI (
dev/pyrevit.py) and its complete private helper/script graph (dev/_*.py,dev/scripts/*.py). - Removes CLI-only direct dependencies (
pygount,colorama) from Pipfile and regenerates the lockfile. - Updates contributor docs (
CLAUDE.md,build/README.md,docs/ci-cd.md,docs/dev-guide.md,docs/adding-revit-version.md,docs/llms-full.txt) and installer/helper comments to reference the C# ModularPipelines workflow exclusively.
Review Summary:
Verified the removal is dependency-closed — no remaining imports of the deleted modules, and GitHub Actions workflows (ci.yml, wip.yml, release.yml) do not invoke the removed CLI. Documentation updates are consistent across all touched files. The .cursor/worktrees.json correctly switched to dotnet run/dotnet test commands. C# helper comments and .iss installer comments were updated to remove stale dev/scripts/config.py references. One medium-severity code-smell comment: docopt and requests remain as dead direct dependencies in the Pipfile [packages] section and should be removed.
Suggestions
| docopt = "*" | ||
| requests = "*" |
There was a problem hiding this comment.
docopt and requests are still listed as direct [packages] dependencies, but with the removal of dev/pyrevit.py (which imported docopt) and dev/scripts/github.py / dev/scripts/airtavolo.py (which imported requests), nothing in the build toolchain consumes them any more. The requests library still ships under site-packages/ for runtime use by user scripts, but that is unrelated to the Pipfile build environment.
Remove both lines (and regenerate Pipfile.lock with pipenv lock) to keep the dependency set lean.
actions
Quick Fix: Apply a small focused fix for this specific issue (takes < 1min).
Feedback: Rate this comment to help me improve future code reviews:
- 👍 Good - Helpful and accurate
- 👎 Poor - Wrong, unclear, or unhelpful
- Skip if you don't have any strong opinions either way.
There was a problem hiding this comment.
Pull request overview
This PR completes the deprecation of the legacy Python developer build CLI (dev/pyrevit.py) and its entire private helper/script graph, now that the C# ModularPipelines project under build/ is the sole supported build/CI/release workflow. It removes the retired Python sources, drops CLI-only Python dependencies, regenerates the lockfile, and rewrites contributor/release/vendored-dependency documentation (plus stale source-reference comments) to point at dotnet run -- ci and explicit version-file maintenance.
Changes:
- Deletes the Python build CLI entry point and all
dev/_*.py/dev/scripts/*.pyhelpers (build, release, props, changelog, hostdata, autocomplete, IL prefixing, GitHub/Airtable API wrappers). - Removes CLI-only Pipfile packages (
pygount,colorama) and thepyrevitscript entry, and regeneratesPipfile.lock. - Updates docs (
ci-cd.md,adding-revit-version.md,llms-full.txt,CLAUDE.md,build/README.md), installer.iss/PowerShell comments, C# helper comments, and.cursor/worktrees.jsonto reference the ModularPipelines workflow.
Reviewed changes
Copilot reviewed 31 out of 32 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| dev/pyrevit.py, dev/_.py, dev/scripts/.py | Removes the legacy Python build/release CLI and its full helper graph |
| Pipfile | Drops CLI-only pygount/colorama deps and the pyrevit script entry |
| Pipfile.lock | Regenerated lockfile reflecting dependency removals/updates |
| docs/ci-cd.md | Rewrites release/CI/vendored-dep workflows to use dotnet run -- ci |
| docs/adding-revit-version.md, docs/llms-full.txt | Replaces pipenv run pyrevit build ... with ModularPipelines commands |
| CLAUDE.md, build/README.md | Updates build/tooling guidance to the C# pipeline |
| build/Helpers/*.cs, build/Modules/BuildIronPythonDepsModule.cs | Removes stale references to the deleted Python sources in comments |
| release/*.iss, release/Verify-LibGit2NativeDll.ps1 | Updates comments that pointed at removed dev/scripts/config.py/CLI |
| .cursor/worktrees.json | Switches worktree setup to dotnet build/test commands |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| docopt = "*" | ||
| requests = "*" |
Summary
Removal plan completed
build/commands or explicit version-file maintenance.Validation
dotnet test build/tests/Build.Tests.csproj -c Release(31 passed)pipenv verifypipenv run docsrggit diff --check