Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 95b449427091cb0cd153a8618e92dbe9 > files > 5

freeguide-0.11-6.mga5.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <title>FreeGuide : Code Rules </title>
  <meta http-equiv='Content-Style-Type' content='text/css' />
  <link rel='stylesheet' href='../pub/skins/plain-freeguide/plain1.css' type='text/css' />
  <link rel="icon" href="../pub/skins/plain-freeguide/favicon.gif" type="image/x-icon" />
  <link rel="shortcut icon" href="../pub/skins/plain-freeguide/favicon.gif" type="image/x-icon" />
  <!--HeaderText--><style type='text/css'><!--
  ul, ol, pre, dl, p { margin-top:0px; margin-bottom:0px; }
  code.escaped { white-space: nowrap; }
  .vspace { margin-top:1.33em; }
  .indent { margin-left:40px; }
  .outdent { margin-left:40px; text-indent:-40px; }
  a.createlinktext { text-decoration:none; border-bottom:1px dotted gray; }
  a.createlink { text-decoration:none; position:relative; top:-0.5em;
    font-weight:bold; font-size:smaller; border-bottom:none; }
  img { border:0px; }
  .editconflict { color:green; 
  font-style:italic; margin-top:1.33em; margin-bottom:1.33em; }

  table.markup { border:2px dotted #ccf; width:90%; }
  td.markup1, td.markup2 { padding-left:10px; padding-right:10px; }
  table.vert td.markup1 { border-bottom:1px solid #ccf; }
  table.horiz td.markup1 { width:23em; border-right:1px solid #ccf; }
  table.markup caption { text-align:left; }
  div.faq p, div.faq pre { margin-left:2em; }
  div.faq p.question { margin:1em 0 0.75em 0; font-weight:bold; }
   
    .frame 
      { border:1px solid #cccccc; padding:4px; background-color:#f9f9f9; }
    .lfloat { float:left; margin-right:0.5em; }
    .rfloat { float:right; margin-left:0.5em; }
a.varlink { text-decoration:none; }

--></style>  <meta name='robots' content='index,follow' />
  <link rel='stylesheet' href='../pub/skins/plain-freeguide/plain2.css' type='text/css' />
</head>
<body>
<!--PageHeaderFmt-->
 <table id='wikihead' cellspacing='0' cellpadding='0' align='center'><tr>
  <td id='homelink'><img src='../pub/skins/plain-freeguide/favicon.gif' /> <a href='http://www.artificialworlds.net/freeguide'>FreeGuide</a></td>
  <td id='location'><span class='pagegroup'><a href='Developers.html'>Developers</a> &raquo;</span>
  <h1 class='pagetitle'>Code Rules</h1></td>
  <td id='wikicmds'><ul><li class='browse'><a accesskey=''  class='selflink' href='CodeRules.html'>View</a>
</li><li class='edit'>
</li><li class='diff'>
</li><li class='print'>
</li></ul>
</td>
 </tr></table> 
<!--/PageHeaderFmt-->
  <table id='wikimid' cellspacing='0' cellpadding='0' align='center'><tr>
<!--PageLeftFmt-->
   <td id='wikileft' valign='top'>
    <p><form action='http://www.artificialworlds.net/freeguide'>
     <input type='hidden' name='n' value='Developers.CodeRules' />
     <input type='hidden' name='action' value='search' />
     <input type='text' name='q' value=' Search ' class='inputbox searchbox'
      onfocus="if(this.value=' Search ') {this.value=''}" 
      onblur="if(this.value=='') {this.value=' Search '}"
      /><input type='submit' class='inputbutton searchbutton'
      value='Go' /></form></p><br />
<ul><li><a class='wikilink' href='../Main/HomePage.html'>Home Page</a>
</li><li><a class='wikilink' href='../DownloadAndInstall/DownloadAndInstall.html'>Download And Install</a>
</li><li><a class='wikilink' href='../UserGuide/UserGuide.html'>User Guide</a>
</li><li><a class='wikilink' href='../FAQ/FAQ.html'>Help And FAQ</a>
</li><li><a class='wikilink' href='Developers.html'>Developers</a>
<ul><li><span style='font-size:83%'><a class='wikilink' href='HelpUsMakeFreeGuide.html'>How to help</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='RunTheNightlyBuild.html'>Nightly Builds</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='BuildTheLatestSource.html'>Build The Latest Source</a></span>
</li><li><span style='font-size:83%'><a class='selflink' href='CodeRules.html'>Code Rules</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='CreateInstallationPackagesForDifferentPlatforms.html'>Building Installers</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='TranslateFreeGuide.html'>Translate FreeGuide</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='Design.html'>Design</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='Roles.html'>Roles</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='SourceLayout.html'>Source Layout</a></span>
</li><li><span style='font-size:83%'><a class='wikilink' href='ChangingTheVersion.html'>Changing The Version</a></span>
</li><li><span style='font-size:83%'><a class='urllink' href='http://bugs.launchpad.net/freeguide-tv/+bugs' rel='nofollow'>Bug tracker -&gt;</a></span>
</li><li><span style='font-size:83%'><a class='urllink' href='http://freeguide-tv.git.sourceforge.net/git/gitweb.cgi?p=freeguide-tv/freeguide-tv;a=tree' rel='nofollow'>Browse source -&gt;</a></span>
</li><li><span style='font-size:83%'><a class='urllink' href='http://sourceforge.net/projects/freeguide-tv' rel='nofollow'>Sourceforge -&gt;</a></span>
</li></ul></li><li><a class='wikilink' href='../Main/Credits.html'>Credits</a>
</li><li><a class='wikilink' href='../Main/Screenshots.html'>Screenshots</a>
</li><li><a class='wikilink' href='../Main/Links.html'>Links</a>
</li><li><a class='wikilink' href='../Main/SiteMap.html'>Site Map</a>
<div class='vspace'></div></li><li><a class='wikilink' href='../Main/ContactUs.html'>Contact Us</a>
</li></ul><div class='vspace'></div>
</td>
<!--/PageLeftFmt-->
    <td id='wikibody' valign='top'>
<!--PageText-->
<div id='wikitext'>
<h1><span class='wikiword'>FreeGuide</span> Code Rules</h1>
<h3>The Benevolent Fascist Dictator Rule</h3>
<p>Andy Balaam is the "benevolent" fascist dictator of <span class='wikiword'>FreeGuide</span>.  He runs the latest version of <span class='wikiword'>FreeGuide</span> from git on his desktop.  If you break <span class='wikiword'>FreeGuide</span> so he can't use it for any reason, he will revert your changes until he can use it again.
</p>
<p class='vspace'>It is <em>crucial</em> that developers be able to run the latest code.  Otherwise new bugs simply don't get fixed, and the code base stagnates.  If you are a developer, please use the git version as your normal desktop <span class='wikiword'>FreeGuide</span>.  If it breaks, let us know on the developers' mailing list, and Andy will revert the offending changes.
</p>
<p class='vspace'>We apologise if this rules bites you - it's not supposed to be a punishment, it's supposed to guarantee that the developers are always running the latest code.
</p>
<div class='vspace'></div><h3>Send patches to the mailing list before committing</h3>
<p>If you have developer access to the git repository, don't commit anything unless you have explicit permission from Andy Balaam. Instead, send a patch file to the developers' mailing list (see <a class='wikilink' href='../Main/ContactUs.html'>Contact Us</a>) and wait for permission to apply it. The exception to this is when someone has been given control of a particular file or files, for example if you have made a translation or a plugin - in that case you may modify the files you control freely.
</p>
<div class='vspace'></div><h3>Follow the coding style</h3>
<p>Please be very careful to follow the coding style we use within <span class='wikiword'>FreeGuide</span>.
</p>
<p class='vspace'>If someone can provide the Eclipse settings to enforce our style, please send them to the mailing list.
</p>
<div class='vspace'></div><h3>Commits and commit messages</h3>
<p>Each commit should be a logical set of changes, which you can summarise in a one sentence, e.g. "Added a check for a null reference when we save the IO controller configuration" or "Added a menu item that prints a whole week's personalised listings".  After this summary, you should add as much useful detail as possible - try to think about what you would need to know if you wanted to merge this change into a different branch, or needed to revert it and wanted to know what the effect would be.
</p>
<p class='vspace'>We prefer several small commits to one big one.  If your code compiles and runs ok, it is worth thinking about whether you can commit it straight away before you continue.  The more commits you split your work into, the easier it is to see which part caused a bug.  If you can avoid it, don't save everything up into a single huge commit when it's "ready".
</p>
<p class='vspace'>The exception to this is if the code you are committing doesn't get run.  There's no point committing code that doesn't get run as it won't help us discover bugs in it until it actually runs.  An example of this is if you're implementing a new menu action there is no point committing the code that does the action when you haven't added the menu item itself.  On the other hand, if you can add the menu item but make it do nothing, that might be worth doing, since it could catch bugs like that item appearing in a different theme from the rest of the menu (yes, that is a real bug we had once...)
</p>
<div class='vspace'></div><h3>How do I get git access?</h3>
<p>Under normal circumstances, you will be given git access when you have demonstrated an understanding of the code by submitting some good patches to the developers' mailing list.
</p>
</div>

    </td>
  </tr></table>
  <!--PageFooterFmt-->
 <table id='wikifoot' cellspacing='0' cellpadding='0' align='center'>
 <tr><td class='passwordlink' colspan='2'>If you would like to help improve this site, please <a class='wikilink' href='../Main/ContactUs.html'>Contact Us</a> and we will give you the password to edit pages.</td></tr>
 <tr>
  <td class='lastmod'>Page last modified on May 23, 2010, at 05:27 PM &nbsp; &nbsp;<a class='pmwikiinfolink' href="../Main/PmWikiInfo.html">PmWiki Info</a></td>
  <td class='footnav'><div  style='text-align: right;' > 
<p> -
 -
 -

() -

</p></div>
</td>
 </tr>
 </table>
<!--/PageFooterFmt-->
</body>
</html>