mirror of
https://github.com/Mezeporta/Erupe.git
synced 2026-05-06 14:24:15 +02:00
Brings 53 develop commits (i18n, Diva, campaign, guild invites, save transfer, return/rookie guilds, hunting tournament, JSON quest/scenario loaders, Ghidra-derived user binary parsing, and misc fixes) onto main now that 9.3.2 has been tagged and released. Resolves two overlap zones: 1. Migration number collision. Main shipped 0010_fix_zero_rasta_id and 0011_fix_stale_boost_time in 9.3.2; develop had independently numbered 0010_campaign..0015_tournament. The migration runner keys applied versions by integer, so coexisting files with the same numeric prefix would silently skip each other. Develop's files have been renumbered to 0016..0021, leaving main's 0010/0011 intact. A schema_version rename script is required on any server that had already applied the old develop numbers (only frontier.mogapedia.fr at the time of this merge). 2. CHANGELOG.md. Develop's in-progress feature entries move into [Unreleased] with updated migration references; the [9.3.2] section is preserved verbatim. main.go version string bumped to 9.4.0-dev to mark the new cycle. Full test suite (go test -race ./...) passes.
20 lines
896 B
SQL
20 lines
896 B
SQL
-- Dedicated table for guild-initiated scout invitations, separate from
|
|
-- player-initiated applications. This gives each invitation a real serial PK
|
|
-- so the client's InvitationID field can map to an actual database row
|
|
-- instead of being aliased to the character ID.
|
|
CREATE TABLE IF NOT EXISTS guild_invites (
|
|
id serial PRIMARY KEY,
|
|
guild_id integer REFERENCES guilds(id),
|
|
character_id integer REFERENCES characters(id),
|
|
actor_id integer REFERENCES characters(id),
|
|
created_at timestamptz NOT NULL DEFAULT now()
|
|
);
|
|
|
|
-- Migrate any existing scout invitations from guild_applications.
|
|
INSERT INTO guild_invites (guild_id, character_id, actor_id, created_at)
|
|
SELECT guild_id, character_id, actor_id, COALESCE(created_at, now())
|
|
FROM guild_applications
|
|
WHERE application_type = 'invited';
|
|
|
|
DELETE FROM guild_applications WHERE application_type = 'invited';
|