rlsbl v0.113.0 /rlsbl.commands.release.publish
On this page

Publishing helpers: selfblog blog post generation, GitHub Release asset uploads, and stale dependency advisory for post-release notifications.

#rlsbl.commands.release.publish

#rlsbl.commands.release.publish

Publishing helpers: selfblog blog post generation, GitHub Release asset uploads, and stale dependency advisory for post-release notifications.

#_run_selfblog_post_generate

python
def _run_selfblog_post_generate(flags, *, project_dir=None, release_config=None, new_version=None, current_version=None, bump_type=None, changelog_entry=None, tag=None, releases_dir=None)

Generate a blog post via selfblog during release.

Called when release_config.blog is True and selfdoc.json exists. Writes the changelog entry to a temp file and invokes selfblog post generate --from-release with all release metadata.

The generated post file and updated manifest are picked up by the hook-generated-files mechanism (dirty snapshot diff) and included in the release commit.

#_print_stale_dep_advisory

python
def _print_stale_dep_advisory(monorepo_name, new_version, monorepo_root=None)

Print advisory about downstream packages with stale constraints.

After releasing a package, checks if any workspace package that depends on the just-released package has a constraint that no longer satisfies the new version. Prints to stderr as a non-blocking advisory.

#_prefix_artifact

python
def _prefix_artifact(artifact_path, member_name)

Prefix an artifact filename with the member name for deterministic naming.

E.g., /dist/mylib-0.1.0.tar.gz -> /dist/core--mylib-0.1.0.tar.gz where core is the member name.

#_upload_assets_for_config

python
def _upload_assets_for_config(tag, new_version, log, flags, config, project_dir, ctx, *, member_name=None)

Build and upload assets for a single config (member or representative).

When member_name is set, artifact filenames are prefixed with the member name to ensure deterministic, non-colliding names across members.

#upload_release_assets

python
def upload_release_assets(tag, new_version, log, flags, *, ctx)

Build and upload release assets for pipelines with assets: true or custom_assets.

Handles standalone and implicit-mode projects. In releasable mode, the caller (_run_release_mutating) iterates members directly and calls _upload_assets_for_config per member.

Skips silently if no pipelines have assets enabled.

ctx: ProjectContext carrying project_root, monorepo_root, and config.

Search