← Back to team overview

kicad-developers team mailing list archive

Re: KiCAD 5.99/6 Python API status & time schedule


Hi Folks-

Sorry for the slow response on this message.  The Python work is slower
than we had hoped for a few reasons.  Only partially pandemic related.

1) We need to move to Python3.  This is no longer optional because we use
an interface to wxWidgets that has moved to Python3.  While our scripts
have been generally compatible with Python2 and Python3, this is not as
straight-forward when packaging.  Our build systems have grown up around
Python2, so there is quite a bit that is baked into the systems.
Unfortunately, our Windows build system (msys2) was not packaging the new
requirements and wxPython (our python interface to the GUI) was only
building for MSVC.

We have now moved our nightly builds to MSVC to support this.

MacOS is taking a bit longer.  There are additional requirements on MacOS
due to the security restrictions that make it difficult to package KiCad in
the manner we have before.  When the security restrictions place the
application in quarantine, we cannot access the python application to run
our scripts.  There are solutions to this and we are working through them

2) We try not to break nightly builds.  This means that some actions need
to be sequential.  Get the nightly builds running with Python 3 first, then
move the python interface.

The upshot is that we are almost there.  Once we get the signed MacOS
nightly builds out (this week?), we can move the Python interface over to
v3 and start finding bugs in the new API.

The reason we are not accepting bug reports on the old API is that this
needs to move and re-basing gets progressively more difficult the more
changes we introduce to the legacy API.  We have merged some changes where
these did not impact our work.


On Sat, Apr 10, 2021 at 10:39 PM José Ignacio <jose.cyborg@xxxxxxxxx> wrote:

> I am an avid user of Jan's tools (KiKit mostly) and it has become
> increasingly difficult to keep them working with current v6 code as api
> calls keep getting removed or moved around. I know that having an open
> development process for the new API can be counter productive (bikeshedding
> and all) but if there is not a defined deadline for this to land on in this
> feature freeze, would the developers consider accepting bug reports and
> merge requests against api regressions from 5.1 as bugs in the interim?
> On Thu, Apr 1, 2021 at 4:15 AM Jan Mrázek <email@xxxxxxxxxxxxxx> wrote:
>> Hello,
>> I develop and maintain several KiCAD plugins. Many of my users started
>> switching/would like to KiCAD 5.99 as it brings many exciting features.
>> Therefore, I get frequently a question when KiCAD v5.99 will be
>> supported. However, as there were some breaking changes and some parts
>> of the API are gone and their substitutes are missing, I cannot support
>> nightly (e.g., [1]). I remember there were some promises on the API for
>> 5.99/6 during summer-autumn 2020 that it could be ready around end of
>> January 2021. However, as I checked the source code, there are no news
>> regarding the API. I also did not found any draft on the proposed
>> feature of the API.
>> Therefore, I would like to ask you:
>> - is there any proposal of the new API for pcbnew and eeschema we could
>> check out? I am interested to see it, possibly start adapting my plugins
>> to it and e.g., give you feedback on missing functionality/hard to use
>> parts before it gets freeze (basically my concerns from [2])
>> - is there any work-in-progress we can test? If not, is there a known
>> time estimate when KiCAD can reach first testable version of the Python
>> API?
>> - I know that maintaining large open-source project is hard and time
>> consuming, so I would like to ask if there is anything I could do to
>> help your regarding the API? I have already contributed to KiCAD and I
>> think am a skillful C++ programmer, so if there are some isolated tasks
>> that you can delegate, I am willing to contribute!
>> PS: As I am not a native speaker, so I am not sure if I set the tone of
>> the e-mail right. To clarify; I am writing in a curious and caring
>> matter. I do not blame you guys for not having the API yet. I value your
>> work and appreciate it a lot!
>> Jan
>> [1] https://gitlab.com/kicad/code/kicad/-/issues/6885
>> [2] https://gitlab.com/kicad/code/kicad/-/issues/7134
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp

[image: KiCad Services Corporation Logo]
Seth Hillbrand
*Lead Developer*
Long Beach, CA
www.kipro-pcb.com    info@xxxxxxxxxxxxx