| Age | Commit message (Collapse) | Author | 
|---|
|  | - [server] Also delete game from RAM. | 
|  | - Updated dependencies in package-lock.json
- Set default homepage to "." so that built pages are relative to "index.html".
- Add module "helmet" to handle page title.
- Simplified page loading (replace static function builder with direct call to a method with component as argument).
- Move function loadGameFromDisk in a separate file.
- Use React context to access page object.
- Add a new React component "Navigation" and simplify page rendering.
- Add ability to choose power for any kind of loaded game.
In phase history:
- Show messages from all past and currently displayed phase.
- Display messages from past phase with gray background.
- Show messages per protagonist in tabs.
- Show message phase in message header
- Display message wide (header left, body right).
- Display short names for powers in message tabs header.
- Add warn function to page component.
- Messages from previous phase are displayed with gray color text.
- Game registration password input is displayed only if required
- On games page:
  - sorted by descending timestamp created.
  - In table, game ID is displayed with human readable created date.
- Prevent messages from displaying twice.
- Re-add checkbox "show orders" to display arrow orders on past maps.
- Handle HTML break-lines <br/> and remove all other HTML tags when displaying messages.
- Use latest phase as current game phase when loading a game from disk. | 
|  |  | 
|  |  | 
|  |  | 
|  | - Modified DATC tests for consistency | 
|  | - Ability to open and close port when DAIDE games are started and stopped
- Can get the DAIDE port using a request | 
|  | - Created DaideUser object
- Implemented managers are:
    requests.NameRequest: on_name_request,
    requests.ObserverRequest: on_observer_request,
    requests.IAmRequest: on_i_am_request,
    requests.HelloRequest: on_hello_request,
    requests.MapRequest: on_map_request,
    requests.MapDefinitionRequest: on_map_definition_request,
    requests.SupplyCentreOwnershipRequest: on_supply_centre_ownership_request,
    requests.CurrentPositionRequest: on_current_position_request,
    requests.HistoryRequest: on_history_request,
    requests.SubmitOrdersRequest: on_submit_orders_request,
    requests.MissingOrdersRequest: on_missing_orders_request,
    requests.GoFlagRequest: on_go_flag_request,
    requests.TimeToDeadlineRequest: on_time_to_deadline_request,
    requests.DrawRequest: on_draw_request,
    requests.SendMessageRequest: on_send_message_request,
    requests.NotRequest: on_not_request,
    requests.AcceptRequest: on_accept_request,
    requests.RejectRequest: on_reject_request,
    requests.ParenthesisErrorRequest: on_parenthesis_error_request,
    requests.SyntaxErrorRequest: on_syntax_error_request,
    requests.AdminMessageRequest: on_admin_message_request | 
|  | - MAP = MapNameNotification
- HLO = HelloNotification
- SCO = SupplyCenterNotification
- NOW = CurrentPositionNotification
- MIS = MissingOrdersNotification
- ORD = OrderResultNotification
- TME = TimeToDeadlineNotification
- CCD = PowerInCivilDisorderNotification
- OUT = PowerIsEliminatedNotification
- DRW = DrawNotification
- FRM = MessageFromNotification
- SLO = SoloNotification
- SMR = SummaryNotification
- OFF = TurnOffNotification | 
|  | - Contains a dictionary of valid retreat locations for each dislodged unit | 
|  |  | 
|  | - MAP = MapNameResponse
- MDF = MapDefinitionResponse
- HLO = HelloResponse
- SCO = SupplyCenterResponse
- NOW = CurrentPositionResponse
- THX = ThanksResponse
- MIS = MissingOrdersResponse
- ORD = OrderResultResponse
- TME = TimeToDeadlineResponse
- YES = AcceptResponse
- REJ = RejectResponse
- NOT = NotResponse
- CCD = PowerInCivilDisorderResponse
- OUT = PowerIsEliminatedResponse
- OFF = TurnOffResponse
- PRN = ParenthesisErrorResponse
- HUH = SyntaxErrorResponse | 
|  |  | 
|  | - OK, NO_CONVOY, BOUNCE, VOID, CUT, DISLODGED, DISRUPTED, DISBAND, MAYBE | 
|  | components | 
|  | - NME = NameRequest
- OBS = ObserverRequest
- IAM = IAmRequest
- HLO = HelloRequest
- MAP = MapRequest
- MDF = MapDefinitionRequest
- SCO = SupplyCentreOwnershipRequest
- NOW = CurrentPositionRequest
- HST = HistoryRequest
- SUB = SubmitOrdersRequest
- MIS = MissingOrdersRequest
- GOF = GoFlagRequest
- TME = TimeToDeadlineRequest
- DRW = DrawRequest
- SND = SendMessageRequest
- NOT = NotRequest
- YES = AcceptRequest
- REJ = RejectRequest
- PRN = ParenthesisErrorRequest
- HUH = SyntaxErrorRequest
- ADM = AdminMessageRequest | 
|  |  | 
|  |  | 
|  | - break_next_group
- add_parentheses / strip_parentheses
- parse_bytes / parse_string
- SingleToken clause
- Power clause
- String clause
- Number clause
- Province clause
- Turn clause
- UnitType clause
- Unit clause
- Order Type clause
- Order clause | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | - API to send GET and POST requests
- Orders to convert from and to webdip.net format | 
|  | - Returning all locations at once
- Removed 'loc' argument from method
- Map has pre-computed attribute dest_with_coats | 
|  |  | 
|  |  | 
|  | - Order expansion will convert the order to 'A WWW - ZZZ VIA'
- set_orders without expansion will reject the order as an invalid move order | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | - Using the nb of locs and the sorted list of supply centers to compute the initial seed used to compute the zobrist hash
- Child and parent maps should have compatible zobrist hash if the number of locs and the list of SCS is the same. | 
|  |  | 
|  |  | 
|  | [web] Update npm packaqges requirements.
[web] Fix province controller parsing. | 
|  |  | 
|  |  | 
|  | - Added 'loc' arg to get_order_status
- Raising exception on set_orders for invalid power
- Deprecated game.distribute_orders | 
|  | - Checking if there are available orders for a province when hovering over it. | 
|  | - Added Carthage? as an ambiguous alias
- Added 'Tyrrhenian Sea' as an alias for 'Tyrrhenean Sea' | 
|  |  |