Commit Graph

36 Commits

Author SHA1 Message Date
Houmgaor
27fb0faa1e feat(db): add embedded auto-migrating schema system
Replace 4 independent schema management code paths (Docker shell
script, setup wizard pg_restore, test helpers, manual psql) with a
single migration runner embedded in the server binary.

The new server/migrations/ package uses Go embed to bundle all SQL
schemas. On startup, Migrate() creates a schema_version tracking
table, detects existing databases (auto-marks baseline as applied),
and runs pending migrations in transactions.

Key changes:
- Consolidated init.sql + 9.2-update + 33 patches into 0001_init.sql
- Setup wizard simplified to single "Apply schema" checkbox
- Test helpers use migrations.Migrate() instead of pg_restore
- Docker no longer needs schema volume mounts or init script
- Seed data (shops, events, gacha) embedded and applied via API
- Future migrations just add 0002_*.sql files — no manual steps
2026-02-23 21:19:21 +01:00
Houmgaor
b96cd0904b fix: ease onboarding with startup warnings and doc corrections
- Warn at startup when quest files are missing (clients crash without
  them) and point users to the download link
- Fix Host config description: it's the advertised IP, not a bind
  address — 0.0.0.0 was wrong advice
- Load bundled schemas (shops, events, gacha) in Docker init so new
  users get working demo data out of the box
- Renumber duplicate patch schema 28 → 32 to resolve numbering
  collision
- Fix patch schema example filename to use hyphens matching actual
  files
2026-02-23 20:23:08 +01:00
Houmgaor
e8963ce0cf ci: add release workflow to publish binaries on tag push
Users without a Go toolchain can now download pre-built binaries
directly from GitHub Releases (closes #161). The workflow triggers
on v* tags, builds Linux and Windows amd64 archives, and attaches
them along with SCHEMA.sql to an auto-generated release.

Also fixes the README badge URL (go-improved.yml → go.yml).
2026-02-22 20:08:25 +01:00
Houmgaor
a8f70df1fb fix: clean up Docker setup (compose, README, gitignore)
- Remove deprecated version field from docker-compose.yml
- Pin Postgres to 18-alpine (matches existing db-data)
- Remove undocumented web (Apache) service
- Fix config/bin volume mounts to use docker/ directory
- Gitignore docker/savedata, docker/bin, docker/config.json
- Rewrite docker/README.md: fix typos, use docker compose V2
  commands, match actual compose file behavior
- Link docker/README.md from main README Docker section
2026-02-17 15:16:57 +01:00
Houmgaor
3413ff638a doc: restructure README for new users and fix dead community links
Reorganize README to put Quick Start first with three install paths
(Docker/binary/source), give quest files their own section, consolidate
updating instructions, trim configuration to essentials with wiki link,
and move informational sections (features, architecture) below setup.

Absorb community tool links from the now-removed pastebin FAQ and update
dead URLs: Ferias → English Project, damage calc → fist.moe, armor set
searcher → mhfz-ass GitHub releases.
2026-02-17 15:04:01 +01:00
Houmgaor
63a91a879a doc: describe Mogapedia as French MH community and Erupe maintainers 2026-02-17 14:46:25 +01:00
Houmgaor
220de4cf3b doc: replace Codecov badge with Go version badge 2026-02-17 00:22:22 +01:00
Houmgaor
6eb9ed66cc doc: add Codecov coverage badge to README 2026-02-17 00:13:26 +01:00
Houmgaor
5724a605a2 doc: add CI, CodeQL, and release badges to README 2026-02-17 00:12:02 +01:00
Houmgaor
9c0a65069d doc: update README for upstream transition
Remove fork language and point all links to Mezeporta/Erupe.
Update stable branch reference to stable/v9.2.x.
2026-02-16 12:20:44 +01:00
Houmgaor
68b9cf48d1 doc: expamding documentation. 2025-11-09 16:47:18 +01:00
Houmgaor
02d5195611 docs: starting to expand the documentation. 2025-10-19 18:57:10 +02:00
Houmgaor
1268a77712 docs(md): minor review of the markdown files. 2025-09-10 00:19:46 +02:00
wish
8f3624d589 Update README.md 2025-05-16 18:10:13 +10:00
wish
734a982689 proofreading 2024-03-02 21:37:25 +11:00
stratic-dev
851301b088 Updated readme and added init schemas to folder 2024-01-26 17:59:34 +00:00
wish
0b75a42682 Update README.md 2023-10-26 22:31:00 +11:00
wish
3edc77d3b5 Update README.md 2023-10-26 22:30:04 +11:00
wish
58b401d978 Update README.md 2023-10-26 22:29:42 +11:00
wish
6bc883cc0e update README 2023-10-02 23:10:48 +11:00
wish
8425c0a99e README formatting 2023-07-16 12:59:23 +10:00
wish
88970a3ec3 readme review pass 2 2023-07-08 22:14:18 +10:00
wish
cf1da979ec readme review pass 1 2023-07-08 00:55:26 +10:00
straticspaff
5af40ab46a clean: added version info 2023-07-03 21:32:11 +01:00
straticspaff
ec1c9631c8 clean: added config to readme 2023-07-03 21:25:46 +01:00
Evotushon
3f6b7cd95e Remove typo 2023-04-24 16:31:48 +02:00
Evotushon
75a803f1a2 Make README.md adequate to Markdown Style Standards 2023-04-24 16:26:56 +02:00
wish
5bf9a946f6 update readme 2022-12-24 00:17:33 +11:00
wish
9d0e47c2a8 Update README.md 2022-12-11 22:44:08 +11:00
wish
1aa7bfdd51 Update README.md 2022-09-01 22:26:28 +10:00
wish
1df961d2aa update readme 2022-09-01 20:40:31 +10:00
Evotushon
95104571a6 Rewrite README.md (#14) 2022-08-03 22:11:02 +10:00
wish
c5fa728c5a update readme 2022-07-23 10:17:11 +10:00
xl3lackout
8d196806c8 Update README.md 2022-04-11 17:49:39 -04:00
xl3lackout
8a5283439d Update README.md 2022-03-31 18:57:26 -04:00
xl3lackout
a92897404a Reupload 2022-02-25 19:44:26 -05:00