- Source dir: add htdocs/ fallback (components may use htdocs/ not src/)
- Manifest search: increase maxdepth to 3, exclude .git/ and build/
(covers src/admin/com_xxx.xml and similar nested structures)
- Exclude trigger files (.build-trigger, .beta-trigger, .rc-trigger)
from release packages
- Both release.yml and update-server.yml now consistent
Tested extension types: template, plugin (system), component, module,
library, package — all use the same generic workflow.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Remove hardcoded GITEA_REPO and EXT_ELEMENT env vars
- GITEA_REPO derived from github.event.repository.name
- EXT_ELEMENT auto-detected from Joomla manifest <element> tag,
falls back to manifest filename, then repo name
- Workflow is now identical across all Joomla repos — no per-repo
customization needed. Drop it in .gitea/workflows/ and it works.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Tags are now stream names: stable, development, alpha, beta, rc
- Stable releases preserve last 5 versions in the Gitea release body
(new version prepended, oldest trimmed)
- Other streams replace the release body entirely (single latest)
- Version derived from README.md, not the tag name
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Tags are now release stream names: stable, release-candidate, beta,
alpha, development. Version is read from README.md and auto-bumped.
Workflow dispatch also uses stream names as a choice input.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Gitea Actions only runs from .gitea/workflows/. The .github/ copies
created ghost runs (release events on ubuntu-latest) that blocked
the runner queue. All active workflows are in .gitea/workflows/.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Stable releases now update ALL channels (dev, alpha, beta, rc, stable),
not just the matching one. Follows the same cascade map as
update-server.yml: stable→all, rc→rc+lower, beta→beta+lower, etc.
This ensures Joomla sites at any minimum stability level see the
latest version after a stable release.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- [ "$HTTP_CODE" -ge 400 ] && echo returns exit 1 when HTTP is OK
(test returns false=1, becomes step exit code). Use if/then instead.
- Skip GitHub mirror step entirely when GH_TOKEN is empty rather than
running and failing (Gitea marks job failed despite continue-on-error)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Key fixes:
- Checkout main directly for tag triggers (ref conditional) instead of
hacky detached HEAD switching after the fact
- Use git branch --show-current for target_commitish (was github.ref_name
which returns the tag name, not a branch, on tag triggers)
- All git push uses HEAD:${BRANCH} explicitly
- All curl calls use -sS with HTTP code capture and response logging
- SHA256 tag: add if missing, update if present, never leave empty
- Conditional minify/composer steps (skip if files don't exist)
- Summary step runs on always() for visibility on failures
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Remove empty <sha256></sha256> tags from updates.xml — Joomla fails
checksum verification when the tag is present but empty. Omitting the
tag entirely makes Joomla skip checksum validation.
- Fix release.yml detached HEAD on tag checkout — when triggered by a
version tag, git checks out in detached HEAD state and `git push`
fails. Now detects this and switches to main before committing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The enterprise package is dev tooling (MokoStandards), not a runtime
dependency. It was listed in both require (with broken dev-version/04
constraint) and require-dev (with correct ^4.0). The duplicate in
require caused release workflow failures since the published package
04.05.00 doesn't match the dev branch constraint.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Gitea Actions only runs workflows from .gitea/workflows/. The
update-server.yml was only in .github/workflows/ and never triggered
on push to dev. This enables automatic dev/alpha/beta/rc releases.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add template overrides for com_joomgallery (gallery, category, image)
with Schema.org markup, Bootstrap 5 styling, and accessibility
- Sync dev branch version to 01.00.25 (match stable) so dev channel
is visible in Joomla update system (was 01.00.24 < stable 01.00.25)
- Add <creationDate> to auto-release.yml build_entry() and
update-server.yml NEW_ENTRY builder
- Add creationDate update to .gitea/workflows/release.yml auto-bump step
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Apply the same pseudo-element layering (scaled bg image, radial blur
softening, glass-effect overlay panel) to modules using the
banner-overlay.custom-hero class inside container-banner.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>