-jk- (68):
      bumpwater: fixed banding on shores for ATI gpus
      bumpwater: fixed banding on shores for ATI gpus
      lua: fixed Script.AddSyncedActionFallback
      bfgrounddrawer: fixed crash in BFGroundDrawer when the viewRadius was too low -> happened when setting extreme (<~0.4) GroundLODScaleXYZ values (Mantis #1285)
      cleanup in BFGroundDrawer
      cob: some explode() optimizations
      fixed memoryleak in flyingpieces
      fix compilation error in BFGroundDrawer
      lua: fixed a bug in SetWaterParams
      BumpWater: added a new option BumpWaterUseUniforms. it lets you change the water params on runtime (lua -> SetWaterParams), so it doesn't need to recompile the shader,etc.
      moved UpdateDrawPos in front of draw queue
      foobar
      fix
      line ending
      block repeated key presses in CGameController if it is the 1st character (e.g. block repeated ` when you create a labeled marker)
      added a float4
      fixed s3o units were rendered with the 3do textureatlas when the unit is ghosted
      VertexArray  * moved inlined functions into a seperate file  * added a new type 2dT (2d vertex pos + 2d texcoords)  * optimize vertex array strip length (try to render vertices in a bunch of 2048)  * added a callback function for DrawArray2dT (so you can colors between stripes etc.)
      removed a unneeded il.h dependency
      better UI defaults, save GuiOpacity and added /incguiopacity,/decguiopacity & /viewtaflip to set word completion
      clear stencil buffer each frame
      optimized smf texture upload
      fixed a rendering bug in flying pieces
      added 2 LoadMsgs ("Parsing definitions" & "Loading map informations")
      added CBitmap::Blur(iterations,weight)
      new FontSystem: bugfixes:  * glyphs aren't distorted on widescreens anymore  * font doesn't need to get recreated on window resize  * textwidth is calculated correctly visuals:  * supports kerning  * full cp1252 (WinLatin-1) support  * all glyphs have a blurred version in the fontatlas used for outline&shadow rendering a more powerfull api:  * supports linebreaks  * supports alignment (vertical & horizontal)  * supports text decoration (outline & shadow)  * on font creation variable outlinewidth/-weight  * a new ::Wrap() functions that adds linebreaks & ellipsis (and supports inline colorcodes) performance:  * in default situations 10x faster (with outlines even more)  * reduces state changes via font->Begin() & font->End()  * uses vertex arrays  * renders glyph outlines as 1 quad
      export some more CMDDesc to LayoutButtons callin (name,tooltip,onlyTexture)
      lua interface for the new FontSystem: gl.LoadFont( fontfile , size = 14, outlinewidth = 2, outlineweight = 15) -> lua_font gl.DeleteFont( lua_font )
      fixed some bugs in LuaUnsyncedCtrl.cpp
      delete unused glTextBox
      floating factories: only move the to be build unit on waterlevel, if it is underwater (fixes floating factories that can be build on ground, too)
      Revert "line ending"
      Merge branch 'newfont'
      fix compile error
      fixed uninitialized var in LuaFonts.cpp
      add relative and absolute paths to scons include list
      missing pointer dereferences
      changed default font to FreeSansBold (it is under GPL+font exception)
      updated widget selector
      changed lineHeight calculation in glFont & some improvements
      autodetection for atihacks now uses GL_VENDOR instead of some ati-only extension
      2nd try to fix red&blue swizzle in FBOs on ATIs
      allow mods to override default tree&geo featureDefs
      improve feature falling animation
      don't crash if the fonts in the configfile can't be loaded (instead try load any other font in the font folder)
      fix line ending
      fix
      don't crash in LuaFonts either if the font can't get loaded
      force update to new fontsize defaults
      fix line ending
      glFont: fixed textcolor aren't reseted in immediate mode
      fixed incorrect ground rendering after extreme heightmap changes (thx zwzsg)
      fixed more bugs with extreme height changes
      gave fix for the ominous red/blue swizzle bug in ati drivers an own option called "AtiSwapRBFix"
      replaced some `string UnitDefName` function arguments with `const UnitDef*` (less string comparisions in GetUnitByName)
      use fastmath::sqrt
      BFGroundDrawer: fixed a bug and optimized bigGroundLine rendering to "front to back" (render nearest groundlines first)
      BFGroundTextures: load lowest mipmap for squares out of view
      fix
      use 24bits for depthbuffer and 8bit stencil (fits in one 32bit renderbuffer and is optimized by all gfxs)
      fixed resize under posix and added to save the window state (maximized, minimized) under win
      fix
      workaround a bug in ATI's x-series drivers causing corrupted radar icons (mantis #1315)
      fixed map marker text color
      add Spring.GetMapOptions() to defs.lua stage
      allow 0 chars in lua font api (especially for colorcodes)
      disable ALPHA_TEST in decal render pass (don't set it as long as you are writting to the depthbuffer)
      scars & tracks: only construct the final image via red:=brightness & green:=alpha, if the image is a bitmap (only those don't have an alpha channel themselves). NOTE: this can give strange results if a mod already use png's etc. for scars & tracks

Andrea Piras (1):
      Changes to the widgethandler: - merged togheter widget_order with widget_data - now a config file gets created for every mod, path: LuaUI/Config/ + modShortName + .lua

Auswaschbar (5):
      cmake: hopefully find freetype library from mingwlibs
      cmake: add mingw-package directory to CMAKE_ROOT_DIR by default
      cmake: cleanup
      remove unneeded CSound::prevPos variable
      LocalSetup => ClientSetup + its own file

Chris Clearwater (13):
      Added support for "pool" Archive format.
      Fixed mix of tabs and spaces.
      Really fix spaces/tabs.
      ArchivePool  * Index file is now a binary format and includes CRC32
      * FixSlashes in ArchivePool
      * ArchivePool open files in binary mode
      Merge branch 'master' of git://github.com/spring/spring
      * ArchivePool read pool files in binary mode as well
      * ArchivePool minor cleanups
      * ArchiveScanner now scans "packages" dir in datadirs
      Merge branch 'master' of git://github.com/spring/spring
      * ArchivePool: fix segfault introduced by zerver
      * ArchivePool: minor cleanup

Dmytry Lavrov (1):
      Fixed rendering issue when using /mapmarks 0

Karl-Robert Ernst (341):
      fix AIDIR and cmake in general
      add "set" -command to replace "seti", "setf" and "sets" -- allows to set variables in the config file
      regression: set MaxSpeed to 20 on (test)singleplayer
      only end the game after 1 second (30 frames) playing, (fix insta-gameover vs. AIs which do Initialization in frame 0)
      don't render a frame every 15 timeframes, but do so every 15 * userSpeed timeframes
      fixed the server to run away from the local player on high gamespeeds
      remove playerlimit from SyncDebugger
      make PlayerHandler use variable-sized vector instead of array with size MAX_PLAYERS
      make the number of players more flexible, and allow up to 255
      fix assertion in CSelectedUnits
      fix DemoAnalyser
      fix destination-field in chatmessage
      add a "_" to the player's name if a player with the same name is already connected to the server
      made CPlayer::currentStats a non-pointer
      Merge branch 'noplayerlimit'
      fix malformed format string in server
      Merge branch '0.78.2-branch'
      fix malformed format string in server
      remove old CGame* from CGameHelper
      fix compile error with renaming server -> serverConn
      move teamupdate-code to TeamHandler
      move direct-control-update code to CPlayer
      comment fix
      remove SpringInstaller, lives in CA repo now
      fix AllTeamRemap from script.txt
      also set MaxSpeed to 20 for local demos
      remove projectile drawing from CMiniMap, and add a CProjectile::DrawOnMinimap function (this speeds it up alot)
      don't add a DeathDependence for each unit fireded (wooo, more speedup)
      forgot to include this file in minimap patch
      remove unused crashrpt
      make 32bit color depth default
      don't throw assertion when a spectator has an incorrect team-tag in script.txt
      throw exception on missing sound on win32 to make equal behaviour across platforms
      remode unused code from CPreGame
      fix installer generation
      fix installer #2
      some updates for the content-packages
      version bump would be nice, too
      some touchups for LineGroundCol
      make sounds.lua to replace hardcoded filenames
      when a soundfile is not found, only fail when its save to do so
      whitespace + add initial doppler-effect support
      remove debug-assertion
      next step to doppler effect
      use doppler effect for unit sounds
      for doppler calculation, take camera speed into account
      calculate real camera speed (take frameTime into account)
      hardware-accelerated 3d-sound for windows
      include OpenAL.dll in installer
      cmake: don't use dsound and ole32 any more
      fix SYNCDEBUG
      fix syncdebugger segfault at start
      disable sounds when no sound device can be auired, and pring error message, but don'T throw exception
      add another openal-lib to installer
      fix compiler warnings with printf and size_t
      when sound errors occur, disable sound instead of crash
      move volume-handling from CGame to CSound
      remove scriptname-duplication in autogen-script.txt
      after 45 seconds have passed, ignore unconnected people and start the game without them (if all other startconditions are true)
      soem improvements for sound-mute
      privatize some CGame-members
      reuse sound-sources and don'T delete/create them every time (and reserve 1 for music)
      allow soundpitch to be adjusted according to game speed (default off, turn on with PitchAdjust=1)
      search for free soundsources before stoping active ones (longer sounds like unit replies will less likely stop in the middle now)
      take unitspeed into accound when generating sounds
      draw neither LuaUI nor fps / clock on /hideinterface
      add optional speed-arguments to LuaUnsynced's PlaySoundFile()
      added non-virtual interface to wrap CWeapon::Fire() (when dgun is way too loed, its because the volume is not decreased for dgun anymore)
      allow "skip"-ping before the game has started
      new class for handling SoundSources
      new directory for SoundHandling
      header fixes
      fixes + new class for soundbuffer
      fix logoutput
      add SoundItem to wrap around raw files
      fix
      documentation
      respect the maxconcurrent-parameter
      maxdist parameter for SoundItems
      add prioritizing to sounds: * when no sources are free, the one with least priority will be stopped * sounds with priority > 0 will never be stopped
      SoundItem-tables are now specified by name
      fix the names
      * add "/debuginfo sound", will print some simple statistics * added defaults sounds.lua, which includes the engine-sounds (beep, button etc.) to springcontent.sdz * some fixes
      Merge branch 'sound'
      forgot to add sounds.lua to git
      don't apply ".wav" and prefix "sounds/" to a soundname when there is a SoundItem for it
      print buffer-usage on "/debuginfo sound"
      remove unused variable from CGameServer
      fix dedicated server not exiting when the last player timeout'ed
      parse sounds.lua at loading-time instead of runtime
      added possibility to preload sounds (with "preload" in sounds.lua)
      add looping-option for SoundItems
      initialise looptime to 0 (doh)
      fix soundpitch
      uninstaller removes openal-libs + jobjol-link
      replace (uncomplete) overloaded CLogOutput::operator<< with a helper class subclassed from std::ostringstream, to use it where printf is not good enought (%zu)
      sterea-sound can not be played in 3d-space
      cmake: check for boost >= 1.35
      sound: cleanup
      sound: enable pitch adjust on default
      I am not supposed to pass a temporary for a non-const reference parameter
      sound: forgot to add new file
      add ogg/vorbis support for regular SoundItems (simply write file = "something.ogg", can be loaded from VFS)
      move VorbisCallbacks to their own file
      sound: fix weapons not playing at all
      sound: fix wrong pitch
      sound: ignore maxdist for relative (non-3d) playbacks
      fix speed arguments for lua- PlaySoundFile
      sound: don't abort a sound in favor of another one with higher priority
      sound: give its own log subsystem
      give some feedback when you whisper someone successfully
      cmake: add "--kill-at" linker flag for unitsync build
      cmake: only for mingw, thought
      cmake: add "--enable-auto-import" for mingw linkage
      make DemoRecorder not depend on GlobalUnsynced (includes lineend-fixes, thats why this is huge)
      dedicated: EXPERIMENTAL support for recording demos
      cmake: enable autoimport for mingw
      Merge commit '75d268812fcdc231974ac36f83af75219199ace8'
      cmake: include CoreFoundation headers
      Revert "cmake: enable autoimport for mingw"
      remove ppc-specific code (was causing probs for intel-macs, but ppcs won't run spring anyway)
      fix compiler error for mingw64
      server: drop empty chatmessages
      AI: fix mingw64 compiler error
      AI: fix more compiler errors
      forgot one
      write the archive name back to the setup script in case some failclient writes a archive name
      SendLuaMsg uses std::vector<uint8_t> for binary data, std::string is for strings
      config variable (bool)AllowAdditionalPlayers to control if players not in the script.txt can join a server
      net: spelling
      sound: allow streaming music from inside anywhere of VFS
      sound: refactor
      sound: some buffer refactoring
      sound: fix gcc warning
      don't allow unsafe functions from within lua
      comment fix + remove duplicated code
      make GameServer work with any number of teams
      remove unused header
      CGameSetup-touchup
      installer: remove check for otacontent (again...)
      cmake: build legacycpp static library to prevent n-times compilation of those files
      cmake: fix for creg
      sound: fix maxdist so it works right
      cmake: fix ajva detection for mingw crosscompile
      nsis: workaround builderv generating 7zs in installer generating dir
      fix tarball generation for caiinterface
      fix compiler warning in Utils.c
      disable verbose debug-sound output
      lua: remove unimplemented function
      better method to extrakt values from a map
      patch by AF: fix compilation in VS not having stdbool.h
      fix mingw compile error
      AllyTeam::Allies now variable-sized
      replace some MAX_TEAMs with teamHandler->ActiveTeams()
      some more
      remove more MAX_TEAMSs and increase (ally)teamlimit to 254
      removed some now unneeded #include "GlobalCOnstants.h"
      add MaxUntis() to UntiHandler and use it to check if unitid is in range
      nsis: exclude 7z from AIs too (not only from itnerfaces)
      replace MAX_UNITS with uh->MaxUnits() where its safe
      make all vectors the size of maxUnits from the script (and not MAX_UNITS)
      bump the unit limit to 32000
      fix segfault when exiting
      update engineoptions.lua for new limit
      make MaxUnits from script.txt a per-team limit
      fix some compiler warnings
      fix CAiTestScript
      touchup
      installer: use springlobby release build
      server: reduced message spam when players connect
      documentation: update springstart.txt
      dediserv: choose startpositions before games works without the map
      fix epic compiler warning spam caused by CAIInterfaceCallbackImpl
      sound: fix LogSubsystem "Sound" beeing duplicated 4 times
      sound: move music to seperate file and make multithreaded
      sound: fix small memleak when music is stopped /restarted
      sound: should fix compile error in buildbot
      sound: COggStream does not count playing time itself, use vorbisfile-function instead
      sound: music::Play made asynchronous some docu
      remove lost of commented code, brought to us by hoijui ;)
      installer: fix lobby description, make SL first lobby
      sound: more usefull output
      sound: replace clumsy, non-compiling sleep code
      replaced some SDL-functions with boost-ones in server-related classes
      dediserv: can now be build without SDL +fix speed beeing 10 times slower than normal
      cmake: unitsync doesn't need SDL either
      cmake: major rework, now mingw also uses FindPackage (needs new mingwlibs unfortunately)
      cmake: fix not installing mingw-dlls
      scons: fix configure fail because of slightly different dll-names in mingwlibs
      scons: fix library search path for mingwlibs/dll
      scons: why do I have to tell scons everything twice?
      don'T patch includes using the preprocessor in important headers
      cmake: abort if ${MIGNWLIBS} does not exists or is no directory
      fix compile error
      cmake: only set SPRING_DATADIR when it does make sense (on win32, it doesn't)
      cmake: only compile libs with -fPIC when necessary
      remove GroupAIs
      remove unneded variable from playerhandler
      cmake: use libraries from mingwlibs-dir instead the system's to workaround buildserv bug
      remove deprecated kai
      remove CSAI + JCAI
      cmake: set cmake to only look for libraries in ROOT_PATH (attempt to fix buildserv)
      cmake: fix to find jvm.dll in mingwlibs
      installer fix
      installer: include ogg/vorbis-dlls
      Merge branch 'master' of git@github.com:spring/spring
      replace configHandler. with configHandler-> project wide and remove wrapper-macro
      server: do not give unknown players the number 0
      dediserv: fix hashes beeing read as signed integers
      disable /ally-command for spectators
      server: fix player info (cpu, ping) not beeing sent because uninitialized time value
      network: save a few bytes
      dediserv: send lua-messages to autohost-interface
      added /wbynum command (whisper by number)
      server saves player statistics for inclusion in demo
      some include fixes
      remove another bunch of myGL includes (so dedicated server can hopefully be built without glew)
      undepend some stuff on SDL_types and use C-types instead
      remove last occurences of SDL_types
      includes cleaned up
      server: set client-states to CONNECTED after they connected
      cmake: fix base-content beeing isntalled into ${DATADIR}/base/base
      dediserv: fix help and usage texts
      cmake: simplify FindFreetype
      fix compile error (size_t != unsigned)
      fix TdfParser for boolean values (0 is false, everything else is true)
      cmake: minor touchup for dediserv
      dediserv: fix segfault + exit because there are no clients happened to early
      dediserv: do not skip the first player when checking if the game should start dediserv: timeout for unconnected players lowered to 30 s
      dediserv: fix minor memleak
      dediserv: another some-kilobytes memleak
      do not crash if numTeams / numPlayers is set wrong
      when playing demo, give us a valid player number (MAX_PLAYERS is not, MAX_PLAYERS-1 is)
      fix some warnings
      let openal do some scaling for us
      cmake: add FindZLIB.cmake file to find zlib1.dll from mingwlibs
      network: save some bytes for NETMSG_PLAYERINFO
      net: zlib compression for setupscript (can save up to 4 kb per player [4/5 of the actual script size])
      server: when a player connects, send the info he needs only to him and not to everyone already connected
      net: ping can be higher than 8 seconds on lag spikes
      lua: fix negative pings
      net: remove unused message type
      more myGL includes removed
      fix: spectators can delete player drawings
      sound: added dopplerscale -var to sounds.lua definition (1.0 is default, 0 is no doppler, >1.0 exagerates the effect)
      take highest demo player number+1 as own number when watching
      fix bug introduced by my last commit
      remove maxPayerNum from the demoheader (its now useless)
      default to lossless png for screenies
      add isfromdemo=1 tag to setup read from the demo
      fix duplicated player in demo warning message
      fix: clear compression-buffer for script.txt (needed for demo playing, where the script is altered)
      make fromSynced-parameter unoptional (not passing right leads to range hax)
      fix a possible segfault in CGameServer
      sound: allow maps to specify their own SoundItems in addition to the mod
      sound: added channel concept
      sound: clean
      sound: fixes
      sound: allow volume set for each channel seperately ("/soundchannelvolume <Channel> [0.0, +inf[") sound: available channels until now: Battle, UnitReply, General, UserInterface
      sound: fixes
      sound: cleanup
      luaui: disable user widgets by default (thanks to BrainDamage for making this patch)
      dediserv: /pause command for autohosts
      nsis: include springlobby in package now it is the default lobby
      installer: fix TASClient downlaod link
      sound: allow to enable / disable a channel (/soundchannelenable <name> [0|1])
      installer: more TASClient fixes + make it download on demand
      installer: new site links updated
      sim: fix sync errors (cob is synced)
      always show the quit-menu when pressing esc (instaquit is awailable at ctrl+shift+esc)
      abstracted the key /value system of GAME/PLAYERX from script.txt
      allow custom key-value-pairs for script.txt in TEAMx as in PLAYERx remove SFloat3 and use float3 without creg instead
      expose the custom options from PLAYER / TEAM to lua Get[Player|Team]Info
      implement scope for modoptions and expose to unitsync
      added StartMetal / Energy as a per-player option for script.txt
      add Team Starting Metal / Energy EngineOption
      added ALlyTeam class allow for custom ally team params
      add GetAllyTeamInfo callback to LuaSyncedRead(which only returns custom params atm)
      remove duplicated team2allyteam mapping from TeamHandler
      no crash on empty playername
      server: minor refactoring
      touchup for teamHandler
      add starting ressources correct in CGameSetup
      fix compiler warnings
      added simple ConfigHandler callbacks, so you can get informed about config value changes ingame (issued with "/set X Y")
      fix "/volume X" command (deprecated)
      remove orphaned function declaration
      Merge branch 'master' of git@github.com:spring/spring
      sound: fix height scaling issues
      Merge branch 'master' of git@github.com:spring/spring
      sound: when wav file has invalid datalength header, fill in the filesize (cut down to whole samples)
      fix gcc 4.4.0 compile errors (missing cstdio includes)
      let there be colors
      remove config option to run spring with 16bit colors
      some cleanup
      always enable luarules
      fix usage of uninitialised memory + very small memleak
      don't use SPRING_DATADIR on windows, and remove SPRING_DATADIR_2
      fix uninitialised val in CGameServer
      use boost::commandline_option also on linux
      fix + remvoe some unneeded stuff
      remove more unused stuff
      print nice  message when commandline is wrong instead of throwing an uncaught exception
      sound: do not play any when minimized
      sound: use the old SoundVolume-config var when set
      fix for configHandler->Delete
      sound: some attenuation-adjustments
      sound: play non-3d sounds always in front (and not above) the listener MultiSelect and IncomingChat set to in3d by default
      fix
      sound: allow the rolloff-factor to be defined in sounds.lua (0 - equal loudness ignoring distance, 1 - default)
      sound: default MapDraw-sound now plays at its postion, but without distance attenuation
      use path of the executable instead of working dir to search for content
      sound: fix wrong volume on startup
      fix TdfParser::GetDef for strings with whitespaces
      fix source tarball generation
      sound: make mapPoints-sound not to be affected by doppler effect
      some documentation on sounds.lua
      fix crash in configHandler deleting nonexistant key
      also do not crash if the config file cannot be opened
      sound: disable camera speed calcs' cause it goes crazy when teleporting / fast movement on minimap
      sound: fix starting volume (again)
      cmake: improve FindDevil.cmake
      sound: fix rolloff factor beeing 10 times to low
      fix crash when CglFont::LoadFont catches an exception
      Revert "fix crash when CglFont::LoadFont catches an exception"
      fix startboxes
      sound: handle it when no more sources can be created
      sound: fix the fix
      added lobby-server to installer
      installer: fixes + include springsettings
      isntaller: only download springsettings when newer
      small changelog update
      sound: print a message on the infolog when exceeding the maximum amount of sources
      sound: allow to limit the number os sound  emmits per frame (defaults t o1 for unti replies, 32 for  all the others)
      do not generate spring.def (and don't include in installer) on mingw (not needed)
      added script to build a portable spring archive (to run it, you need to run the make_installer.pl script first to make it fetch all the files)
      run springlobby_download.sh automatically from make_portable.sh
      move some script from tools/<dir>/<file> to tools/scripts/<file>
      make_portable.sh: add springlobby.conf for portable mode
      fix compile errors
      version bump pre-release

Kloot (106):
      * do not record a demo when playing one * fix the names of non-gamesetup demos
      allow loading of named DDS textures via gl.Texture
      * correct the handling of tri-stripped S3O's when setting the vertex tangents * extend GetUnitTransformMatrix to return the inverse model matrix if bool(L, 2)
      fix SEGV caused by referencing gameServer instance prior to its creation
      * really fix the tangent-vec calculations (lighting appeared inverted)
      compilation error fix for Boost < 1.35
      fix a rare SEGV in KAIK (possibly Mantis 1331)
      compilation error fixes
      Merge branch 'master' of git://github.com/spring/spring
      scons: zlib and freetype libs are still called libz and libfreetype in some places
      fix KAIK doing nothing if loaded via CSkirmishAITestScript
      Merge branch 'master' of git://github.com/spring/spring
      .
      resolve merge conflict
      KAIK: fix builders being left idle indefinitely
      KAIK: fix builders being left idle indefinitely
      Merge branch 'master' of git://github.com/spring/spring
      Merge branch 'master' of git://github.com/spring/spring
      KAIK: reduce T1 factory spam in EE (this promotes faster teching)
      KAIK: clean up the Include header file
      KAIK: disable an assert(0) in a non-fatal place
      AI: fix the argument order in all GetProperty() wrappers
      KAIK: cap the number of assistable factories more radically
      s/category/producedCat
      KAIK: const-ify some things
      KAIK: prefer teching to building more T1 plants
      KAIK: convert another assert() into something less lethal
      * formatting
      * typo :)
      KAIK: improve upgrading of structures
      Merge branch 'master' of git://github.com/spring/spring
      KAIK: kill some excess log messages
      KAIK: major refactor, header cleanup, etc
      KAIK: more refactoring
      KAIK: allow for multiple dgun-capable units
      KAIK: delete outdated files from repo
      KAIK: templatize the logger
      KAIK: attempt to fix many factories suddenly being built in parallel
      * forgot this
      AI: make CAIAICallback aware of the new unit limit
      KAIK: restructure CUnitTable to not use huge 3D vectors
      KAIK: restore EE compatibility (again)
      KAIK: add missing header
      KAIK: attempt to isolate/fix sporadic pathfinder memory corruption
      KAIK: tweak GetCost() for CAT_ENERGY units  so influence of wind is properly scaled
      KAIK: use __DATE__ instead of hardcoded date string
      Merge branch 'master' of git://github.com/spring/spring
      KAIK: properly use units given by a team playing another side
      LuaUnitRendering: allow registering the inverse camera matrix via SetMaterial (in lieu of custom uniforms)
      KAIK: try to reclaim more stuff during resource stalls
      UnitDrawer: remove an essentially useless function
      Simulation: restore the collisionSphereOffset tag, but rename it to modelCenterOffset Rendering: draw a marker sphere in debug mode to indicate where units are targetted
      extend the collision-volume system to (optionally) cover model pieces; the per-piece volumes are to be customized from the synced Lua environment
      * touchups
      * touchups #2
      fix: local pieces need to have clones of the coldet volumes used by the original pieces
      give LuaSynced control over the piece coldet volumes
      fix: enable the local root piece if usePieceCollisionVolumes
      *allow disabling coldet for the root piece separately
      * fix
      fix SEGV when hovering mouse over unit icon
      coldet: small refactor
      coldet: store the piece that was last hit and make it queryable via LuaSR
      .
      Merge branch 'master' of git://github.com/spring/spring
      remove accidentally added file
      * comment tweak for lastAttackedPiece
      * reset lastAttackedPiece to NULL after calling GetUnitLastAttackedPiece
      * revert d7d10af115a7c939767f469c8a3f03aa3a14487a (thanks jk)
      unitdrawer: highlight the last hit piece in debug mode
      fix: color state change was being blocked
      * no need to disable these
      LuaSyncedRead: add GetUnit{Piece}CollisionVolumeData callouts
      fix: make beamlasers specially set lastAttackedPiece
      * same fix for lightning cannons
      CUnit: remove an unused (never assigned-to) variable
      AI: make TraceRay() available as a callback command
      * fix
      * block AI raytraces from providing info on enemies outside LOS
      AI: also add a cheat callback for TraceRay
      remove some idle #defines
      fix: AIs were not getting information back about trace results
      * typo
      AI: implement GetPathLength
      add a config variable MaxNanoParticles to separately control the nano-particle count
      * oops
      * provide a default CollisionVolume ctor for creg
      * remove the redundant UnitDef::moveType member (AIs should use UnitDef::movedata::pathType)
      add maxnanoparticles to the word completion list
      KAIK: remove dependence on moveinfo.tdf
      * s/moveType/pathType
      KAIK: eliminate remaining .tdf dependencies and get rid of CSunParser
      * move MoveMath initialization out of CPathManager
      AI: fix up GetPathLength()
      KAIK: cleanup initialization a bit
      fix another compilation error and restore some overwritten changes (be careful with HUEG-LIEK-XBOX merges :))
      * fix SEGV on startup due to zerver\'s Mantis #228 fix
      AI: pass the proper command identifiers from the legacy callback wrapper
      Merge branch 'master' of git://github.com/spring/spring
      Mantis 1380: {Get, Set}UnitShieldState() can now take a weapon index
      * fix Mantis 1375
      * restore visibility of trees, etc.
      * implement saving and restoring of the window position on posix
      Merge branch 'master' of git://github.com/spring/spring
      RestoreWindowPos() already checks for fullscreen
      extend the MoveInfo checksum to cover all parsed variables

Marek Baczynski (79):
      sim: /ally now removes all newly-friendly-fire attack orders from queues
      sim: need to check for CMD_FIGHT too when alliance changes
      sim: weapons need their target reset if they're targeting an ally
      Weapon.cpp newline grief
      sim: stop only friendly attacks on player that was /ally-ied
      remove unused variable
      build: scons: enable warnings if debugdefines=yes regardless of debug=
      sim: really stop shooting at newly allied units, also print alliance msgs
      rename ChangeAllyTeam to StopAttackingAllyTeam
      sim: fix aircraft circling around patrol/fight points indefinitely
      print spring version after initialization of logging
      Merge branch '0.78.2-branch'
      fix missing include for logOutput version printing
      sim: units shouldn't drive around waypoints in circles anymore
      more information about invalid unit orders
      sim: unitdef: add turnInPlaceDistance and turnInPlaceSpeedLimit tags
      try to fix scons buildserv compilation
      build: scons: try to be smarter when crosscompiling
      build: scons: fix building of unitsync
      build: scons: check for Python 2.6
      build: scons: teach it to build with openal on windows
      add the nedmalloc allocator.
      fix debugging
      bugfix in nedmalloc - free(NULL) is not a bug
      build: cmake: enable nedmalloc
      build: scons: enable nedmalloc by default
      sim: unitdef: add 'repairable' tag
      build: scons: be smart about broken nedmalloc crosscompiles
      fix startscript selection from the menu
      sim: lua unitdef: expose 'cantBeTransported' to lua
      windows CRT doesn't know about %zu
      widgethandler: order data is saved in SaveConfigData now
      sim: stop aircraft from jitter after flying over a goal
      update nedmalloc version
      build: don't use nedmalloc by default
      sim: don't update transported units after transport dies
      sim: transports that can unload on death spread units properly now
      sim: stop colliding units from reaching ridiculous speeds
      fix compiler warning
      sim: do not teleport units when they were moved onto a spot they can't get out of
      sim: do not emit seismic ping when a unit is transported
      Merge branch 'master' of git@github.com:spring/spring.git
      installer: fix generation of base files (modinfo.tdf -> modinfo.lua)
      installer: fix base content generation on windows, too
      build: change backslashes to slashes for gawk on windows
      ai: fix crashing typo in GetFeatures()
      build: scons: use absolute paths for mingwlibsdir
      ai: legacycpp: STRCPY is defined to strcpy_s in VC++
      not defining extern "C" in exports doesn't make sense
      ai: try to be smarter with awk detection on windows
      build: make cmake configuration work on windows/mingw
      fix compilation of FileSystem.cpp on windows
      save window position on exit, currently win32 only
      oops, tell other windows to repaint themselves
      fix mantis #1355 - seaplanes getting stuck in certain condtions (edge of map)
      add /destroy command - kills every selected unit, requires /cheat
      units in uh->renderUnits can be NULL sometimes
      make feature reclaim/feature repair speed follow the same rules as units.
      add SetBuildFacing(int) and SetBuildSpacing(int) to LuaUI
      filesystem: fix wrong negation when checking for _S_IFREG
      build: try even harder to find awk on windows
      sim: paralyzed units don't reload weapons
      don't draw shields if their owner is paralyzed
      lua: add UnitPreDamaged callin.
      Merge branch 'master' of git://github.com/det/spring
      print a message when ATI hacks are enabled
      GL_LINES seems to be broken on ATI when line width is greater than 2
      better workaround for ATI GL_LINES stupidity - draw twice (width 3 then 1)
      Merge branch 'master' of git://github.com/det/spring
      tdm's gcc 4.4.0 compatibility fixes
      installer: update for new font
      use boost::program_options for command line parsing on win32
      build: scons: also use usr/* dirs when searching for includes/libs
      build: cmake: always use -mthreads on mingw builds
      sound: print a warning when curPlaying is NULL in SoundSource::GetCurrentPriority()
      Merge branch 'master' of git@github.com:spring/spring.git
      fix crash when sound not initialized yet
      Revert "build: scons: also use usr/* dirs when searching for includes/libs"
      sim: fixed paralyzer damage sometimes not registering (#1376)

Rainer Müller (6):
      Use -fPIC instead of -fpic on Mac OS X
      Mac OS X needs sys/stat.h for struct stat
      Undefine C99 macros before re-defining them
      SoundBuffer: Add a cast for comaptibility
      Disable Mac OS X specific parts
      Disable Mac OS X specific code

SpliFF (4):
      GameSetup looks for startscript name in ModOptions
      Documented startscript options for mods that need that
      unitsync updated to make EngineOptions.lua and ModOptions.lua both optional.
      removed test AIs from EngineOptions.lua comments.

Tarendai (19):
      updated project file from vs2005 to 2008, added missing files and defines too
      added ignore statements for NTai visual studio build files and folders
      - Added some files to the vcproj - fixed calling conventions under Visual Stduio - fixed fastmath.h warnings under visual studio - updated NTai aiinfo and options lua files - fixed problem with tdfparser in NTai
      fixed Visual studio exports properly
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      shifted handling of unit objects form boost::shared_ptr<IModule> to CUnit* and unit ids, and all the refactors and simplifications necessary to make this work. Units are now stored in an array of pointers indexed by unit id, which should be orders of magnitude faster than an std::map<> of boost smart pointers.
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      - fixed some crashbugs regarding unit destruction - some minor movement of code - extra header include paths - fixed warnings under gcc with tcommand.h
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      proper merging
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      removed interface.cpp from visual studio project
      initial efficiency refactor change
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      - removed util.c from vs project for now, 1 unresolved external dependency is nicer than 100 syntax errors - added _SCL_SECURE_NO_WARNINGS to fix warning spam in damagearray.h - completed initial efficiency refactoring, testing next - commented out targetting weight function, and rerouted calls t getefficiency
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      Merge branch 'master' of git://github.com/spring/spring into origin/ntai
      - changed a handful of STL variables to use std:: in code - moved some variables into the efficiency class - removed some comments - copied the needed function from util.c to sidestep the util.c/h incompatibility with Visual Studio 2008 - Incremented efficiency file version from 9.87 to XE10

Tobi Vollebregt (9):
      typos
      Pass the right team (newteam) to CGlobalAIHandler::UnitTaken
      Select SpringLobby by default in installer
      On invalid patrol order, print a message instead of core dumping / desyncing.
      Give LuaGaia full read access.
      lua: Don't allow selecting or giving orders to noSelect units in usermode.
      Don't select noSelect units if they are in a group and the group is selected.
      gui: Fixed off-by-one error in line order
      don't crash on /luarules message if luarules is disabled

hoijui (363):
      Initial change: * some changes to the engine: loading AIs, float3, DamageArray & CommandQueue * C AI interface, consisting mainly of: IGlobalAI wrapper and Callback wrapper (IGlobalAICallback, IAICallback & IAICheats) * C++ AI interface wrapper: uses the new C interface in the background, but "looking" like the old/current C++ interface. * RAI changed to use th enew interface (minimal changes) * Adding a NullAI, which is comparable to TestGlobalAI, but using the new C interface
      finally it is working in linux (compiled with gcc and cmake) and on windows (compiled with mingw and scons). what works: + AI Interface libraries + Skirmish AI libraries + AIInfo.lua and AIInterfaceInfo.lua can be read from unitsync(untested) and are read by the engine, to know what engines are around (eg to check if script.txt specifies good values, and for the startscripts) + AIOptions.lua can be read through unitsync(untested) what does not work: - group AIs (most of the interface code is still missing, the game crashes if you try to select one in game) - actually passing option values to the AIs (though that will be very simple to add)
      finally it is working in linux (compiled with gcc and cmake) and on windows (compiled with mingw and scons). what works: + AI Interface libraries + Skirmish AI libraries + AIInfo.lua and AIInterfaceInfo.lua can be read from unitsync(untested) and are read by the engine, to know what engines are around (eg to check if script.txt specifies good values, and for the startscripts) + AIOptions.lua can be read through unitsync(untested) what does not work: - group AIs (most of the interface code is still missing, the game crashes if you try to select one in game) - actually passing option values to the AIs (though that will be very simple to add)
      git-svn-id: https://spring.clan-sy.com/svn/spring/branches/caiinterface@6495 37977431-3df6-0310-b722-df95706aa16b
      making unitsync use exportdefines.h (eg replacing DLL_EXPORT with Export)
      forgot to upload these 3 files. they should be removed, but they are still used in other places, so here they are. will remove them later.
      forgot to remove a comment :/
      added #include <string>
      was using <limits>, which is boost, but i wanted <limits.h>, which is C standard
      removed include
      including string.h
      including stdlib.h
      added stdlib.h include
      small intel compiler and gcc 4.3.2 compatibility fixes
      intel compiler fix (does not support va_start if the last argument before '...' is a reference)
      - merged trunk back in - renamed TestGlobalAI to NullLegacyCppAI (not yet working properly) - fixed a few bugs
      forgot removing absolutation in a path
      renaming: specifyer -> specifier
      - made NullLegacyCppAI working - beautify ExternalAI/Interface stuff (see below) - added comments for all functions in the three AI library structs - as we have init() and INIT)EVENT, we also need a RELEASE_EVENT (in addition to release(team)) - done - made init() and release() optional (as they make no sense for non-OO languages) - removed some unnecessary files
      - cleaned up rts/Sim/Misc/DamageArray.* and some things under ExternalAI/Interface - cleaned up scons (filelist.py and SConstruct) - build systems append versions (found in source in VERSION files) to AI library names (experimental) - got rid of creg in AI Interface and AIs (also remove it from AI deps in scons and cmake) - introducing System/creg/creg_cond.h for conditional creg compiling (see below) - AIs that want to use creg have to specify -DUSING_CREG when compiling (other parts of spring do not have to specify that)
      reintegrated trunk (last integration till HEAD)
      - added static initialization and release methods to AI Interfaces - renamed infos to info - made AI Interfaces loading only depend on information in their InterfaceInfo.lua files - some other minor changes - KAIK currently crashing
      reintegrating trunk
      forgot these two files :/
      - AI Interfaces and AIs will now be loaded from all data-directories, not just the primary one. - some code beautifications
      - renamed dir KAIK-0.13 to KAIK - renamed dir KAI-0.2 to KAI - renamed dir RAI-0.553 to RAI - upgrading RAI with Reths source ot v0.601 - cleanup of CMake AI Interface and AI build scrips
      minimal cosmetics
      * reintegrated trunk * new: issueing warnings for multipli defined AIs and AI interfaces (multiple *Info.lua files for one of them) * added --list-group-ais and --list-ai-interfaces command line options, in addition to --listskirmish-ais * the above mentioned 3 command line options now issue warnings for multipli defined entries as well
      * removed shortopt's for the three AI related command line parameters * added version info to AI test scripts
      trunk reintegrated (up to 6715)
      removed bad include (IDE auto injected it)
      * reintegrated trunk up to 6724 * now issuing warnings when static initialization or release of an AI Interface library fails
      * minor comment change * minor adjustments to C standard
      one files change missing yes! * reinterated trunk * made the engine side C interface compileable with a C compiler * added some things to easy up life for non native AI Interface libraries * NullAI is notw a real C AI
      belongs ot last commit (some SVN problem disallowed committing it)
      reintegrated trunk up to 6800
      * fixed a CMake config file * added info about skirmish AIs used in the current game to SStaticGlobalData * added info about all available groupAIs to SStaticGlobalData * made AIOptions.lua files optional for CMake as well * NullAI has no AIOptions.lua file anymore (for testing and for it to be really minimal)
      * removed historical parts that somehow sleeked in during the first merge with trunk (thanks Auswaschbar) * more and clearer comments in the C interface headers * C compatibelized some of the C interface files
      reintegrated trunk up to 6844
      * small cleanup * removed all multi-dimensional arrays from the AI callback (except char*[])
      reintegrated trunk to 6941
      * reintegrated trunk up to 6967 * added support for supplying options to skirmish AIs (see Documentation/Spring start.txt for details)
      * created AI/Bindings * moving rts/ExternalAI/Interface/LegacyCppWrapper -> AI/Bindings/LegacyCpp
      * using enum instead of #defines for AI Events and Commands * small cleanups
      * no more "impls" dirs: AI binaries are now searched in the same directory where their AIInfo.lua lies. * some small cleanups and fixes
      reintegrated trunk up to 6979
      DOES NOT COMPILE, temporary commit (kind of a local backup)
      * All engine -> AI communication now goeas through EngineOutHandler (obsoletes GlobalAIHandler) * C interface cleaned up a little, to faciliate parsing it when generating wrappers
      reintegrated trunk up to 7027
      * renamed AI/Bindings to AI/Wrappers
      * reintegrated trunk up to 7035
      * changed Export() to EXPORT() * small Java AI Interface CMake build instruction adjustments
      reintegrated trunk up to 7042
      fix build system if Java AI interface not present
      memory corruption fix for InfoItem[] passed to Sirmish AIs in init()
      fix for the last commit
      an other try to fix
      DOES NOT COMPILE (needs reintegrating trunk for that) * Interface Changes (Callback and commands) to facciliate automatic parcing of the interface * resources abstracted -> instead of getMetal() and getEnergy() we now have getResource(resourceIndex)
      reintegrated trunk up to 7096
      (forgot to upload last time)
      mientras fix
      * started removing GroupAIs (should already be compleetly out of the C interface) * unified some C AI interface methods, eg: using a C String map for info aswell as for options values now
      * replaced the C SSAISpecifier with the C++ SkirmishAIKey (as it is now not used in the interface anymore) * for convienience when building AI interfaces: added SSkirmishAISpecifier, which can be used instead of SSAISpecifier in interfaces (for uniquely identifying skirmish AIs), this struct is not used engine internally * fixed SkirmishAITestScript * refined CMake Java AI interface and Skirmish AI building a bit * some callback bug-fixes
      * fix compiling with Scons * allow recursive file searching with InterfaceUtil * hack SkirmishAIKey to compile under MinGW * some other small fixes
      * more scons fixes * LogOutput is now (nearly) identical to the trunk version again
      fix
      * Initial upload of the Java Interface * Initial upload of NullJavaAI and NullOOJavaAI * CMake and Scons can now also both build the Java AI Interface and Java AIs * moved data files of Interfaces and Skimrish AIs to data subfolders (examples: AIInfo.lua, AIOptions.lua, InterfaceInfo.lua, (AAI) config files)
      * AAI and NTai run over the C AI interface aswell now
      reintegrated trunk up to 7130
      possibly fixing building cmake windows build
      no more deprecated warnings for scons env.Copy() -> replaced with env.Clone()
      forgot to upload
      * Info and Options are now C++ again (in preparation for reintegration into trunk) * removed some outcommented code
      * fixed a bug in DamageArray (may only have appeared when used in the Legacy C++ AI Wrapper) * added Option.cpp to unitsync dependencies (Scons and CMake) * removed some more Group AI stuff
      * fix for finding Java in CMake on windows * trying a hack to find Java/Jar on the buildbot in scons
      fix compile bug when Java Skirmish AIs do not hav a jlib dir
      * fixed some SCons stuff when compiling on windows * fixed general SCons stuff * added RAI to the installer script * added AI Interfaces to the isntaller script (always installed, not visible to the user) * fixed Java insterface bug (bad return type) * fixed compile bugs under windows with MinGW 4.3.0
      parsing AI Interfaces and Skirmish AIs version info from files and submitting it to the installer generation script
      * installer script now fetching AI libs from dir build, instead of from dir game * installer script is using version info passed to it by make_installer_installer.sh
      tring to fix last commit
      next try
      an otherone bites the dust
      an other small installer script fix (it is working!! :D )
      fix for when trying to install a directory that already exists
      reintegrated trunk up to 7161
      * removed references of boost-filesystem * made some build system stuff closer to trunk
      * reintegrated trunk up to 7166 * small changes to SConstruct (will most likely not fix anything)
      made some things more trunk like (also removed some old files which are not used anymore)
      * not using SSE2 for compiling streflop anymore, only SSE1 now * refactored SharedLib a bit * beautification
      make streflop use sse with CMake
      moving jlib folders under data (faciliates install portion of build systems and installer generation; makes Java AIs less different form native ones)
      exlude debug symbol files of Skirmish AIs and AI Interfaces from the installer
      * NTai is compiled agian with SCons under Linux (still not when compiling under windows, but always with CMake) * AI Interfaces and SKirmish AIs written in C now receive the same defines as the ones written in C++ (-> fixes no debug symbols with C AI Interface bug) * all AI Interfaces and Skirmish AIs on SVN now have easy access to the info and option values they receive from the engine through simple C functions in (Interface|AI)Export.h, so they can for example fetch their data-dir location * AAI, RAI and KAIK now use their new location for log-, cache- and config-files (NTai not, because the code looked too difficult to me: will have to do it together with AF once)
      reintegrated trunk up to 7188
      * made SMath.h compile with intel compiler * added Util to the C interface (forgot to upload with the last commit)
      * reintegrated trunk up to 7197 * fixed NTai (compile and runtime bugs)
      made NTai use the new location for log-, config- and cache-files
      * cleaned up Legacy C++ Wrapper * cleaned up CMake messages for AI Interfaces and Skirmish AIs (are now hideable) * renamed SCons AI Interfaces and Skirmish AI messages when configuring to fit the standard (Found ...) * Added NTai and JCAI VERSION files
      * removed the need for the fileName property in the Infos for native Skirmish AIs and all AI Interfaces * native libraries (native Skirmish AIs and all AI Interfaces) do not contain the version in thier filename anymore. it would be better to let them al have the same name, but this is not possible becuase of how CMake works (in SCons it would be possible, but ut has to be equal there)
      * added platform specific build scripts for NullOOJavaAI * added Ant build script for NullOOJavaAI * added Ant build script for Java AI Interface (handles Java part only) * some small improvements here and there
      experimental: extracted AI part out of SConstruct into Sconscript
      removed unused code
      mostly thanks to tips from LoidThanead: * changed lots of isCan* C callbacks to isAbleTo* * added new C callback to get all units of the team called getTeamUnits (this list should be equal to one that AI keeps track of through UnitCreated and UnitDestroyed events) * commented all AI Events plus a few callbacks * in the Java Interface, in addition to the changes above which are reflected here: ** methods previously named EnemyUnit() and the like, are now named correctly: getEnemyUnits() ** using the return type List rather than ArrayList (internally, ArrayList is used) ** getBuildOptions now returns List[UnitDef] instead of int[] unitDefIds
      * added Option enum in AICommand in hte Java interface * added OO constructors to AICommands in hte Java interface
      made the classpath of the Java interface hirarchical -> two Skirmish AI implementations can have the same class without hassling with each other
      doc-comments in the C interface get automatically copied to the Java Interface. they are taken from the following files (under: rts/ExternalAI/Interface): - SAICallback.h (little documentation so far) - AISEvents.h (fully documented) - AISCommands.h (little documentation so far) other interfaces may do the same.
      collected all possibly interesting information in Sconstruct
      script.txt format changed: * [AI] is not nested inside [TEAM] anymore, but a separate section in [GAME], in correlation with [PLAYER] * LUA AIs not use the same format as normal Skirmish AIs, they have IsLuaAI set to 1 * other small changes needed in turn of the above two, for details see Documentation/Sprint start.txt
      fixing a bug where directories for automatically generated Java AI Interface source files were missing
      fixing an infinite loop whne using CMake under windows when trying to find Java
      Merge branch 'master' into caiinterface
      made Linux scripts of Java AI Interface callable form everywhere (were relying to be called from .)
      fix ResourceHandler, was still using Syncify
      adjust .gitignore for the Java AI Interface (ignoring .class, and generated source and .jar files and directories)
      cleanup of C part of the interface: * removed old, commented out code (mainly Group AI things) * added better documentation to some structs * deleted some obsolete files
      removed way too old docu file (from spring version 0.4)
      minor code documentation changes and additions
      * Added all comments from Feature, FeatureDef, Unit, UnitDef and WeaponDef to the C AI Calback * Removed some properties that are not of any use to AIs from the C callback, and added some that could be usefull. * Added support for function pointer definitions over multiple lines to Java AI Interface AWK script.
      added and enhanced documentation
      minimal changes to Java AI Interface build scripts
      moved some common code into separate AWK files (-> portable code reuse with multiple -f options on awk)
      minor Java AI Interface build script improvements
      .gitignore upgrade
      created a CUtils Wrapper, meant to be used by AI Interfaces, but can also be used by native AIs (not tested). It contains code that may be usefull to different AI Interface implementations (-> code sharing). buildsystems adjusted accordinglyaccidentially found and fixed a bug in the SCons AI Interface configuration.
      adjusted .gitignore entried because of better knowledge about how it works
      Merge commit 'origin/master' into caiinterface
      * fixing a Java AI Interface bug which caused the Java part to callback to the wrong C functions * minor code cleanup
      Merge commit 'origin/master' into caiinterface
      forgot to put a function into unitsync_api.h
      script.txt changes: * renamed the tag Name to ShortName * added a new tag Name, which may contain a name given to the AI in the lobby
      ai: Java AI Interface rework * JVM options configurable through properties file * logging options configurable through properties file * SimpleLog now supports log levels from 1 (error) to 10 (finest) * lots of additions to AI/Wrappers/CUtils/Util.h * lots of unused code removed
      Merge commit 'origin/master' into caiinterface
      ai: hide Skirmish AI <=> LUA AI distinction from lobbies and script.txt
      ai: java-interface: minor jvm.properties adjustment
      ai: small code-docu addition
      fix unitsync and script.txt parsing in the engine
      build-sys: scons: possible fix for not finding AI sources
      docu: small refactor * remove spaces and &'s from file names * replace links to UnknownFiles with JobJol links
      Merge commit 'origin/master' into caiinterface
      ai: add support for UnitDef.turnInPlace*
      ai: made AI building depend on whether their interface was built
      Merge commit 'origin/master' into sconsStreflop
      build-sys: scons: integrated streflop building
      streflop: remove unused files
      Merge branch 'sconsStreflop'
      ai: remove unused code and files and add a few doc-comments
      build-sys: library names refactor * all AI Interfaces use the same native lib name (eg. libAIInterface.so on linux) * all Skirmish AIs use the same native lib name (eg. SkirmishAI.dll so on windows) * removed unused code * removed last Group AI stuff from SStaticGlobalData * minor docu additions SCons (still?) seems to be in an unusable state
      Merge commit 'origin/master' into caiinterface
      ai: rework data-dir handling; should now use read-only/writable data-dirs correctly
      ai: CUtils docu enhancements
      build-sys: scons: fix for compiling on/for linux
      build-sys: scons: build unitsync in build-dir instead of source tree when compiling for linux (was so for windows already)
      Merge commit 'origin/master' into caiinterface
      Merge commit 'origin/master' into caiinterface
      build-sys: cmake: make build-dir structure more like install-dir one, which makes it easier to test spring in the build-dir
      ai: java reordering * cmake: Java building now happens in the build dir, not in the source tree anymore * moved Java Skirmish AI sources to sub-dir src * .sh and .bat build scripts are now deprecated: will not be updated, and possibly soon be removed * ant build script of the Java AI interface now allows generating hte source with the AWK scripts * .gitignore updated * CMake is not relying on .sh/.bat scripts for building the Java AI Interface anymore * generated source is stored in a different base dir then the hand-written one * when building Java stuff with ant, there are more options available now through an external properties file * AWK scripts use external settable vars for base dirs (eg. where to generate code)
      ai: give a usefull message in the infolog when the interface library did something wrong
      build-sys: scons: rework * reworked AWK scripts and java compile and packaging handling within SCons * deprecated Unix Shell Scripts and Windows Batches for compiling the Java interface. * fixed some errors in the scons build
      include oscpack library: * only the part for sending is included * runs on POSIX and Windows, so we should be safe * comes with a licence that allows everything
      introducing a class that sends OSC packaged Statistical data to a specifiable IP address. this may be used to generate music.
      fix: OSC messages are really only sent if they are enabled (default: disabled)
      osc-stats-sender: added some modularity, removed unused stuff
      networking: enable sockets to send to do broadcasting, defaults to false
      osc: some stats sender additions * properties can be changed at runtime (enabled, destAddress, destPort) * added a generic method to send OSC messages (could be used from LUA eg.)
      build-sys: scons: fix OpenAL library not found
      Merge commit 'origin/master' into statsend
      build-sys: scons: fix OpenAL library not found
      fix: no new line at end of file
      Merge commit 'origin/master' into statsend
      osc: stats sender fix for windows
      osc: stats sender Update() call moved from TeamHandler to Game
      build-sys: scons: fixes * builddir resolving if it starts with # * java compilation and archiving
      installer: fix * rewind past accidential removal of some lines
      build-sys: scons: some cleanup
      build-sys: cmake: fixes * java compilation and archiving when cross-compiling * make PATH_DELIM host, not target OS dependent
      build-sys: cmake: fix Java Skirmish AI archives install location
      gitignore update: do not hide files in the source tree that should only be in the build dir
      Merge commit 'origin/master' into caiinterface
      build: scons: fix for AI Interfaces that use streflop
      build: cmake: fix for compiling with multiple threads
      Merge commit 'origin/master' into caiinterface
      build: scons: install AI Interfaces and Skirmish AIs in the right place
      build: scons: fix AI Interfaces and Skirmish AI building -> no object files in the source tree anymore; additional fixes for Java Skirmish AIs
      ai: interfaces: java: show correct log message for data dirs
      build: scons: disable NTai when compiling for windows (instead of when compiling On windows)
      build: scons: make sure shared objects are used for AIs and interfaces
      installer: fix AI installing
      installer: fix AI Interfaces and Skirmish AI install macro
      ai: fix for Legacy C++ AIs that use boost (eg. NTai) and minor Legacy C++ AI Interface code cleanup
      build: cmake: NTai boost-thread fix
      ai: implement a method that was forgotten
      cleaned up AI BUILDING_* defines * rename define BUILDING_AI to BUILDING_SKIRMISH_AI * introduced new BUILDING_AI, which is set when we are building either a Skirmish AI or an AI Interface summary: * when building Skirmish AIs, these are defined:  BUILDING_AI && BUILDING_SKIRMISH_AI * when building AI Interfaces, these are defined: BUILDING_AI && BUILDING_AI_INTERFACE
      installer: source package generation updated
      Merge commit 'origin/master' into caiinterface
      installer: passing AI Interface and Skirmish AI versions to NSIS from withing perl, as NSIS can only read them since version 2.39 (2.37 is available in most distros)
      installer: forgot a space
      build: cmake: needed boost version is 1.34, not 1.35, thanks to Kloots fix
      build: scons and cmake: everything is built in the build-dir. scons: * spring(.exe) not built under source-root/game/ anymore * unitsync.dll/.so not built under source-root/game/ anymore * Global and Helper AIs not built under source-root/game/AI anymore * compiled python sources not under rts/build/scons/*.pyc anymore * pre-compiled header not in source tree anymore scons and cmake: * base files not built under source-root/game/base/ anymore
      gitignore update and fix for export defines under cygwin plus comment beautification
      fix for Java AI Interface windows build script
      Merge commit 'origin/master' into caiinterface
      installer: fix for AI Interfaces and Skirmish AIs: install recursively
      ai: two small Java AI Interface fixes * jar files not beeing installed with scons * SIGSEGV if AIInterface.jar is not found
      gitignore update and fix for export defines under cygwin plus comment beautification
      added a basic C interface to streflop and extended CUtils AI Wrappers Util.h to include a method for reseting the processing environment to suit the engine
      fix streflop basic C interface
      build: scons: fix Java AI Interface compilation for linux
      Merge commit 'origin/master' into caiinterface
      fix exportdefines for C
      build: scons: make the build dir globally absolute
      build: scons: fix streflop inclusion for windows
      build: cmake: fix AI Interface and native AI symbol tables under windows
      fix windows gamedata archives generation batch script
      build: cmake: fixes and an addon * fix AIs and interfaces not loadable under windows * RAI built in the correct location * use -DSTABS_DEBUG_SYMBOLS on cmake configure, if you want to debug under windows with gdb
      ai: fix for a SIGSEGV under windows for Skirmish AIs and AI Interfaces
      ai: minor code cleanup, setting pointers to NULL after delete/free()
      Merge commit 'origin/master' into caiinterface
      ai: RAI: fixed two buffer overflows plus a dir not found bug (though the later may not work under windows (dont know why))
      ai: legacy C++ wrapper: fix two bugs + code beautification
      ai: cUtils: added path separator define
      ai: null legacy C++ AI: some code cleanup
      ai: Java interface: fix for AI class-path generation under windows + scons compile fix
      extracted defines from Util.h into a separate file plus extended them
      ai: more AIs can use CUtils
      ai: cUtils: extracted defines to a separate file
      ai: AAI: bug fixes + * replaced sprintfs with SNPRINTFs * place learn dir under a writable data dir, and create it if it does not yet exist * copied BA65 to BA681 config
      ai: KAIK: buffer overflow preventions * replaced sprintfs with SNPRINTFs * made some class members private
      ai: C AI Callback now supports getting the filename parameter of some structs (fixes a bug that occured with KAIK)
      ai: RAI: compile fix plus small cleanup
      ai: Java AI Interface fixed for windows
      ai: AAI: now uses units that are given to it (also fixes the bug: giving unit to AAI and then capturing it -> crash)
      ai: Java Interface: have a user friendly toString method in class AIFloat3
      ai: differentiate error returns values in AICallback.GiveOrder(unit)
      FileSystem class fixup * implemented bool InReadDir(path) and bool InWriteDir(path) * Fixed LocateFile(path, WRITE) to look in he writeable data dir, instead of in the current working dir
      ai: AAI: fixups * choose read/write data dirs correctly * remove spaces at the end of lines * get rid of some compiler warnings
      ai: RAI: cleanups * using read/write data dirs correctly * fixed 3 buffer overflows * fixed one logical error * removed some compiler warnings
      FileSystem more fixes and cleanup + small FS related AI callback fix
      ai: Java Skirmish AI: ant build script can create a spring independent copy of the project
      ai: small temporary fix for AI defines: needs real cleanup
      Merge commit 'origin/master' into caiinterface
      ai: KAIK. RAI & AAI: small adjustment in files locating code
      ai: Java Skirmish AI: forgot to remove ant build settings specific for my build env
      Merge commit 'origin/master' into caiinterface
      ai: AAI: fixed and upgraded Ba and XTA configs
      ai: Map_isPossibleToBuildAt() and Map_findClosestBuildSite() now use UnitDef instead of unitDefId
      ai: AAI: small fix on unit-given/unit-received; stolen from RAI and KAIK
      ai: Java AI Interface: implement compareTo(other) and equals(other) in all OO interface classes (eg. UnitDef).
      ai: Java AI Interface: specific classes are now buffered(read: interface instance wide singletons) + hashCode() method added to OO classes
      build: scons & cmake: fix + add configure switch for disabling AI Interface building: * config flag: 	scons configure ai_interfaces=all|native|java|none 	cmake -DAIINTERFACES="ALL|NATIVE|JAVA|NONE" 	default is ALL for both build systems. * in scons, add ${JAVA_HOME}/bin to the path, if JAVA_HOME OS env var is set
      enhanced two GL related error mesages, resolves mantis 0001217
      build: scons: add os independent path to JAVA_HOME/bin
      ai: interface: remove earlier deprecated functions for creating and deleting shared memory areas
      ai: remove all GroupAI code, also known as Helper-AIs
      move Group and GroupHandler from ExternalAI to Sim/Units/Groups
      minor things: warnings eliminated, code reformatted
      removing OpenGL dependency for Legacy C++ Skirmish AIs
      ai: fix for VS
      adjusting Legacy C++ Interface to VS2008s non C99 compatibility
      maindefines additions: STRNCPY and cPS
      removed lots of warnings; mainly initialization order and signed/unsigned comparison (easy/clear ones)
      build: cmake: mingw compile fix (windres not found) + add size_t GameSetup::GetSkirmishAIs()
      fileSystem: removed unimplemented functions from header, added functions
      ai: Interface rework: * replaced SStaicGlobalData data struct with a more flexible SAIInterfaceCallback * added C ABI version defines
      ai: rename SAICallback to SSkirmishAICallback
      removes a few warnings
      fileSystem: fix a bug in the locate functions (was creating double slashes "//")
      big AI rework; mainly: enhanced Skirmish AI Callback: * info, optionVaues, dataDirs and more are available through the Skirmish AI Callback now * ... therefore, some other things could be simplified * some warnings in RAI removed * RAI, AAI and KAIK adjusted to use the new system * C and Java AI Interfaces adjusted, are now a bit simpler, i would say * some functionality from CUtils Util removed, as it is available in the callbacks now * splitted the callbacks to impl source+header and interface header * fixed some bugs found while browsing the code, added new ones in other places ;-)
      ai: rename SSAILibrary to SSkirmishAILibrary (more consistent naming)
      warnings removed
      remove some warnings
      refix VS bug becuase of stdbool.h (sorry ;-) )
      ai: java interface: now supports single line doc comments parsing: ///
      ai: make ModInfo available through Skirmish AI callback (Clb_Mod_*)
      teamHandler: move some implementation from .h to .cpp + logical correction in Skirmish AI test script
      ai: look for AI Interfaces and Skirmish AIs in all data-dirs, instead of the current dir only (DUH!) thanks to Auswaschbar for pointing out it was not so!
      ai: various small cleanups * fully implement the error log function of the Skirmish AI callback * remove references of handleerror in AI code * Java AI Interface: preventing a bug with bad formated jvm.properties * removing NTais old AI Interface exports source file * replace pure virtual destructors in legacy C++ AI Interface with (unpure) virtual ones
      Revert "teamHandler: move some implementation from .h to .cpp + logical correction in Skirmish AI test script"
      logical correction in Skirmish AI test script
      unitsync: reverts to make TASClient not crash (reintroduces deprecated methods as noops)
      ai: AI Interface code generation AWK utils: small bug fix plus converting to unix line ends
      Merge commit 'ntai/ntai'
      Merge branch 'master' of git@github.com:spring/spring
      ai: NTai MinGW adjustments (to MinGW and changed AIExport)
      ai: allow Skirmish AIs to cheat-fetch features
      maintenance package: double plus good! * added STRCPYS and STRCATS defines (secure versions) to: 	- prevent buffer overflows 	- better abstract GCC vs VS differences * added FREE(x) macro, which does: free(x); x = NULL; * AI SimpleLog, if it fails to write to the log file, writes warnings and errors to stderr now * fixed a segmentation fault in AI SimpleLog * converted large macro CHECK_TEAM_ID)teamId) to function checkTeamId(teamId) * removed LOADS of out-commented code, introduced by hoijui
      documentation attack! more docu for Skirmish AI Callback and AI Commands, mostly copied form IAICallback.h; plus small rousource abstraction fix
      buildsys: cmake: fix configure error (CMake 2.6 does not support braces in if statements)
      Cleanup more superfluous myGL.h includes [original commit done by zerver]
      ai: java interface: add dynamic loader helper
      ai: utils: add C shared library loader
      ai: log to infolog if a handleEvent failed
      ai: utils: documentation fix
      ai: Java Interface: bug-fixes and cleanup * locate and load the JVM shared library at runtime, not at Java AI Interface load time * using flag "-g" when compiling java sources with javac if cmake or scons are configured to compile a debug release * scons uses awk.exe from mingwlibs on windows, instead of searching for gawk.exe in %PATH% * added a toString() method on OO callback classes -> useful when debugging
      ai: cutils: change shared library type from a define to a typedef
      ai: NullOOJavaAI: list build options when a unit is created
      ai: add initial support for a version independent data-dir for AI Interfaces and Skirmish AIs, dir-name: common
      ai: Java Interface: convert dos to unix line ends in AWK scripts (no other changes)
      ai: MinGW compatibility fixes
      ai: KAIK: add an missing include
      * integrated Krogothes Metal Spot finder into the engine, and added appropriate skirmish AI callback functions (Map_getResourceMap*) * renamed global variable rh to resourceHandler * fixed a bug in the OO Java Skirmish AI callback that killed the AI if an array or map of length zero was returned * possibly fix a wrong reported failure in the Java AI Interface
      a few warnings removed (comparison between singed and unsigned)
      ai: fix bug where spring would crash if the Skirmish AI version is not specified in script.txt (it is optional), thanks for report by Px3
      ai: Java AI Interface: small JVM option change
      allow AIs to be saved and loaded again (if it works engine wide again that is)
      minor changes (comment and formatting)
      ai: NTai: fix windows/VS fail
      minor cleanup: some typos corrected and warnings removed
      ai: Lua: Lua AIs are now usable again!
      ai: fix a bug with a rare SIGSEGV
      ai: bug fixes: Skirmish and Lua AIs now work when using script.txt as well
      ai: when an AI fails to initialize, destroy it, so no more events are sent to it
      ai: Java AI Interface: fix/workaround for JNA on 0 sized AI event structs
      ai: java: fix for multiple Java AIs in one game
      ai: callback: add the possibility to fetch the version independent data-dir ("common")
      ai: java: make AWK scripts close unused file handles
      ai: add a little documentation plus an argument to Command-Finished event
      ai: java: fix bug where javac failed at compilation because of an empty argument
      get rid a of a few warnings
      ai: cleaner definition of where InterfaceInfo.lua and AIInfo.lua are searched before it was (shown for Interfaces, same applies for Skirmish AIs): {data-dir}/AI/Interfaces/*/InterfaceInfo.lua and {data-dir}/AI/Interfaces/*/*/InterfaceInfo.lua now it is only the second: {data-dir}/AI/Interfaces/*/*/InterfaceInfo.lua to prevent confusion, and enforce sticking to a convention widely used in the code anyway
      buildsys: scons: fix: find Z-Lib as zlib and zlib1
      ai: java: now really fix the bug (for cmake too) where javac failed at compilation because of an empty argument, instead of only adjusting the comment (+ removing unused code)
      some warnings removed
      ai: KAIK: fix a bug (introduced by me)
      build: cmake: find mingwlibs libraries -> no need to specify manually
      build: CMake: library detection fixes (mainly, but not exclusively for mingw) configuring spring for a default build on windows now is as easy as: cmake -G "MinGW Makefiles" -> no more manual configuration of library locations and include paths of mingwlibs
      fix bug where files in data-dirs would be found multiple times under windows, like this: ./x, ././x, ./././x
      FileSystem fix for when recursively creating a directory specified by an absolute path on windows
      some warnings removed
      ai: move common AWK scripts to a more central location
      ai: when duplicate AI Interface or Skirmish AI Info is found, log which one will be used
      two warnings removed
      lots of initialization order warnings removed, plus one small bug fixed in UnitDefHander in turn
      AI: minimal fix for auto-generated AI Interfaces
      revive DemoAnalyser and DemoDumper both are buildable (only explicitly) with: make demoanalyser make demodumper when using CMake
      fixing two /save bugs /save now works again (=> does not crash while saving) not heavily tested though loading still broken
      remove initialization order warnings from Builder.cpp
      fix a compile error
      fix two load bugs (there are more)
      fix two load bugs
      more initialization order warnings removed
      some more warnings removed
      AI: Java Interface: possibly fix for 64bit linux
      some warnings removed
      fix compile error: ButtonPress renamed to ButtonPressEvt, as former seems to be defined already as a nummeric constant somewhere
      allow the user to save the game through the Quit-Box (save-game-file-name is auto generated, not choosable)
      AI: C Interface: fix a bug and switch from use of SharedLib.h (engine, C++) to SharedLibrary.h (AI CUtils, C) the bug appeared when a native Skirmish AI library could not be loaded. the engine still though it was loaded successfully.
      AI: Java Interface: fix a bug, thanks to LoidThanead, he found it and hunted it down to the darkest edge of its hole. some comments added to a AI Events, so this same error may appear less likely in an other interface.
      AI: Java Interface: instead of always client, look for the server version of the JVM by default on 64bit systems (following SUN convention)
      define a common indicator for 32bit or 64bit-ness
      AI: Java Interface: fixes for 64bit systems
      spammy warning removed, thanks to dieze and Auswaschbar :D
      make CommandFinnished events get through to the AIs again
      report a possible error when an AI could not be found to infolog
      some fixes for save/load
      doxygenification & creg cleanup and fixes
      make SYNCDEBUG build compile
      doxygen-ification, warnings removed, fix a bug in LoadSaveHandler
      build: cmake: try to fix Java Interface compilation bug
      build: CMake: do not add unneeded directory to includes
      AI; Java AI Interface: support a SkirmishAI/ dir to be optionally used instead of the SkirmishAI.jar
      AI: Java: ant scripts of the Interface and Skirmish AIs can generate JavaDoc
      AI: add pause command (for debugging purposes)
      AI: Legacy C++ Wrapper:  fix for pausing the game

revcompgeek (2):
      Added PowerPC calling convention
      Add MacMessageBox and fix a few missing symbols

spliff (1):
      ArchiveMover changed to recognise modinfo.lua

zerver (81):
      Possible fix for game refusing to speed up after a slowdown
      Merge branch 'master' of git@github.com:spring/spring
      Fix compile error
      Calculate CPU load correctly when speed != 1.0
      Fix compile error
      Fix mantis #1236
      EnforceGameSpeed tweaks
      Network concurrency fix
      Fix another concurrency issue
      Merged branch 'gmlbranch'
      Fix MSVC compile errors
      Restore unnecessary MSVC fix
      Remake of gmlCount class
      Cleanup myGL.h includes
      Cleanup more superfluous myGL.h includes
      Area reclaiming of UNITS+features (hold SHIFT)
      Change key to ALT for area reclaim of units Reclaim units first, then features
      Fix lasers sometimes don't shoot (mantis #1277)
      Fix units go outside repair/reclaim area (mantis #1363) Change key to SPACE for area reclaim of units Misc reclaim/repair related bugfixes
      Fix better reclaim/repair/rez behavior Expose SPACE modifier key to LUA
      Fix compile error
      Merge branch 'master' of git@github.com:spring/spring
      Optional "prefer resurrection" mode for patrolling builders (ALT key) Fix assist resurrect when guarding a resurrecter
      Always use Boost for stdint
      Change key to SPACE for resurrection patrol Optional repair/reclaim for area resurrecters Optional reclaim for area repairers
      Merge branch 'master' of git@github.com:spring/spring
      Update vcproj
      Fix mantis #1372 (area capture captures even cloaked/inaccesible units) Fix same bug for area reclaiming of units Distinguish between (fake) META and ALT keys Misc bugfix
      Merge branch 'master' of git@github.com:spring/spring
      Update vcproj + minor fixes
      Fix GML bug related to default arguments for projectiles
      Fix cstdint for Boost 1.38.
      Update vcproj for new version of vclibs
      Fix const/non-const mismatch
      Allow manually controlling the game speed with greater precision
      Don't reject game speed change or pause by host
      Reduce risk of leaving Spring running if some thread crashed
      Handle meta key instead of space since space is same as default fake meta
      Don't create nano particles for units outside of view (experimental, GML version only) Side effects: Less particles seen on mini map
      Merge branch 'master' of git@github.com:spring/spring
      Move unitDrawer->Update from Sim to Draw GML cleanup Fix small crash bug on exit
      CRLF probs...
      Update VCproj
      Add mutex profiler
      Improve concurrency in ProjectileHandler
      Improved concurrency in GroundDecalHandler
      Merge branch 'master' of git@github.com:spring/spring
      Fix mem leak + crash
      Merge branch 'master' of git@github.com:spring/spring
      Improvements to previous commit
      Fix mantis #72 (units attacking ground on non-explicit attack order)
      Add possible future replacement for dynamic_cast (disabled now)
      Update vcproj
      Merge branch 'master' of git@github.com:spring/spring
      Small fix
      Fix mantis #228 (mouse still locked after alt-tab)
      Merge branch 'master' of git@github.com:spring/spring
      Fix compile error in new font system (MSVC)
      Merge branch 'master' of git@github.com:spring/spring
      Again :)
      Fix crashes in new font system
      Improve concurrency for flying pieces
      Fix mantis #1304 (restored terrain will bury features)
      Merge branch 'master' of git@github.com:spring/spring
      Minor fixes
      Merge branch 'master' of git@github.com:spring/spring
      Update AI SConscript
      Show pathing status in PlayerRoster
      Merge branch 'master' of git@github.com:spring/spring
      Some fixes to pathing status display in PlayerRoster
      Merge branch 'master' of git@github.com:spring/spring
      Don't call spectators players
      Merge branch 'master' of git@github.com:spring/spring
      Update vcproj
      Small tweaks in PlayerRoster
      Fix mantis #72 again :)
      Prevent screen saver from kicking in
      Improve concurrency for projectiles
      Merge branch 'master' of git@github.com:spring/spring
      Projectile fixes
      Small fix

