[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bindings
Subject:    Re: End of 2016 update on PyKF5 bindings
From:       Shaheed Haque <srhaque () theiet ! org>
Date:       2017-01-02 19:55:59
Message-ID: CAHAc2jeJE4J-7zTL9wzvUdR4E7_WVQ5PtCUJ+XKvHdcw2CMP0A () mail ! gmail ! com
[Download RAW message or body]

Hi Steve,

On 2 January 2017 at 13:17, Stephen Kelly <steveire@gmail.com> wrote:

> Shaheed Haque wrote:
>
> > Hi Steve and others,
> >
> > Using a bit of free time, over on github
> > (https://github.com/ShaheedHaque), I've cued up a few pull requests
>
> Hi Shaheed,
>
> It looks like you made pull requests to merge to my github clone. That is
> obsolete. The work is going on in the kde extra-cmake-modules repo, and
> other frameworks repos.
>

I looked at the KDE repos before I started work, and somehow missed that
point. Having just rechecked I see that I'll have to rebase as you suggest.


> Can you extract self-contained commits and propose them for that repo?
>

What is the review procedure for extra-cmake-modules? There is also one
change which needs to be made in a synchronised fashion between
extra-cmake-modules and kguiaddons, any suggestions on how to handle that
are welcome. (All the other changes I have been working on are coded with
compatibility logic as needed to avoid this kind of tight synchronisation).


> You seem to have changed some things in your clone such as using
>
>  enum.kind == CursorKind.ENUM_CONSTANT_DECL
>
> Please extend the unit test in tests/GenerateSipBindings for that and other
> similar items.
>

I'm always looking for opportunities to add them but in most cases, the
fixes modify the text output for a given source in another framework
component. It is not obvious how to create a simple self-contained test
case. For example, in the case you noticed, the point of the change only
becomes apparent when libclang decides to work in a particular way...and I
have no idea how in general to provoke those cases. I only found this
particular regression when diffing generated output by my original code and
your updated code!

My focus beyond the PRs I posted has been to make the system easier to use
and diagnose, especially for your workflow. Since I'm not doing anything
much functionally there is not much to test there either, other than to run
the stuff you've done and ensure that I don't break your per-framework unit
tests. I've been keeping myself honest by also running the unit tests in
ecm while also running the sip_bulk_generators across the entirety my
/usr/include/KF5 and diffing the results. Hopefully you'll see those
changes in due course.


> > If we can get the PRs merged, and work out item 4 above,
> > what else might be needed to getting this into production?
>
> There are still packaging related issues, but I don't know how to solve
> them
> and I would look to others to provide guidance there.
>

Likewise, assuming the rebase does not fix it, I'm sure I'll need help with
item 4.


> Other than that, I have just pushed binding generation code and unit tests
> for KGuiAddons. The way forward is to push bindings for other frameworks,
> and to extend the binding generator in extra-cmake-modules with features,
> fixes and unit tests as needed. I'll continue with that when I have time
> too.
>

Ack. I am looking to track and support your efforts.


> Thanks,
>
> Steve.
>

[Attachment #3 (text/html)]

<div dir="ltr">Hi Steve,<br><div><br>On 2 January 2017 at 13:17, Stephen Kelly <span \
dir="ltr">&lt;<a href="mailto:steveire@gmail.com" \
target="_blank">steveire@gmail.com</a>&gt;</span> wrote:<br><div \
class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"><span class="gmail-">Shaheed Haque wrote:<br> <br>
&gt; Hi Steve and others,<br>
&gt;<br>
&gt; Using a bit of free time, over on github<br>
&gt; (<a href="https://github.com/ShaheedHaque" rel="noreferrer" \
target="_blank">https://github.com/<wbr>ShaheedHaque</a>), I&#39;ve cued up a few \
pull requests<br> <br>
</span>Hi Shaheed,<br>
<br>
It looks like you made pull requests to merge to my github clone. That is<br>
obsolete. The work is going on in the kde extra-cmake-modules repo, and<br>
other frameworks repos.<br></blockquote><div><br><div>I looked at the KDE repos \
before I started work, and somehow missed that point. Having just rechecked I see \
that I&#39;ll have to rebase as you suggest.<br>  <br></div></div><blockquote \
class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> Can you extract self-contained commits and \
propose them for that repo?<br></blockquote><div><br>What is the review procedure for \
extra-cmake-modules? There is also one change which needs to be made in a \
synchronised fashion between extra-cmake-modules and kguiaddons, any suggestions on \
how to handle that are welcome. (All the other changes I have been working on are \
coded with compatibility logic as needed to avoid this kind of tight \
synchronisation).<br></div><div>  </div><blockquote class="gmail_quote" \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> You seem to have changed some things in your \
clone such as using<br> <br>
  enum.kind == CursorKind.ENUM_CONSTANT_DECL<br>
<br>
Please extend the unit test in tests/GenerateSipBindings for that and other<br>
similar items.<span class="gmail-"><br></span></blockquote><div><br>I&#39;m always \
looking for opportunities to add them but in most  cases, the fixes modify the text \
output for  a given source in another framework component. It is not obvious how to \
create a  simple self-contained test case. For example, in the case you noticed, the \
point of the change only becomes apparent when libclang decides to work in a \
particular way...and I have no idea how in general to provoke those cases. I only \
found this particular regression when diffing generated output by my original code \
and your updated code!<br><br></div><div>My focus beyond the PRs I posted has been to \
make the system easier to use and diagnose, especially for your workflow. Since \
I&#39;m not doing anything much functionally there is not much to test there either, \
other than to run the stuff you&#39;ve done and ensure that I don&#39;t break your \
per-framework unit tests. I&#39;ve been keeping myself honest by also running the \
unit tests in ecm while also running the sip_bulk_generators across the entirety my \
/usr/include/KF5 and diffing the results. Hopefully you&#39;ll see those changes in \
due course.<br></div><div>  <br></div><blockquote class="gmail_quote" \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"><span class="gmail-"> &gt; If we can get the PRs \
merged, and work out item 4 above,<br> &gt; what else might be needed to getting this \
into production?<br> <br>
</span>There are still packaging related issues, but I don&#39;t know how to \
solve<br> them<br>
and I would look to others to provide guidance \
there.<br></blockquote><div><br></div><div>Likewise, assuming the rebase does not fix \
it, I&#39;m sure I&#39;ll need help with item 4.<br></div><div>  </div><blockquote \
class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> Other than that, I have just pushed binding \
generation code and unit tests<br> for KGuiAddons. The way forward is to push \
bindings for other frameworks,<br> and to extend the binding generator in \
extra-cmake-modules with features,<br> fixes and unit tests as needed. I&#39;ll \
continue with that when I have time<br> too.<br></blockquote><div><br></div><div>Ack. \
I am looking to track and support your efforts.<br></div><div>  </div><blockquote \
class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> Thanks,<br>
<br>
Steve.<br>
</blockquote></div><br></div></div></div>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic