With the change to --log-strict, it's not necessary to rerun with
strict mode off, so we can get rid of part of the old system.
Feel free to revert this is you don't want travis to require all
unit tests to pass as part of the build.
Just wanted to remove the empty strings that got created:
find . -type f -exec sed -i 's/<< "" <</<</g' '{}' \;
find . -type f -exec sed -i 's/<<"" <</<</g' '{}' \;
I also unstaged tools/schema/tags.cpp, since I don't think I changed
that.
This is the result of running command, in src/,
find . -type f -exec sed -i 's/\(WRN.*\)\\n\"\;/\1\" << std::endl\;/g' '{}' \;
and inspecting the results.
Also ran this subsequently:
find . -type f -exec sed -i 's/\(WARN.*\)\\n\"\;/\1\" << std::endl\;/g' '{}' \;
which only affected render.cpp
This is the result of running this command in directory src/
find . -type f -exec sed -i 's/\(ERR.*\)\\n\"\;/\1\" << std::endl\;/g' '{}' \;
and carefully inspecting the results.
If we decided it was worth it to inline map_location ==, then
surely this is also worth it to inline null_location, as the
compiler may be able to reduce tests for == null location to
"x == ... && y == ...", without having to move to a different
compilation unit.
This is a minor change to victory_when_enemies_defeated condition.
Old logic: If there are no not defeated sides which are enemies
of eachother (i.e. there is still a battle going on),
BUT victory_when_enemies_defeated = false, and either we found
a not defeated local human player, or we are a multiplayer observer
(there are no locally controlled sides), then don't end the level.
New logic: If there are no not defeated sides which are enemies,
BUT victory when enemies defeated = false, and EITHER we found a
not defeated local human player, OR there is a not defeated remote
human player AND no local human side assigned at all,
then don't end the level.
I think this more precisely the behavior we want. is_observer
doesn't belong in this function, and with the introduction of
defeat_condition, UMC will pretty much always be able to get the
behavior they want, so I'm much more comfortable to introduce this
change now than I would be otherwise.
- travis runs tests not in verbose mode,
*but* if there is a failure,
then it runs in very verbose mode, with strict mode off, to get
errors reported in the travis log.
- run_wml_tests points out that if you don't run in strict mode,
some tests may not fail as expected, so the count at the end
may differ
"write_to" lets the wmldev specify to where the message should be
written. Defaults to the previous behaviour.
The intention is for example that one might want to give a summary as a
chat message and a very detailed information in the stderr file.
This brings the team names in line with the player names and other
behavior in mp_connect in debug mode. For instance there are other
lines like this:
dbf3331e9a/src/multiplayer_connect_engine.cpp (L155)
From inspecting the save files generated while testing this issue,
it's not clear if it could have actually caused a problem in game,
but it addresses an issue raised by SlowThinker on the bug tracker:
https://gna.org/bugs/index.php?21800
and does indeed fix a minor shortcoming of debug mode in mp connect
engine.