Pcbnew API compatibility v4 and v5


I have python script I developed way back in 2017 in Kicad 4.x version to create pdf from pcb layout. Now that version 5 is out and seems to be stable, I want to upgrade my v4. What I dont want is to spend days reworking my script to find out that some feature from API is not supported anymore…
Is there any document where I can check exposed API functions and parameters to see whether there are many changes and if my code will work on v5?

I ran my script on newly exported .pcb file (v5) and it failed on getting edge coordinates, which is basically first call I do :slight_smile: I did expect difference in file format, but then I am wondering how many there are…

To the best of my knowledge there isn’t one. Currently python API is just a wrapper around pcbnew internal data structures. They organically evolve and API changes with them, sometimes in incompatible ways. Nobody keeps track of such things because python API compatibility is not a priority to devs.

That said, there weren’t a lot of breaking changes between v4 and v5, I’ve managed to keep my scripts compatible with both versions with just a few hacks.

This is the reason, I haven’t able to fully move to 5.x version. All my script need to be redo, with days of work time again! So, I’m as well watching and searching for easier path :slight_smile: . Specially the testing part is take a most of time. I did not have enough luxury to create test cases at the same time need to have my project going for meeting the schedule!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.