* Added session records to carry resource information over to the
clients
* Added SQL support code for the various views
* Added interface and implementation of the resource information access
component
* Hooked resources information queries into both the empire and planet
management component
* Added resources display to planet and overview pages
* Added a set of tables which define game updates and their targets.
These definitions replace the old enumerate type. Added a set of
triggers which automatically create specific update tables, insert
missing entries, etc... when game update types are being manipulated.
* Removed manual insertion of game updates from empire creation
function and universe generator.
* Added registration of core update targets (i.e. planets and empires),
updated all existing game update processing functions and added type
registrations
* Created Maven project for game updates control components, moved
existing components from the -simple project, rewritten most of what
they contained, added new components for server-side update batch
processing
* Empire mining settings have been included in the empire's resource
information records
* Planet-specific mining settings have been included in the resource
provider information records
* Added dump view for empire resources
* Added empire resource information storage class and associated row
mapper
* Integrated empire resource information into the summary generator
* Dump version bumped up to 2
* Added SQL view that shows resource delta and provider information for
all empire-owned planets
* Added new storage classes for resource providers and resource deltas
* Added row mapper which extracts all planet resources information
(providers and deltas)
* Modified dump generator to include planet resources / resource
providers
* A function called by the initial universe generator was changed, but
the call wasn't updated accordingly. This problem has been fixed.
* Variable / procedure name errors in some of the old, untested
functions.
* Added various views and helper functions used by the mining
computation but which may be re-used in other parts.
* Added mining computation update type and associated update function
* New constants: game.resources.weightBase (the value used to compute
weights from mining settings) and game.resources.extraction (the
quantity extracted in a day from a full provider at difficulty 0)
* Added a few that can be used to retrieve mining settings for resource
providers from empire-owned planets from either the empire-wide or
planet-specific settings
* Added missing table that should store a planet's resources data
(income and upkeep for each type of resource).
* Modified resource definition functions and universe generator to
initialise planet resource records as well
* Heavy clean-up in resource definition function unit tests
* Empire resources will be initialised when an empire is created
* When a new resource is created through the appropriate defs.uoc_...
function, it will be added to all empires as well.
* Changed the way mining settings work: use a priority value (between 0
and 4) as the weight. Leaving them as they were before would have caused
numerous problems (and a lot of unnecessary code to work around them)
* Empire mining settings will be created along with the empire's own
record. By default all natural resources will have weight = 2.
* Added a set of four stored procedures which can be used to update an
empire's mining settings, including planet-specific settings. The
emp.mset_update_start() function can be used to start an update (on an
empire's settings if there is only one parameter, or on a planet's
settings if there are two parameters); the emp.mset_update_set() and
emp.mset_update_apply() functions are then used to modify the settings
and apply the changes, respectively.
* Added user mapping on the "remote" logging database for the
administrative user. This allows calls to sys.write_sql_log() to succeed
when they are executed by code with administrative privileges.
* Added test suites for both the link to the database and the function
itself.
* Replaced RAISE NOTICE with actual logging in the universe generator
* The main loader script has been updated to generate the list of files
it needs to load automatically. As a consequence, files that contained
manually-maintained lists of scripts have been removed, and definition
directories have been renamed accordingly.
* PostgreSQL extension loading and configuration has been moved to a
separate script to be loaded automatically in the main transaction.
* Data and function definition scripts that had the -data or -functions
suffix have been renamed (the suffix is unnecessary).
* Unit tests have been reorganised to follow the definition's structure.
* Documentation has been improved