Difference between revisions of "SoC Ideas UMCD 2014"

From The Battle for Wesnoth Wiki
(Description)
 
(15 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{SoC2014Idea}}
 
{{SoC2014Idea}}
  
=Description=
+
==Description==
<h2>UMCD</h2>
+
===UMCD===
User-made content daemon (UMCD) project. Improving and complete an add-on server. More informations at this page [SoC_Ideas_UMCD_2014].
+
Page of the idea: [[SoC_Ideas_UMCD_2014]]
 +
Improving and completing the new add-ons server, '''UMCD''' (User-made Content Daemon).
  
 
{{#dpl:
 
{{#dpl:
Line 10: Line 11:
 
  |suppresserrors=true
 
  |suppresserrors=true
 
  |noresultsheader=''There are no submitted student proposals for this idea''
 
  |noresultsheader=''There are no submitted student proposals for this idea''
  |category=Summer of Code 2014 Student Page&SoC Ideas IDEA NAME
+
  |category=Summer of Code 2014 Student Page&SoC_Ideas_UMCD_2014
 
  |notcategory=SoC 2014 Not Submitted To Google
 
  |notcategory=SoC 2014 Not Submitted To Google
 
  |include=#Description
 
  |include=#Description
Line 18: Line 19:
 
}}
 
}}
  
=Additional Information=
+
==Additional Information==
  
=Whom to ask about this=
+
The current add-ons server used in production ('''campaignd''') is old and monolithic, so it would be problematic to extend it. That is why we started working on a new add-ons server during the last summer for GSoC ([[User:Trademark/GSoC_2013/Addon_Server:_Create_a_new_and_shiny_one|see last year's proposal here]]). If you are interested, and before starting anything, please come to see us.
trademark on IRC or by mail <ptalbot@hyc.io> (prefer by mail, I could miss you on IRC)
+
 
mordante on IRC
+
===Goals===
 +
 
 +
* The '''main goal''' of this summer project is to finish the basics of the server. This means that every action on add-ons should be implemented (create, update, delete, retrieve, update password, ...). It also means that you should update the client accordingly.
 +
* '''Secondary goal''': Resolution of add-on dependencies.
 +
* '''Additional goals''':
 +
** Synchronization of translations with [[WesCamp]].
 +
** Support for gettext on the client side (translation of server responses).
 +
 
 +
There is also a side project of a networking library based on Boost.Asio that we will use in UMCD. It could be great to design the add-ons server such that the basic add-on framework could be re-used in other open-source projects (the requirements for an add-ons server are often the same).
 +
 
 +
===Where to start===
 +
 
 +
* First you should subscribe to the [https://mail.gna.org/listinfo/wesnoth-dev/ Wesnoth developers mailing list].
 +
* Download and build [https://github.com/ptal/neev NEEV]. Since you'll need to install and build Boost, it's important to build this library first (Wesnoth depends on Boost).
 +
* Obtain a clone of the [[WesnothRepository|Wesnoth source repository]], and [https://github.com/wesnoth/wesnoth/blob/master/INSTALL.md compile it].
 +
* See the official [[UMCD]] page, and compile the UMCD server.
 +
* Before starting anything, send a mail or ask on IRC, since the UMCD page isn't updated with the latest information.
 +
 
 +
===Are you the person?===
 +
 
 +
We expect you to be motivated, especially if you are not familiar with the tools we are using. Nevertheless, 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 spend a lot of time learning, so be warned). Classic skills in software engineering and SQL are a plus. A love for designing and writing clean code is highly advisable.
 +
 
 +
===Resources===
 +
 
 +
* [https://github.com/wesnoth/wesnoth-old/ Wesnoth repository], in particular, the branch '''asio_umcd'''.
 +
* [[UMCD|UMCD page]] (not updated, be careful).
 +
* [http://www.boost.org/ Boost C++ libraries], in particular, [http://www.boost.org/libs/asio Boost.Asio].
 +
* [https://github.com/rbock/sqlpp11 SQLPP11 library].
 +
* [https://github.com/ptal/neev Neev library].
 +
 
 +
==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

Latest revision as of 20:11, 15 May 2020


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

Page of the idea: SoC_Ideas_UMCD_2014 Improving and completing the new add-ons server, UMCD (User-made Content Daemon).

There is 1 submitted student proposal for this idea

Spoffy - UMCD Extension Proposal

I intend to complete and extend the User Made Content Daemon produced by Trademark during GSoC 2013. This means implementing the basic functionality (Uploading, downloading addons, etc) in a secure manner. After this, I would continue on to extend it by adding administration tools, refactoring code, adding build scripts, adding cross-platform support (in principle), and other things (probably!). Outlined on this page is an in-depth proposal

More to come as I fill this out.
See SoC 2014 Spoffy Finishing and Enhancing the UMCD for more information.

Additional Information

The current add-ons server used in production (campaignd) is old and monolithic, so it would be problematic to extend it. That is why we started working on a new add-ons server during the last summer for GSoC (see last year's proposal here). If you are interested, and before starting anything, please come to see us.

Goals

  • The main goal of this summer project is to finish the basics of the server. This means that every action on add-ons should be implemented (create, update, delete, retrieve, update password, ...). It also means that you should update the client accordingly.
  • Secondary goal: Resolution of add-on dependencies.
  • Additional goals:
    • Synchronization of translations with WesCamp.
    • Support for gettext on the client side (translation of server responses).

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

Where to start

  • First you should subscribe to the Wesnoth developers mailing list.
  • Download and build NEEV. Since you'll need to install and build Boost, it's important to build this library first (Wesnoth depends on Boost).
  • Obtain a clone of the Wesnoth source repository, and compile it.
  • See the official UMCD page, and compile the UMCD server.
  • Before starting anything, send a mail or ask on IRC, since the UMCD page isn't updated with the latest information.

Are you the person?

We expect you to be motivated, especially if you are not familiar with the tools we are using. Nevertheless, 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 spend a lot of time learning, so be warned). Classic skills in software engineering and SQL are a plus. A love for designing and writing clean code is highly advisable.

Resources

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
This page was last edited on 15 May 2020, at 20:11.