Skip to content

docs(github-release): document TER publish version-match + v-prefix gotchas#22

Merged
CybotTM merged 2 commits intomainfrom
feat/ter-version-and-vprefix-gotchas
May 5, 2026
Merged

docs(github-release): document TER publish version-match + v-prefix gotchas#22
CybotTM merged 2 commits intomainfrom
feat/ter-version-and-vprefix-gotchas

Conversation

@CybotTM
Copy link
Copy Markdown
Member

@CybotTM CybotTM commented May 5, 2026

Summary

Promote two TYPO3-specific TER publishing gotchas from
t3x-nr-passkeys-be's local memory into the skill, so any TYPO3
release benefits.

  • Tag/ext_emconf.php version match requiredtailor ter:publish
    hard-fails with configured version does not match when the git tag
    disagrees with ext_emconf.php ('version' => '...') or
    Documentation/guides.xml (version= / release= attributes). The
    release-prep PR pattern (release-process.md Phase 1-3) already
    prevents this; the new file documents why the ordering matters so
    it isn't broken in custom workflows.
  • v-prefix mismatch in custom publish workflows — comparing
    ${GITHUB_REF#refs/tags/} (gives v0.6.0) directly against
    ext_emconf.php (0.6.0) silently fails validation. Show the
    three-variable strip pattern (CHECKOUT_REF / TAG / VERSION).
    Note that netresearch/typo3-ci-workflows's publish-to-ter.yml
    already handles this — only bespoke per-project workflows need to
    apply it.

Placement

  • New file: references/typo3-ter-publishing.md — initial-publish
    gotchas (separate from ter-republish.md which is scoped to
    re-publish-without-re-tag)
  • SKILL.md — added references-list entry; trimmed the
    recovery-procedures.md description and shortened the
    ter-republish.md entry to stay under the 500-word limit (now 497)
  • references/ter-republish.md — added cross-link in ## Related

Test plan

  • wc -w skills/github-release/SKILL.md ≤ 500 (497)
  • No lines > 300 chars in the new reference file
  • Files end with single \n (no trailing blank line)
  • Commit signed (ED25519, info@sebastianmendel.de) + DCO sign-off
  • CI green

…otchas

Two TYPO3-specific failure modes were siloed in t3x-nr-passkeys-be's
local memory; promote them into the skill so any TYPO3 release
benefits.

1. tailor ter:publish hard-fails with "configured version does not
   match" if ext_emconf.php (or Documentation/guides.xml) version
   disagrees with the git tag. The release-prep PR pattern
   (release-process.md Phase 1-3) already prevents this; document why
   it matters so the ordering isn't broken in custom workflows.

2. Custom publish workflows that compare ${GITHUB_REF#refs/tags/}
   directly against ext_emconf.php compare v0.6.0 vs 0.6.0 and silently
   fail validation. Show the three-variable strip pattern
   (CHECKOUT_REF / TAG / VERSION). Note the shared
   netresearch/typo3-ci-workflows publish-to-ter.yml already implements
   this — only bespoke per-project workflows need to handle it.

Add the new content to references/typo3-ter-publishing.md (separate
from ter-republish.md, which is scoped to re-publish-without-re-tag).
Add a SKILL.md references-list entry (497 words, under the 500 limit).
Cross-link from ter-republish.md.

Signed-off-by: Sebastian Mendel <info@sebastianmendel.de>
Copilot AI review requested due to automatic review settings May 5, 2026 21:34
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a new reference document, typo3-ter-publishing.md, which outlines common issues encountered when publishing TYPO3 extensions to TER, specifically focusing on version synchronization and tag prefix handling. Feedback highlights that ext_emconf.php is the primary validation source for the tailor tool, and the provided YAML example for environment variables needs correction as shell parameter expansion is not supported directly within the env block of GitHub Actions.

Comment thread skills/github-release/references/typo3-ter-publishing.md Outdated
Comment thread skills/github-release/references/typo3-ter-publishing.md
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR extends the GitHub release skill’s TYPO3 guidance by documenting two TER publishing pitfalls that can break release automation: version mismatches across tag/version files and v-prefix handling in custom workflows. It fits the codebase by adding TYPO3-specific reference material alongside the existing release-process and TER re-publish documentation.

Changes:

  • Added a new TYPO3 TER publishing reference covering initial-publish version alignment and tag-prefix handling.
  • Linked the new reference from SKILL.md and tightened nearby reference descriptions to keep the skill summary concise.
  • Added a reciprocal related-link from the TER re-publish reference to the new initial-publish guide.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
skills/github-release/SKILL.md Adds the new TYPO3 TER publishing reference to the skill’s reference index.
skills/github-release/references/typo3-ter-publishing.md New reference documenting initial TER publish failure modes and workflow guidance.
skills/github-release/references/ter-republish.md Adds a related-link pointing readers to the new initial-publish reference.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

…x env-block expansion

Address PR #22 review feedback from gemini-code-assist:

1. Section 1 conflated ext_emconf.php (the actual validation source for
   tailor ter:publish) with Documentation/guides.xml (a docs.typo3.org
   rendering concern). Lead with ext_emconf.php as the single source of
   truth; demote guides.xml to a "keep in sync for docs rendering"
   item that does not cause the "configured version does not match"
   error.

2. Section 2 showed a broken pseudo-code env: block:

       env:
         TAG: ${GITHUB_REF#refs/tags/}    # never expanded
         VERSION: ${TAG#v}                # never expanded

   GitHub Actions env: blocks do NOT perform shell parameter expansion;
   the values become literal strings. Replace with the working pattern:
   pass github.ref directly to actions/checkout, derive TAG/VERSION in
   a run: step, and write them to $GITHUB_ENV for downstream steps.
   Add a concrete validation snippet (PHP one-liner reading ext_emconf.php
   and erroring on mismatch) so the example is end-to-end useful for
   anyone writing a custom publish workflow.

Signed-off-by: Sebastian Mendel <info@sebastianmendel.de>
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 5, 2026

@CybotTM CybotTM merged commit bcdfdc2 into main May 5, 2026
9 checks passed
@CybotTM CybotTM deleted the feat/ter-version-and-vprefix-gotchas branch May 5, 2026 21:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants