Skip to content

Adopt source-only internal build identities - #147

Merged
Eduardo Villalpando Mello (edvilme) merged 1 commit into
mainfrom
refactor/source-only-identities
Nov 13, 2026
Merged

Eduardo Villalpando Mello (edvilme) merged 1 commit into
mainfrom
refactor/source-only-identities

Conversation

@edvilme

Copy link
Copy Markdown
Contributor

Summary

  • Replace obsolete npm/Python distribution identities with vscode-python-tool-internal solely for local build/install metadata. npm remains private; Python carries Private :: Do Not Upload. Keep existing version values and do not add publication or version synchronization.
  • Document pinned-source consumption: build the TypeScript public entry point and bundle it with its dependency closure; install Python from the same local checkout. Remove the former npm dependency/alias example.
  • Resolve the default Python server's diagnostic version only from the internal distribution metadata. Preserve the v0.0.0-dev fallback and injected-server behavior, with regression coverage.
  • Remove the versioned changelog and obsolete no-changelog label configuration. Use PR descriptions for consumer-facing change/upgrade notes and focused migration documentation for breaking changes.

Compatibility and adoption

The Python import namespace vscode_common_python_lsp, TypeScript public exports, settings payloads/defaults and tool lifecycle behavior are unchanged. Repository URLs and submodule paths retain their existing names.

Existing consumers must remove the former shared npm dependency/alias, update imports to the built source entry, regenerate their lockfiles and ensure their bundler includes the runtime dependency closure. The README documents build order and packaging requirements. Python consumers continue local-path installation and must bundle their reviewed runtime dependencies and the new distribution metadata.

This PR does not migrate consumer repositories or add source-provenance enforcement. Pending typed-definition examples and deferred provenance tooling must remain aligned with these source-consumption instructions when integrated. The diagnostic metadata version is not a source-revision identity.

Validation

  • Node 24.17.0: 160 TypeScript tests passed; build and ESLint passed (two existing warnings).
  • Checkout-bound Python suite: 347 passed, 2 skipped.
  • Changed Python files: flake8, Black and isort checks passed.
  • Isolated local-path Python wheel/install smoke: artifact imports, real vscode-python-tool-internal metadata lookup and default server version verified. Package build/install ran offline after temporary build prerequisites were installed.
  • Separate source-entry TypeScript consumer type-check/esbuild dependency-closure smoke passed; no native pinned-consumer pipeline or VS Code UI validation is claimed.
  • npm lockfile dependency graph/versions are unchanged; YAML checks confirm only the obsolete label was removed; stale identity/changelog-reference scans and git diff --check passed.
  • Existing full TypeScript Prettier failures on 14 untouched production files remain out of scope.

Closes #146.

Use vscode-python-tool-internal for local metadata, document pinned-source consumption, and remove versioned changelog conventions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 85ef72cc-9e26-4bc4-b1c3-55256d9bef91
@edvilme Eduardo Villalpando Mello (edvilme) added the debt Code Cleanup, Refactorings and Repo health. Not feature related label Nov 13, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Approval recommended

No active review issues are reported for the source-only runtime consumption changes.

No open issues 🎉

1 file not reviewed
  • typescript/package-lock.json: Generated file
What changed in this PR

Adopts source-only consumption for the shared Python and TypeScript runtimes, replacing obsolete package identities with internal build metadata while preserving public APIs and existing version values.

Changes:

  • Documents pinned-checkout builds, dependency bundling, and consumer migration steps.
  • Updates Python diagnostic version lookup to the internal distribution, with regression coverage for fallback and injected-server behavior.
  • Removes the versioned changelog and obsolete label configuration, moving upgrade notes to PR descriptions and migration documentation.
File Description
typescript/​README.md Explains source-relative consumption of the built public entry.
typescript/​package.json Uses the internal build identity while remaining private.
typescript/​package-lock.json Aligns root package metadata with the internal identity.
README.md Documents source-only build, installation, bundling, and migration requirements.
python/​vscode_common_python_lsp/​server.py Looks up diagnostic versions using only the internal distribution.
python/​tests/​test_server.py Covers internal metadata lookup, fallback, and injected-server behavior.
python/​README.md Clarifies local installation and the unchanged import namespace.
python/​pyproject.toml Sets the internal distribution name and private classifier.
CONTRIBUTING.md Clarifies build identities and consumer-facing change documentation.
CHANGELOG.md Removes the versioned changelog.
.github/​workflows/​pr-labels.yml Removes no-changelog from accepted PR labels.
.github/​dependabot.yml Stops applying the obsolete no-changelog label.

Review effort: Balanced

@rchiodo

Copy link
Copy Markdown
Contributor

🔒 Automated review in progress — Rich Chiodo (@rchiodo) is auto-reviewing this PR.

@rchiodo

Copy link
Copy Markdown
Contributor

Reviewed commit: d43dbb781cfca8cd6871336547bd65bc87e75369

Result: 🔴 could-not-verify

Verification details

Verification: Automated verification is best effort. The PR author remains responsible for testing.

Summary: [unavailable] Container verification could not start and local execution was not authorized for this PR HEAD: Podman machine &#x27;pyrx-automation&#x27; is not running.

Test runs: none recorded.

@rchiodo Rich Chiodo (rchiodo) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Approved via Review Center.

@rchiodo Rich Chiodo (rchiodo) added the review-auto:approved Automated review: no blocking findings (approval posted). label Nov 13, 2026
@edvilme
Eduardo Villalpando Mello (edvilme) merged commit f2c0357 into main Nov 13, 2026
21 checks passed
@edvilme
Eduardo Villalpando Mello (edvilme) deleted the refactor/source-only-identities branch November 13, 2026 18:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

debt Code Cleanup, Refactorings and Repo health. Not feature related review-auto:approved Automated review: no blocking findings (approval posted).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[S5b] Remove obsolete package identities and document source-only consumption

3 participants