If a coder – someone new, not from the current KiCad developer pool – with superpowers would suddenly be available and would volunteer to implement 3 new major features for KiCad within a year, what would those 3 features be?
I can see how the question didn’t communicate what I wanted. Like in hypothetical “what would you take to a desert island” situation. A multimillionaire superhero coder.
“…if you could decide, what would those 3 features be?”
What @eelik is trying to ask the Development Team is:
If a new, smart, coder volunteered their services to Kicad to create and incorporate perfectly (no bugs to chase up whatsoever), three new features, that required absolutely no input or effort from the existing development team, what features would the current development team choose?
I understand the premise of the question but I think the honest answer is “we wouldn’t do that, no matter how good the developer”. We want to establish good working relationships with new developers before giving them the go-ahead to work on major features, and that requires input and effort over the course of time. Unfortunately it is almost universally a bad idea to have someone develop some major feature without good input/collaboration with the rest of the team, and it has nothing to do with the person’s technical skills. This is because generally new features do not operate in a vacuum, they have to be developed with other concurrent development plans in mind, and also they need to be maintained and extended after they are initially added, which means at least part of the rest of the team needs to have a good understanding of the rationale behind why they were developed the way they were in the first place.
With Version 8 we have done a number of “not so visible” improvements, refactorings, etc to the schematic editor that make it possible to give it an API in the future. For example, the new properties panel in the schematic editor is only possible because of a lot of this foundational work, which is why it was not possible to have the properties panel in the schematic editor in V7. The API itself is moving along but slowly because time has been spent on this groundwork instead.
There is no planned release date for a new API at this time. We do not announce such plans anymore until we have some decent level of confidence in them, as we do not want to create expectations that then are missed.
I seem to recall that 3 to 5 years ago, someone came out of the blue with a big merge request for some kind of new feature and the merge request was rejected because of exactly this. He was asked to put it on ice for a while and get to know the people (and philosophy) behind the KiCad project first. I am not sure if he was ever heard of or seen after that, but I did not attempt to keep track of it either.
But I guess it would be nice if KiCad had an autorouter (and auto placement) that actually worked.
Feature request: In the PCB editor, allow rubber banding of traces when dragging highlighted groups of components in same way that it can be done for a single component