Add release pipeline, custom repo manifest, and pre-push linter
First release-ready cycle for Forgeimizer. Bumps the version to 0.1.0, introduces the Hellion Forge custom repo distribution path, and wires up the HellionChat-style pre-push lint gate. Version: - csproj <Version> 2.9.1.1 → 0.1.0. Forgeimizer adopts its own SemVer line starting at 0.1.0; the upstream Craftimizer 2.9.1.1 base is documented in the manifest description, CHANGELOG, README, and NOTICE for each release. Release pipeline (.gitea/workflows/): - build.yml on push/PR/dispatch: downloads Dalamud staging, dotnet restore + build of Craftimizer/Craftimizer.csproj. Fails the workflow if the plugin no longer compiles against current SDK 15. - release.yml on v*-tag + dispatch: builds Release, locates the packager-produced latest.zip under Craftimizer/bin/x64/Release/, extracts the matching ## vX.Y.Z block from CHANGELOG.md via awk, appends .gitea/release-footer.md, and attaches everything to the Gitea release via gitea.com/actions/release-action. - release-footer.md: install path with the custom-repo URL, conflict notice, attribution to Asriel Camora, MIT licence reference, Hellion Forge footer. - security.yml: references the shared JonKazama-Hellion/security-workflows/security-scan.yml@main workflow (Semgrep + Trivy) on push/PR + weekly Monday schedule + dispatch. Custom Dalamud repo manifest: - repo.json at the repo root. AssemblyVersion 0.1.0.0, TestingAssemblyVersion 0.1.0.0, all three DownloadLink* pointing at releases/download/v0.1.0/latest.zip, embedded Changelog block, full description, tag list, icon and image URLs hosted off the Hellion Gitea. Subscribers add the raw URL of this file to Dalamud's Custom Plugin Repositories list. Linter tooling: - dotnet-tools.json with csharpier 1.2.6 as a local tool. - .markdownlint.json copied from HellionChat (atx headers, dash bullets, underscore italics, asterisk strong) with MD060 disabled for our long-cell tables. - renovate.json adapted from HellionChat: weekly schedule, grouped minor/patch updates per ecosystem, major updates get their own breaking-change PR, weekly lock file refresh, OSV vulnerability alerts. Pre-push lint gate (.githooks/ + scripts/): - .githooks/pre-push runs scripts/preflight.sh. - preflight.sh: 4 blocks A (version consistency), B (dotnet build), C (dotnet csharpier check Craftimizer/), D (markdownlint via npx). - verify-version-consistency.sh: csproj <Version> matches repo.json AssemblyVersion + TestingAssemblyVersion + a vX.Y.Z tag string is present in all three DownloadLink* URLs. Block A fails loud with a Fix: hint if anything drifts. - setup-hooks.sh: sets core.hooksPath to .githooks, chmod +x the scripts. Run once after cloning. CHANGELOG: - New CHANGELOG.md at the repo root. First entry is v0.1.0 with the Hellion-style block (date, summary, bullet list, upstream-base attribution, full-history link). The release workflow extracts this entry verbatim as the Gitea release body. Docs: - README header updated with the new version badge, a release badge, and a build badge. New CHANGELOG reference, slash-command table, install section with both custom-repo and dev-install paths, conflict notice paragraph. Plugin Version 0.1.0 stays in line with the verify-version-consistency check; tag v0.1.0 is intentionally NOT pushed in this commit. Once the user enables Gitea Actions on the repo, push the tag separately to trigger the first release build.
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
# Forgeimizer
|
||||
|
||||
[](https://gitea.hellion-forge.cloud/JonKazama-Hellion/Craftimizer/actions/workflows/build.yml)
|
||||
[](LICENSE)
|
||||
[](https://gitea.hellion-forge.cloud/JonKazama-Hellion/Craftimizer/releases/latest)
|
||||
[](https://github.com/goatcorp/Dalamud)
|
||||
[](https://dotnet.microsoft.com/)
|
||||
[](https://www.finalfantasyxiv.com/)
|
||||
@@ -10,12 +12,17 @@
|
||||
<img src="docs/images/hellion-forge.png" alt="Hellion Forge" width="180" />
|
||||
</p>
|
||||
|
||||
**Version 2.9.1.1** — a Hellion Forge maintenance fork of
|
||||
[Craftimizer](https://github.com/WorkingRobot/Craftimizer) by
|
||||
**Version 0.1.0** — a Hellion Forge maintenance fork of
|
||||
[Craftimizer](https://github.com/WorkingRobot/Craftimizer) 2.9.1.1 by
|
||||
[Asriel Camora](https://github.com/WorkingRobot), brought back to life on
|
||||
Dalamud SDK 15 for FFXIV 7.5+. Installs as a standalone plugin under the name
|
||||
**Forgeimizer**, refuses to load while upstream Craftimizer is active.
|
||||
|
||||
Forgeimizer uses an independent version line (starting at 0.1.0). The
|
||||
upstream Craftimizer version the current fork is built on is always
|
||||
called out in the description above and the changelog entry for each
|
||||
release. See [`CHANGELOG.md`](CHANGELOG.md) for the full release history.
|
||||
|
||||
Upstream Craftimizer received its last update for FFXIV 7.4 in late 2025 and
|
||||
has been dormant since. With the Dalamud API jump from level 14 to 15 in
|
||||
early 2026, the plugin stopped loading. Forgeimizer is a narrow
|
||||
@@ -117,11 +124,11 @@ All upstream Craftimizer slash commands work unchanged, plus one alias:
|
||||
|
||||
| Command | What it does |
|
||||
| -------------------------------------- | ------------------------------------------------ |
|
||||
| `/craftimizer` *or* **`/forgeimizer`** | Open the settings window |
|
||||
| `/crafteditor` *or* `/macroeditor` | Open the crafting macro editor |
|
||||
| `/craftimizer` _or_ **`/forgeimizer`** | Open the settings window |
|
||||
| `/crafteditor` _or_ `/macroeditor` | Open the crafting macro editor |
|
||||
| `/craftaction` | Execute the next suggested action in synth helper |
|
||||
| `/craftretry` | Click "Retry" in the synthesis helper |
|
||||
| `/craftmacros` *or* `/macrolist` | Open the crafting macros window |
|
||||
| `/craftmacros` _or_ `/macrolist` | Open the crafting macros window |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user