NEWS-2.5.4

__NOTOC__
= WHAT'S CHANGED SINCE 2.5.3 =
2.5.4 is a bugfix release.
== Server / General ==
=== Changes affecting players (supplied rulesets) ===
* When a city reduces in size causing its borders to shrink, avoid messages like "City size 6, citizen count 7 for Porto Alegre" and nearby cities' citizens being gratuitously rearranged. 
* Founding a city on a tile occupied by a fortress could lead to incorrect borders. 
* The tutorial scenario now mentions boats, and warns about killstack. 
* In the civ2civ3 ruleset, 'happyborders' is now enabled by default. 
* In the experimental ruleset, some effects mistakenly did not apply to Big Land units (only to Land units):
** Sun Tzu bonuses and Fortress defense bonuses now apply to Big Land units. 
** City Walls and Great Wall are now effective against Big Land units. 
* Transported units were never upgraded by Leonardo's Workshop. Now they can be upgraded, provided that their current transport could carry the resulting unit. 
* When restoring from a savegame, the full map was revealed to dead players regardless of whether the 'revealmap' option included 'DEAD'. (Now dead players see nothing at all after a reload in this situation, since their final view of the map is not currently included in savegames.) 
* Fix a possible server crash at turn change. 
* Fix possible outdated city information in the client after cancellation of a trade route involving that city. 
* Some messages mentioning units could fail to localize the unit name. 
* When a 2.5.1 or older client received a report (history, wonders of the world, top 5 cities etc) from a 2.5.2 or newer server, it could contain parts of other reports. 
* Starting the client or server with the --file or -f option could sometimes fail if the full save file name was given, with its extension (e.g., -f foo.sav.bz2). 
* At game start, the map label "Highest Peak" is now placed as intended, alongside "Scorched Spot" etc. 
=== Changes affecting other rulesets / modders ===
* The rule that units transporting other units cannot be paradropped is now enforced. 
* Large values for illness_base_factor, _pollution_factor, or _trade_infection (above 255) were not correctly sent to the client. The client would display the wrong illness values, although the correct values would be used for gameplay. Both client and server must be upgraded to benefit from this fix. 
* In hex tilesets, river outlet sprites for horizontal/vertical sides (road.river_outlet_{ne,sw}) are now used if present. This may affect the display of existing tilesets (for instance, it affects the supplied hex2t tileset). 
* Using the editor, changing the ruleset, and entering the editor again could leave editor tools in a funny state. 
* Rulesets with ocean cities could encounter trouble if the server printed debug messages about them, which can happen either with --debug 4 in an --enable-debug build, or when targetted logging is enabled with the /debug command. 
* Extra sanity checking when loading rulesets. 
=== General ===
* Fix possible bad handling of failure to open a bzip2-compressed file. 
* Fixed various warnings about unused entries when loading game files. 
* Some changes to the Windows build, including using Winsock2 for networking. This is not known to have user-visible consequences. 
* Minor memory leak fixes. 
* Some optimizations for speed. 
* Various internal changes which should only affect developers. 
=== AI ===
* When AI switched to a war footing, cities could be left building workers/settlers forever, based on a desire remembered from peacetime. 
* Barbarians never finished pillaging tile improvements. Now there is a chance that they do. 
* If an AI player wanted an ally to declare war on an enemy, it was much less patient if that ally was an AI than if it was a human. Now AI and human allies are treated the same. 
* In rare circumstances, an AI settler could report a "Failed to build city" message to the console. 
* AIs can now consider diplomacy with barbarian players (but the default AI will now not attempt diplomacy with players with the No_Diplomacy effect, so there's no change in behavior with supplied rulesets and AIs). 
== Clients ==
* Setting a server option to a string value containing a space didn't work. 
* Fix a possible crash when starting a server, on Unix. 
* Fix a crash or corruption of saved colors upon opening the client settings dialog for the second time. 
* A client log level specified with -d is now passed on to any spawned server, rather than the server logging with a fixed level of 3 (verbose). 
* Fix a rare assertion failure when the map is revealed at game end. 
* In games with 'phasemode' set for alternating movement, move the client's notion of when the turn changes to after other player's moves. 
* (Qt) It was not possible to request more than 99 gold in a diplomatic treaty. 
* (Qt) The Players dialog would often forget its selection. 
* (Qt) In the chat line, typing characters that clashed with menu shortcuts (for instance Alt+C for Polish 'ć') was impossible. 
* (Qt) Fix some menu items being enabled when they shouldn't be. 
* (SDL) Added item to Options menu to launch built-in help. 
* (Gtk) Fix a crash when drawing the city dialog on some platforms. 
* (Gtk3) The background image in the default theme no longer crawls around when windows are resized. This may also speed up drawing. 
* (Gtk3) Fix warning on console when detaching the lower part of the window. 
* (Gtk3) Fix possible console warnings related to the vote bar. 
== Tools ==
* The modpack installers were not treating an HTTP 404 Not Found as an error; instead they would create the target file containing the error message from the web server. 
* The modpack installers now support the --debug option to diagnose errors. 
* Cosmetic tweak to freeciv-mp-cli output format. 
== Help / Documentation ==
* Documented some limitations of SDI Defense (it is ineffective against weapons owned by yourself, teammates, or allies). 
* Miscellaneous other improvements to in-game text and user documentation. 
* Miscellaneous changes to developer/ruleset docs. 
* Invisible changes to assist localization. 
== Translations ==
* Updated translations:
** Complete translations: French, British English, Spanish.
** Incomplete translations: Finnish (100% core, 89% nations).
* Automatic language selection on a Norwegian Nynorsk version of Windows gave US English translations. Now it uses the Bokmål translation (the only one available) on any Norwegian version of Windows. 
== Build/portability ==
* Builds made with assertions disabled (NDEBUG defined) could fail to load savegames properly. 
* Suppress some warnings from GCC 6. 
* Fix various compiler warnings. The Freeciv core code is warning-clean with Clang (3.5 to 3.8+) and GCC5/6. 
* Fix a possible failure to enable IPv6 where available. 
* Fix a possible attempt to build with IPv6 where some necessary functions were not available. 
* configure could fail for lack of the gthread library, when that library would only be needed for the optional freeciv-mp-gtk2/3. 
* Fix trouble with configure's Qt detection on Mac OS X. 
* Fix harmless build warning "ar: `u' modifier ignored since `D' is the default (see `U')" with recent binutils. 
* Make configure --enable-client with no argument work. 
* make src-check was failing on some platforms. 
* Various fixes for building for Windows. 
* Enable building with recent Gtk3, which has deprecated GtkMisc. 
* Re-running autogen.sh from the release tarball could lead to a broken tree with bits of two incompatible versions of libtool. 
See NEWS for older lists of changes.
Category:NEWS