<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">Le jeu. 30 mars 2017 à 16:56, Tim Sutton <<a href="mailto:tim@kartoza.com">tim@kartoza.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class="gmail_msg">Hi<div class="gmail_msg"><br class="gmail_msg"><div class="gmail_msg"></div></div></div><div style="word-wrap:break-word" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><blockquote type="cite" class="gmail_msg"><div class="gmail_msg">On 30 Mar 2017, at 3:18 PM, Denis Rouzaud <<a href="mailto:denis.rouzaud@gmail.com" class="gmail_msg" target="_blank">denis.rouzaud@gmail.com</a>> wrote:</div><br class="m_-7903493363487032234Apple-interchange-newline gmail_msg"><div class="gmail_msg"><div dir="ltr" class="gmail_msg">Dear all,<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">I'd like to raise the attention on a new workflow I just merged to automatically generate SIP files using the header as source only.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">A PR is pending for the documentation, but you can read it here</div><div class="gmail_msg"><a href="https://github.com/3nids/QGIS-Documentation/blob/6e3a9fb6f98a2869aef27c01b7ab70eb0a4c7556/source/docs/developers_guide/codingstandards.rst#sip-bindings" class="gmail_msg" target="_blank">https://github.com/3nids/QGIS-Documentation/blob/6e3a9fb6f98a2869aef27c01b7ab70eb0a4c7556/source/docs/developers_guide/codingstandards.rst#sip-bindings</a><br class="gmail_msg"></div><div class="gmail_msg">(waiting to be merged).</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">For the moment, only 3 files are generated (qgsattributes, qgsfeature and qgsvectorlayer). One can starts adding new files to the process by adapting their header and removing them from python/auto_sip.blacklist.</div></div></div></blockquote><div class="gmail_msg"><br class="gmail_msg"></div></div></div></div><div style="word-wrap:break-word" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg">This is really great! A couple of questions:</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">1) the blacklist implies that any new .h files added to the source tree will automatically have sip bindings generated unless you explicitly blacklist them?</div></div></div></div></blockquote><div><br></div><div>As soon as you add the include in python/core/core.sip (or gui, analysis), the SIP is considered as automatically generated from header except if you blacklist it.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg">2) are you thinking to maintain the sip files in Git still or remove the from revision in favour of having them as build time artifacts only? I ask this because I often direct people to use the sip files as a reference guide for the python API if they want to dig under the hood a bit more.</div></div></div></div></blockquote><div><br></div><div>The goal is to remove the SIP files and have them created on build time.</div><div>But:</div><div>1) I except a few errors in the script to arise (so better to have an easy access to the SIP files)</div><div>2) it needs to reach a significant point of ported headers.</div><div> </div><div>So, in a somehow close or far future, yes they'll be removed from source (hence no blacklist anymore only manual files such as core/conversions.sip).</div></div></div>