Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread ypopezios
@klaus

I suggest you don't spend your energy with this before I have a review of the 
code myself, cause I haven't looked at it after the two merges took place.
-- 
https://code.launchpad.net/~widelands-dev/widelands/congestion2/+merge/348525
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/congestion2.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread Klaus Halfmann
Mhh, thhis diff shows some Merge conflicts  <<
But I do not seem them in the code?

I get lost in tat code change, sorry. 
That complexity in Road and Carrier gives me a headache.

Ill give it another try with the debugger tomorrow.


Diff comments:

> === modified file 'src/economy/flag.cc'
> --- src/economy/flag.cc   2018-07-07 09:05:13 +
> +++ src/economy/flag.cc   2018-07-10 13:28:48 +
> @@ -394,101 +421,112 @@
>  #define MAX_TRANSFER_PRIORITY 16
>  
>  /**
> - * Called by carrier code to indicate that the carrier is moving to pick up 
> an
> - * ware. Ware with highest transfer priority is chosen.
> - * \return true if an ware is actually waiting for the carrier.
> - */
> -bool Flag::ack_pickup(Game&, Flag& destflag) {
> - int32_t highest_pri = -1;
> - int32_t i_pri = -1;
> -
> - for (int32_t i = 0; i < ware_filled_; ++i) {
> - if (!wares_[i].pending)
> - continue;
> -
> - if (wares_[i].nextstep != )
> - continue;
> -
> - if (wares_[i].priority > highest_pri) {
> - highest_pri = wares_[i].priority;
> - i_pri = i;
> -
> - // Increase ware priority, it matters only if the ware 
> has to wait.
> - if (wares_[i].priority < MAX_TRANSFER_PRIORITY)
> - wares_[i].priority++;
> - }
> - }
> -
> - if (i_pri >= 0) {
> - wares_[i_pri].pending = false;
> - return true;
> - }
> -
> - return false;
> -}
> -/**
>   * Called by the carriercode when the carrier is called away from his job
>   * but has acknowledged a ware before. This ware is then freed again
>   * to be picked by another carrier. Returns true if an ware was indeed
>   * made pending again
>   */
>  bool Flag::cancel_pickup(Game& game, Flag& destflag) {
> - int32_t lowest_prio = MAX_TRANSFER_PRIORITY + 1;
> - int32_t i_pri = -1;
> -
>   for (int32_t i = 0; i < ware_filled_; ++i) {
> - if (wares_[i].pending)
> - continue;
> -
> - if (wares_[i].nextstep != )
> - continue;
> -
> - if (wares_[i].priority < lowest_prio) {
> - lowest_prio = wares_[i].priority;
> - i_pri = i;
> + PendingWare& pw = wares_[i];
> + if (!pw.pending && pw.nextstep == ) {
> + pw.pending = true;
> + pw.ware->update(game);  //  will call call_carrier() if 
> necessary
> + return true;
>   }
>   }
>  
> - if (i_pri >= 0) {
> - wares_[i_pri].pending = true;
> - wares_[i_pri].ware->update(game);  //  will call call_carrier() 
> if necessary
> - return true;
> - }
> -
>   return false;
>  }
>  
>  /**
> - * Wake one sleeper from the capacity queue.
> -*/
> -void Flag::wake_up_capacity_queue(Game& game) {
> - while (!capacity_wait_.empty()) {
> - Worker* const w = capacity_wait_[0].get(game);
> - capacity_wait_.erase(capacity_wait_.begin());
> - if (w && w->wakeup_flag_capacity(game, *this))
> - break;
> - }
> -}
> -
> -/**
> - * Called by carrier code to retrieve one of the wares on the flag that is 
> meant
> - * for that carrier.
> - *
> - * This function may return 0 even if \ref ack_pickup() has already been
> - * called successfully.
> -*/
> -WareInstance* Flag::fetch_pending_ware(Game& game, PlayerImmovable& dest) {
> - int32_t best_index = -1;
> -
> - for (int32_t i = 0; i < ware_filled_; ++i) {
> - if (wares_[i].nextstep != )
> - continue;
> -
> - // We prefer to retrieve wares that have already been acked
> - if (best_index < 0 || !wares_[i].pending)
> - best_index = i;
> - }
> -
> + * Called by carrier code to find the best among the wares on this flag
> + * that are meant for the provided dest.
> + * \return index of found ware or -1 if not found appropriate
> +*/
> +int32_t Flag::find_pending_ware(PlayerImmovable& dest) {
> + int32_t highest_pri = -1;
> + int32_t best_index = -1;
> + bool ware_pended = false;
> +
> + for (int32_t i = 0; i < ware_filled_; ++i) {
> + PendingWare& pw = wares_[i];
> + if (pw.nextstep != ) continue;
> +
> + if (pw.priority < MAX_TRANSFER_PRIORITY) pw.priority++;
> + // Release promised pickup, in case we find a preferable ware
> + if (!ware_pended && !pw.pending) {
> + ware_pended = pw.pending = true;
> + }
> +
> + // If dest is flag, we exclude wares that can stress it
> + if ( != building_ &&
> + 
> !dynamic_cast(dest).allow_ware_from_flag(*pw.ware, *this)) {
> + continue;
> + }

Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread Klaus Halfmann
Uhhm,
I opend a game I played with this branch with trunk  and got 

InternetGaming: Game update on metaserver.
ASAN:DEADLYSIGNAL
=
==88925==ERROR: AddressSanitizer: BUS on unknown address 0x6118002f2ba8 (pc 
0x0001098ce1c1 bp 0x7ffee6bd7390 sp 0x7ffee6bd7370 T0)
#0 0x1098ce1c0 in Widelands::Road::get_flag(Widelands::Road::FlagId) const 
road.h:91
#1 0x109a7d217 in Widelands::Carrier::pickup_from_flag(Widelands::Game&, 
Widelands::Bob::State&) carrier.cc:253
#2 0x109a7c681 in Widelands::Carrier::transport_update(Widelands::Game&, 
Widelands::Bob::State&) carrier.cc:168

not sure where this comes from, will try this with this branch again.
optically a carrier dropped a ware in the middle of a road and wen he 
went back I got that crash. Whatever we did this may break savegames.

I will continue checking the code why this may happen.
-- 
https://code.launchpad.net/~widelands-dev/widelands/congestion2/+merge/348525
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/congestion2.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/bug-1691339-editor-8-players into lp:widelands

2018-07-10 Thread kaputtnik
Here on linux it looks like 
https://bugs.launchpad.net/widelands/+bug/1691339/+attachment/5161992/+files/player_options.png

The tribe selection looks also some kind of misplaced: 
https://bugs.launchpad.net/widelands/+bug/1691339/+attachment/5161993/+files/player_options-tribe.png

While the tribe selection is a good idea, i would prefer the old spinbox for 
'Number of Players'. I think it fits better with the other places where an 
amount could be chosen, e.g. for the resources.

The button for placing the starting position should get a tooltipp too :)
-- 
https://code.launchpad.net/~widelands-dev/widelands/bug-1691339-editor-8-players/+merge/349092
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/bug-1691339-editor-8-players.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/bug-1691339-editor-8-players into lp:widelands

2018-07-10 Thread GunChleoc
Questions answered in-line. Will look into the positioning issue.

Diff comments:

> 
> === modified file 'src/editor/ui_menus/player_menu.cc'
> --- src/editor/ui_menus/player_menu.cc2018-05-22 11:29:41 +
> +++ src/editor/ui_menus/player_menu.cc2018-07-08 12:09:41 +
> @@ -19,266 +19,313 @@
>  
>  #include "editor/ui_menus/player_menu.h"
>  
> +#include 
> +
> +#include 
>  #include 
>  
>  #include "base/i18n.h"
> -#include "base/wexception.h"
>  #include "editor/editorinteractive.h"
>  #include "editor/tools/set_starting_pos_tool.h"
>  #include "graphic/graphic.h"
> +#include "graphic/playercolor.h"
>  #include "logic/map.h"
>  #include "logic/map_objects/tribes/tribe_basic_info.h"
> -#include "logic/player.h"
> -#include "ui_basic/editbox.h"
> -#include "ui_basic/messagebox.h"
> -#include "ui_basic/textarea.h"
> -
> -#define UNDEFINED_TRIBE_NAME ""
> +#include "logic/widelands.h"
> +#include "profile/profile.h"
> +#include "ui_basic/checkbox.h"
> +#include "ui_basic/multilinetextarea.h"
> +
> +namespace {
> +constexpr int kMargin = 4;
> +// If this ever gets changed, don't forget to change the strings in the 
> warning box as well.
> +constexpr Widelands::PlayerNumber max_recommended_players = 8;
> +}  // namespace
> +
> +class EditorPlayerMenuWarningBox : public UI::Window {
> +public:
> + explicit EditorPlayerMenuWarningBox(UI::Panel* parent)
> + /** TRANSLATORS: Window title in the editor when a player has selected 
> more than the recommended number of players */
> +: Window(parent, "editor_player_menu_warning_box", 0, 0, 500, 220, 
> _("Too Many Players")),
> +  box_(this, 0, 0, UI::Box::Vertical, 0, 0, 2 * kMargin),
> +  warning_label_(_,
> + 0,
> + 0,
> + 300,
> + 0,
> + UI::PanelStyle::kWui,
> + /** TRANSLATORS: Info text in editor player menu 
> when a player has selected more than the recommended number of players. 
> Choice is made by OK/Abort. */
> + _("We do not recommend setting more than 8 players 
> except for testing "
> +   "purposes. Are you sure that you want more than 8 
> players?"),
> + UI::Align::kLeft,
> + UI::MultilineTextarea::ScrollMode::kNoScrolling),
> +  /** TRANSLATORS: Checkbox for: 'We do not recommend setting more 
> than 8 players except for
> + testing purposes. Are you sure that you want more than 8 
> players?' */
> +  reminder_choice_(_, Vector2i::zero(), _("Do not remind me 
> again")),
> +  button_box_(_, kMargin, kMargin, UI::Box::Horizontal, 0, 0, 2 
> * kMargin),
> +  ok_(_box_, "ok", 0, 0, 120, 0, 
> UI::ButtonStyle::kWuiPrimary, _("OK")),
> +  cancel_(_box_, "cancel", 0, 0, 120, 0, 
> UI::ButtonStyle::kWuiSecondary, _("Abort")) {
> +
> + set_center_panel(_);
> +
> + box_.add(_label_, UI::Box::Resizing::kFullSize);
> + box_.add(_choice_, UI::Box::Resizing::kFullSize);
> +
> + button_box_.add_inf_space();
> + button_box_.add(_);
> + button_box_.add_inf_space();
> + button_box_.add(_);
> + button_box_.add_inf_space();
> + box_.add_space(kMargin);
> + box_.add(_box_, UI::Box::Resizing::kFullSize);
> + box_.add_space(kMargin);
> +
> + 
> ok_.sigclicked.connect(boost::bind(::ok, 
> boost::ref(*this)));
> + cancel_.sigclicked.connect(
> +boost::bind(::cancel, 
> boost::ref(*this)));
> + }
> +
> + void ok() {
> + write_option();
> + end_modal(UI::Panel::Returncodes::kOk);
> + }
> +
> + void cancel() {
> + write_option();
> + 
> end_modal(UI::Panel::Returncodes::kBack);
> + }
> +
> + void write_option() {
> + if (reminder_choice_.get_state()) {
> + g_options.pull_section("global").set_bool(
> +"editor_player_menu_warn_too_many_players", false);
> + }
> + }
> +
> +private:
> + UI::Box box_;
> + UI::MultilineTextarea warning_label_;
> + UI::Checkbox reminder_choice_;
> + UI::Box button_box_;
> + UI::Button ok_;
> + UI::Button cancel_;
> +};
>  
>  inline EditorInteractive& EditorPlayerMenu::eia() {
>   return dynamic_cast(*get_parent());
>  }
>  
>  EditorPlayerMenu::EditorPlayerMenu(EditorInteractive& parent, 
> UI::UniqueWindow::Registry& registry)
> -   : UI::UniqueWindow(, "players_menu", , 340, 400, 
> _("Player Options")),
> - add_player_(this,
> - "add_player",
> - get_inner_w() - 5 - 20,
> - 5,
> - 20,
> - 20,
> - UI::ButtonStyle::kWuiSecondary,
> - 

Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/road_promotions into lp:widelands

2018-07-10 Thread GunChleoc
BTW what Bunnybot will pick up on is the commit message rather than the 
description. The description will still be accessible via this merge request 
though.
-- 
https://code.launchpad.net/~widelands-dev/widelands/road_promotions/+merge/344182
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/road_promotions.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread Klaus Halfmann
./regression_test.py -b ./widelands
Ran 42 tests in 748.805s

OK so far, will do more small improvements, later
-- 
https://code.launchpad.net/~widelands-dev/widelands/congestion2/+merge/348525
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/congestion2.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread ypopezios
I'd rather write a paper on theoretical aspects of Widelands in graph theory... 
And I'm not interested in publicity, thanks. I'm interested in testing though. 
You can test current code the way you said (specific congestion scenarios and 
strange maps) or you can wait to test after I update the code. Even watching 
the carriers and meditating on their behaviour under special circumstances can 
be helpful, since the preferable behaviour is not obvious. Thanks for your 
offer to help and thanks in advance for doing it.
-- 
https://code.launchpad.net/~widelands-dev/widelands/congestion2/+merge/348525
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/congestion2.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread Klaus Halfmann
@ypopezios: OK, thanks for your hints, once you are done you should write
a paper on pracital aspects of https://en.wikipedia.org/wiki/Graph_theory
in Widelands ;-)

Now, how can I practically help?

I could try to reproduce on of the deadlocks/congestions we found
so far and check, if your change will either fix or at least improve it.

I can setup a debugger and check details of your code, if you wish.

So please tell me how I can help and thanks for the plates your serve.

(Your road promotion code made it alread to 
 youtube https://www.youtube.com/watch?v=ZAe4zSCznRw=1s)

Next time I should give credit to you.
-- 
https://code.launchpad.net/~widelands-dev/widelands/congestion2/+merge/348525
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/congestion2.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/bug-1691339-editor-8-players into lp:widelands

2018-07-10 Thread Klaus Halfmann
Review: Needs Fixing compile, test

Sorry, that dropdown Window for "Number of players" 
always appears at the top left of the screen.
Playing in a Window on OSX 1280 x 720 and in full screen mode.

Does happen on Linux/Windows, too?
-- 
https://code.launchpad.net/~widelands-dev/widelands/bug-1691339-editor-8-players/+merge/349092
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/bug-1691339-editor-8-players.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread ypopezios
@klaus

Road promotion was just the "appetizer". Congestion here is the "first plate". 
There will hopefully come a "main plate" as well, which will seriously improve 
routing performance. There will also come some other improvements related to 
economy.

Concerning the description of this merge, reading the following opening post is 
a must:
https://wl.widelands.org/forum/topic/4257/

I will address Gun's comments one of these days. I may still need some help 
with C++, but I will report that here.
-- 
https://code.launchpad.net/~widelands-dev/widelands/congestion2/+merge/348525
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/congestion2.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/bug-1691339-editor-8-players into lp:widelands

2018-07-10 Thread Klaus Halfmann
One transient error on travis:
> apt-get install failed

Code looks ok to me, two questions inline.
Will compile and check this now 


Diff comments:

> 
> === modified file 'src/editor/ui_menus/player_menu.cc'
> --- src/editor/ui_menus/player_menu.cc2018-05-22 11:29:41 +
> +++ src/editor/ui_menus/player_menu.cc2018-07-08 12:09:41 +
> @@ -19,266 +19,313 @@
>  
>  #include "editor/ui_menus/player_menu.h"
>  
> +#include 
> +
> +#include 
>  #include 
>  
>  #include "base/i18n.h"
> -#include "base/wexception.h"
>  #include "editor/editorinteractive.h"
>  #include "editor/tools/set_starting_pos_tool.h"
>  #include "graphic/graphic.h"
> +#include "graphic/playercolor.h"
>  #include "logic/map.h"
>  #include "logic/map_objects/tribes/tribe_basic_info.h"
> -#include "logic/player.h"
> -#include "ui_basic/editbox.h"
> -#include "ui_basic/messagebox.h"
> -#include "ui_basic/textarea.h"
> -
> -#define UNDEFINED_TRIBE_NAME ""
> +#include "logic/widelands.h"
> +#include "profile/profile.h"
> +#include "ui_basic/checkbox.h"
> +#include "ui_basic/multilinetextarea.h"
> +
> +namespace {
> +constexpr int kMargin = 4;
> +// If this ever gets changed, don't forget to change the strings in the 
> warning box as well.
> +constexpr Widelands::PlayerNumber max_recommended_players = 8;
> +}  // namespace
> +
> +class EditorPlayerMenuWarningBox : public UI::Window {
> +public:
> + explicit EditorPlayerMenuWarningBox(UI::Panel* parent)
> + /** TRANSLATORS: Window title in the editor when a player has selected 
> more than the recommended number of players */
> +: Window(parent, "editor_player_menu_warning_box", 0, 0, 500, 220, 
> _("Too Many Players")),
> +  box_(this, 0, 0, UI::Box::Vertical, 0, 0, 2 * kMargin),
> +  warning_label_(_,
> + 0,
> + 0,
> + 300,
> + 0,
> + UI::PanelStyle::kWui,
> + /** TRANSLATORS: Info text in editor player menu 
> when a player has selected more than the recommended number of players. 
> Choice is made by OK/Abort. */
> + _("We do not recommend setting more than 8 players 
> except for testing "
> +   "purposes. Are you sure that you want more than 8 
> players?"),
> + UI::Align::kLeft,
> + UI::MultilineTextarea::ScrollMode::kNoScrolling),
> +  /** TRANSLATORS: Checkbox for: 'We do not recommend setting more 
> than 8 players except for
> + testing purposes. Are you sure that you want more than 8 
> players?' */
> +  reminder_choice_(_, Vector2i::zero(), _("Do not remind me 
> again")),
> +  button_box_(_, kMargin, kMargin, UI::Box::Horizontal, 0, 0, 2 
> * kMargin),
> +  ok_(_box_, "ok", 0, 0, 120, 0, 
> UI::ButtonStyle::kWuiPrimary, _("OK")),
> +  cancel_(_box_, "cancel", 0, 0, 120, 0, 
> UI::ButtonStyle::kWuiSecondary, _("Abort")) {
> +
> + set_center_panel(_);
> +
> + box_.add(_label_, UI::Box::Resizing::kFullSize);
> + box_.add(_choice_, UI::Box::Resizing::kFullSize);
> +
> + button_box_.add_inf_space();
> + button_box_.add(_);
> + button_box_.add_inf_space();
> + button_box_.add(_);
> + button_box_.add_inf_space();
> + box_.add_space(kMargin);
> + box_.add(_box_, UI::Box::Resizing::kFullSize);
> + box_.add_space(kMargin);
> +
> + 
> ok_.sigclicked.connect(boost::bind(::ok, 
> boost::ref(*this)));
> + cancel_.sigclicked.connect(
> +boost::bind(::cancel, 
> boost::ref(*this)));
> + }
> +
> + void ok() {
> + write_option();
> + end_modal(UI::Panel::Returncodes::kOk);
> + }
> +
> + void cancel() {
> + write_option();
> + 
> end_modal(UI::Panel::Returncodes::kBack);
> + }
> +
> + void write_option() {
> + if (reminder_choice_.get_state()) {
> + g_options.pull_section("global").set_bool(
> +"editor_player_menu_warn_too_many_players", false);
> + }
> + }
> +
> +private:
> + UI::Box box_;
> + UI::MultilineTextarea warning_label_;
> + UI::Checkbox reminder_choice_;
> + UI::Box button_box_;
> + UI::Button ok_;
> + UI::Button cancel_;
> +};
>  
>  inline EditorInteractive& EditorPlayerMenu::eia() {
>   return dynamic_cast(*get_parent());
>  }
>  
>  EditorPlayerMenu::EditorPlayerMenu(EditorInteractive& parent, 
> UI::UniqueWindow::Registry& registry)
> -   : UI::UniqueWindow(, "players_menu", , 340, 400, 
> _("Player Options")),
> - add_player_(this,
> - "add_player",
> - get_inner_w() - 5 - 20,
> - 5,
> - 20,
> - 20,
> -

Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/congestion2 into lp:widelands

2018-07-10 Thread Klaus Halfmann
Review: Needs Information

ypopezios what is the purpose / descripton of this branch?

You want to adress that "ai roads getting jammed a lot". 
You already improved road promotion, but this is not the case here?
Does this inlcude the "swapping the routing" idea (which is really good!)

Testing would check how somme AIs behave on this "concentric rings"
and other "strange" maps :-)

Do you have time to care for Guns (very valid) comments?
If not I might pick up to lear more about that code.

please respond.


-- 
https://code.launchpad.net/~widelands-dev/widelands/congestion2/+merge/348525
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/congestion2.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


[Widelands-dev] [Merge] lp:~widelands-dev/widelands/bug_1780486_translation_fix into lp:widelands

2018-07-10 Thread noreply
The proposal to merge lp:~widelands-dev/widelands/bug_1780486_translation_fix 
into lp:widelands has been updated.

Status: Needs review => Merged

For more details, see:
https://code.launchpad.net/~widelands-dev/widelands/bug_1780486_translation_fix/+merge/349208
-- 
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/bug_1780486_translation_fix.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp


Re: [Widelands-dev] [Merge] lp:~widelands-dev/widelands/bug_1780486_translation_fix into lp:widelands

2018-07-10 Thread GunChleoc
Review: Approve

Thanks for the fix :)

@bunnybot merge
-- 
https://code.launchpad.net/~widelands-dev/widelands/bug_1780486_translation_fix/+merge/349208
Your team Widelands Developers is subscribed to branch 
lp:~widelands-dev/widelands/bug_1780486_translation_fix.

___
Mailing list: https://launchpad.net/~widelands-dev
Post to : widelands-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~widelands-dev
More help   : https://help.launchpad.net/ListHelp