Skip to content

Introduce semantic versioning release automation for stable distribution #144

Description

@toshi0806

概要

latex-environment にセマンティックバージョニング(vX.Y.Z)による安定版リリースの自動化を導入する。これは aldc 側の GitHub Releases 移行(smkwlab/aldc#19)の 前提(Phase 0) となる先行課題である。

背景

aldc は latex-environment を配布する際、固定で release ブランチのアーカイブを取得している。

# aldc 現状
${REPOSITORY_URL}/archive/refs/heads/release.zip

aldc#19 で「ブランチアーカイブ方式から GitHub Releases 方式への移行」が提案されたが、調査の結果、latex-environment 側にバージョン付き安定版リリースが存在しないことが判明した(調査コメント)。

現状の課題

GitHub Releases API で確認した latex-environment のリリースの実態:

  • 既存の release はすべて prerelease: true
  • タグ名はブランチ名ベースの自動生成(例: issue-92-actionlint-improvements-release, update-to-v3.1.0-release
  • 実体は LaTeX Release Action による PDF ビルド成果物であり、devcontainer テンプレートのバージョン付きリリースではない
  • releases/latest 相当の安定版が無い(最新 release が feature ブランチの prerelease になる)
  • ブランチは main / release / 作業中ブランチのみで、バージョンタグ運用が無い

このため aldc 側で releases/latest を参照しても安定版を取得できず、aldc の移行が成立しない。

ゴール

  1. 安定版リリースの自動発行

    • release ブランチへのマージ(または main の安定化タイミング)で vX.Y.Z タグと安定版 Release(prerelease: false)を発行する
    • releases/latest が常にテンプレート配布用の安定版を指すようにする
  2. PDF 成果物リリースとの分離 / 識別

    • LaTeX Release Action による PDF 成果物リリースと、テンプレート配布用リリースを分離するか、タグ命名規則・prerelease フラグで明確に識別可能にする
  3. バージョニング運用ルールの策定

    • セマンティックバージョニング(メジャー=破壊的変更 / マイナー=機能追加 / パッチ=修正)の基準を定義
    • リリースノート(変更内容・破壊的変更の明示)の運用ルール

検討事項

  • バージョン番号の付与方法(手動タグ / Conventional Commits ベースの自動採番 / release-please 等のツール導入)
  • 既存の release ブランチ運用との整合(ブランチは残しつつタグ運用を追加するか)
  • 配布アーカイブの形式(archive/refs/tags/vX.Y.Z.zip で十分か、Release アセットとして配布するか)
  • 既存の自動生成 prerelease(PDF 成果物)の扱い・整理

影響範囲

  • latex-environment: リリース自動化ワークフロー、タグ運用
  • aldc: 本 Issue 完了後に Phase 1 以降(バージョン解決ロジック、--version オプション)を着手可能になる
  • エコシステム全体: バージョン管理方針の統一

関連

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions