[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:       Stephen Kelly <steveire () gmail ! com>
Date:       2017-01-05 22:50:14
Message-ID: 586ecda7.86cbc20a.960e5.5bde () mx ! google ! com
[Download RAW message or body]

Shaheed Haque wrote:

>> > 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.
>>
>> Sure, if you post it, we can think about how to do it. I only pushed the
>> kguiaddons bindings today. I am curious because the patch was very small
>> and
>> I wonder what could possibly need to be done in concert.
>>
> 
> I misspoke, it wasn't in kguiadddons, but basically the ModuleCodeDb dict
> was documented as being keyed by the filename, but I implemented it
> wrongly, and you used a key as per the implementation, not the docs :-).
> We can deal with the conflict, by temporarily duplicating the dict entry,
> ahead of the core logic changing, and then removing the original, but it
> all just needs to be done in order, perhaps with a couple of days between
> each change to avoid tripping folk up.

For simplicity, I didn't even add the ModuleCodeDb to the KDE repos yet. If 
you see that, you are probably looking at my github. My github repos are 
obsolete - they contain only a proof-of-concept. The real thing is in the 
KDE repos.

It is my intention to add that and other databases which are currently 
'missing', when

 * We have some tests for them in the ECM repo
 * We want to add bindings to a framework (in a KDE repo) which requires 
them

I'm looking through the branches/commits in your github repo to see what can 
be applied easily now. It looks like your KDE_fix_parameter_initialisation 
fixes kguiaddons for you, however, I can build kguiaddons with no problem 
without that patch. Can you double-check, and add a unit test in ECM if you 
can confirm this needs to be done?

I also saw that you have a change to how the rules engine is populated 
(add_rules method). Could you make a commit for that based on master, and 
port the ECM test to use it?

> My *main* regression tests therefore include carefully diff'ing the 2280
> files from run to run, gradually picking off errors as I can to get to the
> point of a clean SIP compiler run across the 133 components in turn. (BTW,
> that is also the reason for the continued existence of
> sip_buik_generator.py and sip_compiler.py as necessary tooling to support
> this development and testing). It was this test process that found this
> bug when an assert was triggered.

Sounds like an interesting system.

> Now, if I could easily see what in the source code of the enum causes
> libclang to emit an attribute, I would have considered writing the test,
> but based on the ROI of the effort involved in doing what you suggest
> (which is, I agree, theoretically the right thing to do) just did not meet
> the bar of a simple-to-develop test, given the scope of what else I need
> to get done. That is, not firing on the assert seemed, and frankly seems,
> good enough to me in this case.

I guess we got this item sorted out already now anyway. Often, once the fix 
exists, the test is obvious and quick to write.

> Excellent. Having had a quick look at the code in the KDE repos, I see
> that there are quite some changes, notably to rules_engine.py which
> removes some of the test facilities I need to revive the
> sip_builk_generator.py test workflow. I'll see if I can package those
> changes with collateral that will ease any concerns with the testing that
> is being done.

I'd like to keep the bulk generator out of the KDE repo for now, as it won't 
be needed to build frameworks repos.

Thanks,

Steve.
[prev in list] [next in list] [prev in thread] [next in thread] 

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