[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-windows
Subject: Re: kdesupport/emerge/bin/BuildSystem
From: Ralf Habacker <ralf.habacker () freenet ! de>
Date: 2011-03-23 23:29:36
Message-ID: 4D8A8260.7080209 () freenet ! de
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
Am 09.03.2011 13:04, schrieb Wolfgang Rohdewald:
>
> On Freitag 04 März 2011, Ralf Habacker wrote:
>
> > SVN commit 1223691 by habacker:
>
> >
>
> > - define noop methods
>
> > +
>
> > + def configure(self):
>
> > + return True
>
> > +
>
> > + def make(self):
>
> > + return True
>
> > +
>
> > + def install(self):
>
> > + return True
>
>
> those were defined as abstract before I removed them
>
> with commit r1221902 - so if they ever were called,
>
> emerge would die. IOW they are never called.
>
>
> Why are those methods needed?
>
> r1221902 | wrohdewald | 2011-02-21 01:13:29 +0100 (Mo, 21. Feb 2011) |
> 11 Zeilen
>
>
> BuildSystemBase: remove abstract methods
>
>
> those methods like configure() are redefined in derived
>
> classes with conflicting signatures like configure()
>
> in BinaryBuildSystem and QMakeBuildSystem(). This makes
>
> it pointless to define a common ancestor.
>
>
> By removing those methods, emerge (not pylint as the
>
> commit says) will still raise an exception if a derived
>
> class does not implement them, and pylint is happier.
>
I'm cleaning this up. The QMakeBuildSystem is already solved and the
other will follow :-)
Ralf
[Attachment #5 (text/html)]
<!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>
_______________________________________________
Kde-windows mailing list
Kde-windows@kde.org
https://mail.kde.org/mailman/listinfo/kde-windows
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic