Ok I understand, but Is it mean that we have to disable python scripting in all build by default ?
On daily build I manage, its activated by default... On my side I will modify all plugin I use if the API change. They are based on a dev branch so I accept that. An other point is that master branch is a *dev* branch ? So modification on file format, API... can happen. Regards, Le 10/01/2017 à 16:54, Chris Pavlina a écrit : > What do you do when the internal APIs change and the plugins stop > working? > > I think encouraging people to use this is very dangerous. It is tied so > much into our internal APIs at the moment. The more people who use it, > the more everybody is going to scream every single time we change > anything. We have so much poorly structured code that needs to be > rewritten - I'm sure a lot of it *will* be when it comes time to remove > the legacy canvas. If we end up with this many users of the scripting > API, we will never be able to touch anything again without breaking > everything. > > Wayne, JP: I'm making an appeal to you now to be conservative with > what you accept for use with the scripting API. This would be a very bad > point to lock ourselves into having to stabilize it as is. I do not > think we should be doing this until an interposing layer with a > formalized, stable API can be created. > > On Tue, Jan 10, 2017 at 04:25:10PM +0100, Jean-Samuel Reynaud wrote: >> Hi, >> >> Just from my point of view: >> We use some python plugin currently and it's not really easy to open >> each time python console (and remember plugins name, call mode...). >> >> I'm agree with you: During devs of scripts it's crashing and my devs >> have to find the rigth way to process. >> >> But this kind of feature can increase number of users/devs of this kind >> of scripts and raise crash case easily. >> >> Regards, >> Le 10/01/2017 à 16:00, Chris Pavlina a écrit : >>> Frankly I don't think we should be encouraging users to use the Python >>> API until it is significantly improved. The issues JP raises make the >>> API completely unsuitable for plugin use. It's opaque and no users have >>> any idea how to write robust Python plugins given the current state of >>> the API. >>> >>> On Jan 10, 2017 09:55, "jp charras" <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> Le 10/01/2017 à 15:18, Maciej Sumiński a écrit : >>> > Hi Jean-Samuel, >>> > >>> > I think your patch will facilitate use of 3rd party python plugins, as >>> > the current way of executing commands from the Python shell is not >>> quite >>> > user friendly. I vote for merging the patch, but we need to fix some >>> > code formatting issues first. >>> > >>> > Also, I wonder if it would be the right thing to group menu entries by >>> > their categories to create submenus. It could be a simple way to >>> > organize the actions provided by python plugins. Just an idea. >>> > >>> > Another question is about the following lines: >>> > + if( IsGalCanvasActive() ) >>> > + { >>> > + UseGalCanvas( GetGalCanvas() ); >>> > + } >>> > >>> > What is exactly the goal here? If it is only about refreshing the >>> > canvas, then a simple Refresh() call should fix the problem. >>> > >>> > Regards, >>> > Orson >>> > >>> >>> This is a good work. >>> Thanks Jean-Samuel. >>> >>> However, before merging we have to take care of issues which can >>> easily crash Pcbnew: >>> Because a python script can modify the board outside the control of >>> pcbnew edit functions, I am >>> thinking problems will arise with undo/redo lists (invalid >>> pointers), ratsnest data and certainly a >>> few other things. >>> >>> Especially for scripts which add or delete items, or change >>> connectivity. >>> >>> Of course, undo/redo lists are alway incorrect after running such >>> scripts. >>> This is already a known issue for scripts that are run from the >>> Pcbnew python console. >>> >>> -- >>> Jean-Pierre CHARRAS >>> >>> _______________________________________________ >>> Mailing list: https://launchpad.net/~kicad-developers >>> <https://launchpad.net/~kicad-developers> >>> Post to : [email protected] >>> <mailto:[email protected]> >>> Unsubscribe : https://launchpad.net/~kicad-developers >>> <https://launchpad.net/~kicad-developers> >>> More help : https://help.launchpad.net/ListHelp >>> <https://help.launchpad.net/ListHelp> >>> >>> >>> >>> >>> _______________________________________________ >>> Mailing list: https://launchpad.net/~kicad-developers >>> Post to : [email protected] >>> Unsubscribe : https://launchpad.net/~kicad-developers >>> More help : https://help.launchpad.net/ListHelp >>> >> >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~kicad-developers >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~kicad-developers >> More help : https://help.launchpad.net/ListHelp _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

