<!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ärz 2011,
Ralf Habacker wrote:</p>
<p style="margin: 0px; text-indent: 0px;">> SVN commit 1223691
by habacker:</p>
<p style="margin: 0px; text-indent: 0px;">> </p>
<p style="margin: 0px; text-indent: 0px;">> - define noop
methods</p>
<p style="margin: 0px; text-indent: 0px;">> +</p>
<p style="margin: 0px; text-indent: 0px;">> + def
configure(self):</p>
<p style="margin: 0px; text-indent: 0px;">> + return True</p>
<p style="margin: 0px; text-indent: 0px;">> +</p>
<p style="margin: 0px; text-indent: 0px;">> + def make(self):</p>
<p style="margin: 0px; text-indent: 0px;">> + return True</p>
<p style="margin: 0px; text-indent: 0px;">> +</p>
<p style="margin: 0px; text-indent: 0px;">> + def
install(self):</p>
<p style="margin: 0px; text-indent: 0px;">> + 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. The QMakeBuildSystem is already solved and
the other will follow :-) <br>
<br>
Ralf <br>
<br>
</body>
</html>