SoC Ideas UMCD 2014

From The Battle for Wesnoth Wiki
Revision as of 11:24, 8 February 2014 by Trademark (talk | contribs) (Are you the guy?)


This page is related to Summer of Code 2014
See the list of Summer of Code 2014 Ideas



This is a Summer of Code 2014 Idea



Description

UMCD

User-made content daemon (UMCD) project. Improving and complete an add-on server. More informations on this page SoC_Ideas_UMCD_2014.

There are no submitted student proposals for this idea

Additional Information

The current add-on server is old and monolithic so it'd problematic to extend it. That's why we started the last summer a new add-on server during a GSOC (see the proposal of the last year here [1]). If you are interested and before starting anything, please come see us.

Goal

  • Main goal of this summer project is to finish the basic of the server, it means that every actions on add-on should be implemented (create, update, delete, retrieve, update password, ...). It also mean that you should update the client accordingly.
  • Second goal: Dependencies resolution of the add-ons.
  • Additional goal: Synchronization of the translations with Wescamp.
  • Additional goal: Support for gettext on the client side (translation of the server responses).

There is also a side project of a networking library based on Boost.Asio that we'll use inside the UMCD. It could be great to design the add-on server such that basic add-on part could be re-used in other open-source projects (the requirements for an add-on server are often the same).

Where to start

  • First you should subscribe to the Wesnoth mailing-list [2].
  • Download and build NEEV [3], since you'll need to install and build Boost, it's important to build this library first (Wesnoth depends on Boost).
  • Download the source of the game via Github and compile it [4].
  • See the official UMCD page [5] and compile the UMCD server.
  • Before starting anything, send a mail or ask on IRC, the UMCD page isn't updated with last informations.

Are you the guy?

There is only one requirement, you must choose between being motivated or being a genius. But we would like you to have some familiarity with C++11 or at least C++. If you don't know C++ but you are interested, ask us and we'll give you some references to learn C++ (but you will need to pass a lot of time learning so be warned). Classic skills in software engineering and SQL are a plus. A love for writing clean code and design is highly advisable.

Resources

  • Wesnoth repository [6], especially the branch asio_umcd.
  • UMCD page [7] (not updated be careful).
  • Boost C++ libraries [8], especially Boost.Asio [9].
  • SQLPP11 library [10].
  • Neev library [11].

Whom to ask about this

  • trademark on IRC or by mail <ptalbot@hyc.io> (contact me first by mail, I could miss you on IRC)
  • mordante on IRC