Hex package metadata

Copy Markdown View Source

This note records the v0.2.1 package metadata expected for the lean_lsp Hex release.

lean_lsp already exists on Hex, so v0.2.1 is a new version of an existing public package.

FieldValue
Package namelean_lsp
Display nameLeanLsp
Version0.2.1
Source URLhttps://github.com/zacky1972/lean_lsp
Home page URLhttps://github.com/zacky1972/lean_lsp
HexDocs URLhttps://hexdocs.pm/lean_lsp
LicenseApache-2.0

The GitHub repository is both the source location and the project home page for v0.2.1.

HexDocs source navigation is generated from the project source_url and docs[:source_ref] metadata in mix.exs. For v0.2.1, docs[:source_ref] should point to the release tag:

source_ref: "v0.2.1"

For the full v0.2.1 release checklist, see Release procedure.

Release description

The package description should describe the runtime-preview scope without claiming production-ready Lean LSP client support.

Suggested description:

Experimental Lean LSP runtime foundation for Elixir; full LSP client support is roadmap work.

If the release includes LeanLsp.Runtime.Local, the description should not remain Docker-only.

The Hex package should expose these links:

LinkTarget
GitHubhttps://github.com/zacky1972/lean_lsp
HexDocshttps://hexdocs.pm/lean_lsp
Changeloghttps://github.com/zacky1972/lean_lsp/blob/main/CHANGELOG.md

The changelog link may continue to point at main, but generated HexDocs source links should point at the immutable v0.2.1 tag.

Pre-publish checks

Before publishing v0.2.1, run the pre-publish validation alias from a clean working tree:

mix publish.check

The alias is safe to run locally. It does not publish a package, does not perform the final interactive publish, and does not require a HEX_API_KEY.

It validates the release in three Hex-specific ways:

  • mix hex.build --unpack --output _build/hex_publish_check builds the package and unpacks its contents for local inspection.
  • mix docs --warnings-as-errors verifies that HexDocs generation still succeeds without warnings.
  • mix hex.publish --dry-run --yes validates package metadata and local publish checks without uploading anything and without interactive prompts.

The --yes flag is used only together with --dry-run so that the pre-publish check remains non-interactive. The final publish command remains a manual maintainer action and should not use --yes.

Inspect _build/hex_publish_check before the final publish and confirm that the package contains the expected source files, README, CHANGELOG, license, and release-scope documentation. Local Dialyzer PLTs and other generated development artifacts should not be present.

Ownership check

Immediately before publishing, confirm that the current Hex user is authorized to publish lean_lsp:

mix hex.user whoami
mix hex.owner list lean_lsp

If the current user is not an owner of lean_lsp, do not publish until ownership has been corrected.