<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://git.reviewboard.kde.org/r/109684/">http://git.reviewboard.kde.org/r/109684/</a>
     </td>
    </tr>
   </table>
   <br />





 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The issue is much deeper than this specific piece of code. In fact, fixing this part will not make the code Py3 compatible. The real problematic code is in PyKDE4, to be precise the kpythonpluginfactory (kpythonpluginfactory/ directory in PyKDE4) which is at the moment Py2 only. If that can be adjusted (I have no idea if it can, since I'm amateur at best at C++) then we can think about making plasma and such Py3 compatible.</pre>
 <br />









<p>- Luca</p>


<br />
<p>On March 23rd, 2013, 11:12 p.m. UTC, Michael Jansen wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Plasma and Luca Beltrame.</div>
<div>By Michael Jansen.</div>


<p style="color: grey;"><i>Updated March 23, 2013, 11:12 p.m.</i></p>






<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Make code python3 compatible.

>From the python 2.7 docs:

  The form exec(expr, globals) is equivalent to exec expr in globals, while
  the form exec(expr, globals, locals) is equivalent to exec expr in globals,
  locals. The tuple form of exec provides compatibility with Python 3, where
  exec is a function rather than a statement


But this only work with python 2.7. Version up to 2.6 do not have this behavior so i fully expect this review request to be rejected. But i wanted to open the discussion because its not easy to fix.

The syntax needed for version <= 2.6  is incompatible with versions >3.0 and no amount of code wizardry will help us here. We either require python 2.7 or have to duplicate, configure or whatever this script to match the python version used on build time. Or perhaps refactor the code to use eval?

Which way to go?</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Not much yet. Works with 3.0 but i have no clue what that code does or how to test it.</pre>
  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>plasma/generic/scriptengines/python/plasma_importer.py <span style="color: grey">(dae245aea1ea1d17c907ba9c12c7d06cc9e59b77)</span></li>

</ul>

<p><a href="http://git.reviewboard.kde.org/r/109684/diff/" style="margin-left: 3em;">View Diff</a></p>







  </td>
 </tr>
</table>








  </div>
 </body>
</html>