<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
    <title></title>
  </head>
  <body text="#000000" bgcolor="#ffffff">
    Am 09.03.2011 13:04, schrieb Wolfgang Rohdewald:
    <blockquote cite="mid:201103091304.42235.wolfgang@rohdewald.de"
      type="cite">
      <meta name="qrichtext" content="1">
      <style type="text/css">
p, li { white-space: pre-wrap; }
</style>
      <p style="margin: 0px; text-indent: 0px;">On Freitag 04 M&auml;rz 2011,
        Ralf Habacker wrote:</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; SVN commit 1223691
        by habacker:</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; </p>
      <p style="margin: 0px; text-indent: 0px;">&gt; - define noop
        methods</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; +</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; + def
        configure(self):</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; + return True</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; +</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; + def make(self):</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; + return True</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; +</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; + def
        install(self):</p>
      <p style="margin: 0px; text-indent: 0px;">&gt; + return True</p>
      <p style="margin: 0px; text-indent: 0px;"><br>
      </p>
      <p style="margin: 0px; text-indent: 0px;">those were defined as
        abstract before I removed them</p>
      <p style="margin: 0px; text-indent: 0px;">with commit r1221902 -
        so if they ever were called,</p>
      <p style="margin: 0px; text-indent: 0px;">emerge would die. IOW
        they are never called.</p>
      <p style="margin: 0px; text-indent: 0px;"><br>
      </p>
      <p style="margin: 0px; text-indent: 0px;">Why are those methods
        needed?</p>
      <p style="margin: 0px; text-indent: 0px;">r1221902 | wrohdewald |
        2011-02-21 01:13:29 +0100 (Mo, 21. Feb 2011) | 11 Zeilen</p>
      <p style="margin: 0px; text-indent: 0px;"><br>
      </p>
      <p style="margin: 0px; text-indent: 0px;">BuildSystemBase: remove
        abstract methods</p>
      <p style="margin: 0px; text-indent: 0px;"><br>
      </p>
      <p style="margin: 0px; text-indent: 0px;">those methods like
        configure() are redefined in derived</p>
      <p style="margin: 0px; text-indent: 0px;">classes with conflicting
        signatures like configure()</p>
      <p style="margin: 0px; text-indent: 0px;">in BinaryBuildSystem and
        QMakeBuildSystem(). This makes</p>
      <p style="margin: 0px; text-indent: 0px;">it pointless to define a
        common ancestor.</p>
      <p style="margin: 0px; text-indent: 0px;"><br>
      </p>
      <p style="margin: 0px; text-indent: 0px;">By removing those
        methods, emerge (not pylint as the</p>
      <p style="margin: 0px; text-indent: 0px;">commit says) will still
        raise an exception if a derived</p>
      <p style="margin: 0px; text-indent: 0px;">class does not implement
        them, and pylint is happier.</p>
    </blockquote>
    I'm cleaning this up.&nbsp; The QMakeBuildSystem is already solved and
    the other will follow :-) <br>
    <br>
    Ralf <br>
    <br>
  </body>
</html>