Since Eagle does not connect stacked NC pins but KiCad will if the pins
are coincident, we choose to only import the first of the stacked NC
pins. While this creates symbols that are slightly different in pin
count from the Eagle version, it keeps the schematic and netlist
functionally correct relative to the Eagle version.
Fixes: lp:1821319
* https://bugs.launchpad.net/kicad/+bug/1821319
For POTRACE, black is the foreground and white is the background. We
should keep the convention by requiring the pixin to be less than the
black threshhold as well as the alpha to be at least the alpha
threshhold.
Fixes: lp:1821563
* https://bugs.launchpad.net/kicad/+bug/1821563
Mouse capture end is called by some actions such as save board. This
resets the cursor image but doesn't change the current tool. Resetting
the cursor image during action prevents this.
This standardizes the import vector graphics file dialog to use the
sbSizer titles instead of bold+lines. Tooltip changes will be in the
next change as we don't change strings for bugfix releases and this
commit is targeted for 5.1.3
Fixes: lp:1823462
* https://bugs.launchpad.net/kicad/+bug/1823462
(cherry picked from commit f7550940ee)
We prevent the creation of invalid polygons by keeping the converging
lines from intersecting. This test doesn't make sense for triangular
polygons as they always intersect and we want to allow them to move
outside of the singular point.
Fixes: lp:1831481
* https://bugs.launchpad.net/kicad/+bug/1831481
Building custom targets that depend on custom commands such as our
keyword lexer requires two layers of indirection to pick up changes
properly and not overwrite the same file in parallel builds.
Fixes: lp:1831643
* https://bugs.launchpad.net/kicad/+bug/1831643
(cherry picked from commit c6af38477d)
Grid and ratsnest visibility are stored in the board file and should not
be changed without the user explicitly modifying them.
In the future, we'll move these settings out of the board file but we
shouldn't cause extra file-churn for flipped bits.
Fixes: lp:1828285
* https://bugs.launchpad.net/kicad/+bug/1828285
(cherry picked from commit e7e20b85b5)
The mouse capture has a cleanup associated that we call to cancel the
action. This prevents issues when trying to copy between hierarchical
sheets.
Fixes: lp:1819278
* https://bugs.launchpad.net/kicad/+bug/1819278
Update the reload function call to be python3 compatible along with
simplifying the load function to unify the loading of simple and
complex plugins.
Fixes: lp:1828595
* https://bugs.launchpad.net/kicad/+bug/1828595
(cherry picked from commit 59b729c731)
Refresh the currently edit sheet screen symbol links when the sheet file
name is changed.
This fix was better than the previous fix as it was the same diff between
the master and 5.1 branches.
https://bugs.launchpad.net/kicad/+bug/1830315
Fixes lp:1830315
(cherry picked from commit 89ada624d3d3b28ad5ee1477b353501d46dae3a2)
This fixes multiple issues when importing Eagle V6 files.
Crashes occured when arcs of 0-length were found and when parts were
referenced in the schematic that were not found in the library. This
could happen if the library and schematic were different cases.
Fixes: lp:1830564
* https://bugs.launchpad.net/kicad/+bug/1830564
(cherry picked from commit 0e5cc54ec9)
Always check the return value of PyRun_SimpleString() for errors when a
Python script is run and show an error message rather than fail silently.
Enable Python interpreter I/O redirection in debug builds so that script
string errors will be shown when PyRun_SimpleString() is called.
Do not call PyErr_Print() after a PyRun_SimpleString() call failure. It
doesn't do anything useful.
Do not call Py_Finalize() after a PyRun_SimpleString() call failure. It
seems to cause Pcbnew to crash.
(cherry picked from commit 816f6db310)
The aliases are easier than calling check_coding.sh manually,
and we already provide an alias file for the fixes alias, so
do the same for these.
(cherry picked from commit 241127788e)
This only applies to the root symbol when the datasheet field is not
empty and the datasheet for root symbol alias in the document file is
empty. Use the root symbol datasheet field value when adding a new
symbol that meets this criteria.
The root symbol datasheet field gets copied to the root symbol alias
datasheet member variable so if the symbol is modified and saved, the
datasheet information is saved in the .dcm file.
https://bugs.launchpad.net/kicad/+bug/1830078
Fixes lp:1830078
(cherry picked from commit c52ff1ca23)
This only applies to the root symbol when the datasheet field is not
empty and the datasheet for root symbol alias in the document file is
empty. Use the root symbol datasheet field value when adding a new
symbol that meets this criteria.
https://bugs.launchpad.net/kicad/+bug/1830083
Fixes lp:1830083
(cherry picked from commit 300f5cb082)