John Beard
acd103631b
QA: PCB file input parse test program (fuzzable)
...
This adds a test program which can be used to test the
parsing of a given KiCad PCB file. This interface is
useful for both manual or automated debugging of given
files, as well as providing an interface suitable for
fuzz-testing tools.
Also adds to the testing docs to detail how fuzzing can
be used.
Also moves some useful re-usable code from io-benchmark
to a new library qa_utils, which can contain code that
isn't need in the actual KiCad libs.
2018-10-22 12:32:24 -04:00
Wayne Stambaugh
2a170c9847
Update license to AGPL due to TTL license.
...
The decision to include the TTL library make KiCad a derivative work
under the terms of the AGPL version 3 or later license.
Add both the GPL3 and AGPL3 license text files and add a readme file
about the KiCad licensing. Contributing to KiCad still falls under
the GPL3+ license.
Fixes lp:1797095
https://bugs.launchpad.net/kicad/+bug/1797095
2018-10-22 12:28:48 -04:00
Maciej Suminski
f1b2855e80
Fix ENV_VAR_NAME_VALIDATOR typing characters backwards
...
Fixes: lp:1798869
* https://bugs.launchpad.net/kicad/+bug/1798869
2018-10-22 15:07:44 +02:00
jean-pierre charras
7bba7a884a
Libedit: refresh display after creating/moving a graphic item
2018-10-22 13:41:38 +02:00
Seth Hillbrand
44d416cafc
Move cursor in increments off grid
...
When the cursor starts off grid, we avoid snapping to the nearest grid
point to prevent movement in an unintended direction.
2018-10-21 14:28:33 -07:00
Seth Hillbrand
3cc87b4597
PNS: Ensure we don't miss items
...
Higher candidate levels could override better matches if the layers did
not overlap.
2018-10-21 14:28:33 -07:00
jean-pierre charras
f183b4f526
GAL, Opengl: Draw Arc: fix draw layer depth (previously, set to 0.0, which is not always the case)
2018-10-21 19:53:36 +02:00
jean-pierre charras
0f247264f8
Pcbnew: DRC ignores first net of list of nets to test.
...
Fixes: lp:1798985
https://bugs.launchpad.net/kicad/+bug/1798985
2018-10-21 17:01:58 +02:00
Jeff Young
f17c18bcce
Remove AdvanceDepth() hacks in favour of proper layers.
...
Also removes the bounding-box cache since the last big merge
should have sorted out the Update(GEOMETRY) calls.
Fixes: lp:1797271
* https://bugs.launchpad.net/kicad/+bug/1797271
Fixes: lp:1797268
* https://bugs.launchpad.net/kicad/+bug/1797268
Fixes: lp:1797075
* https://bugs.launchpad.net/kicad/+bug/1797075
2018-10-21 15:55:56 +01:00
jean-pierre charras
8ecdf58bad
Eeschema, load a new bitmap image from file: fix crash when aborting.
...
Remove duplicate code in edit_bitmap.cpp.
2018-10-21 10:59:06 +02:00
jean-pierre charras
dafeb96765
Page layout bitmap size wrong in modern/GAL canvases.
...
The image scale set by pl_editor was not taken in account when drawing the page layout.
Fixes: lp:1798685
https://bugs.launchpad.net/kicad/+bug/1798685
2018-10-20 18:24:22 +02:00
jean-pierre charras
7be215249d
OPENGL_GAL: avoid crash when esotheric unicode chars are used in netnames/pad names in Debug mode.
...
It happens when the char is not found in the font used to display netnames/pad names.
When happens, a wxASSERT is raised.
Unfortunately it can crash the application if it is during a paint event or some critical time.
2018-10-20 18:08:36 +02:00
jean-pierre charras
576a0af293
Eeschema: make draw functions working with "old" libraries using a useless large negative line width (like -1000 or -2000 mils).
...
They are now clamped to -1.
This is only a workaround to avoid ugly artifacts
2018-10-20 13:08:33 +02:00
jean-pierre charras
1116acd74b
Libedit: Fix broken handling of "common to all bodu style" property of lib draw items.
...
Fix a minor wxWidgets assert.
2018-10-20 12:38:36 +02:00
Simon Richter
abe1ffabda
Replace WIN32 preprocessor symbol by the official symbol _WIN32, used almost everywhere
2018-10-20 09:22:24 +02:00
Wayne Stambaugh
8a251163dc
Revert "Turn off compiler extensions"
...
The compiler option caused build failures on msys2.
This reverts commit 2c22bb1a60
.
2018-10-19 18:19:45 -04:00
Simon Richter
cc0489f6b5
Disallow variable length arrays
...
This is a gcc/clang extension, not standard C++
2018-10-19 10:25:32 -07:00
Simon Richter
2c22bb1a60
Turn off compiler extensions
...
We want to be somewhat standards compliant if we can.
2018-10-19 10:25:05 -07:00
Maciej Suminski
9757107b61
Spice netlist exporter: handle multiline directives
...
Fixes: lp:1797937
* https://bugs.launchpad.net/kicad/+bug/1797937
2018-10-19 17:33:01 +02:00
jean-pierre charras
8f9b0f0235
Eeschema, spice netlist exporter: fix an issue that converted spice string commands to lowercase.
...
Therefore, it can breaks some commands, especially filenames.
Partial fix of bug 1797937.
2018-10-19 16:18:30 +02:00
jean-pierre charras
064b8a8d60
Gerber file generation: remove a optional info in .FileFunction: the layer type.
...
TF.FileFunction,Copper,L1,Top,Signal is now TF.FileFunction,Copper,L1,Top
This param is not useful, and probably never correctly set by users, because is is not used by Pcbnew.
(It is used only for dsn export)
2018-10-19 15:48:18 +02:00
jean-pierre charras
10aa8b5f18
Page Layout Editor: fix a few GUI issues.
...
- When loading a file from history the users was always asked to discard changes.
- Bitmap items: the PPI setting was not displayed.
- Text items: the PPI setting was displayed.
- Poly items: the Rotation option was not displayed.
2018-10-19 12:03:03 +02:00
Thomas Pointhuber
e39eeb2f92
Remove debug printf and fix indentation inside of block
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
95e55eb17a
Fix coding style issue (space after if)
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
e09785db1d
Introduce PyStringToWx helper to remove code duplication
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
ce471ec898
Fix braces
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
6ac444f587
Fix style issue
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
9eff4e999f
Quick fix to avoid nameclash with local qrcode python package
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
8bf1954625
NoneType was incorrectly passed to PyString_AsString
...
The implementation relied on the fact that PyString_AsString is returning NULL
for invalid inputs (and causing an error condition), which is then fixed by the
call to FROM_UTF8. Now, we will simply return an empty string if Py_None is
returned by a python fuction, which resemebles the old behaviour of those methods
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
4a2a76af37
Improve CMake Python code
...
* We have code with u'' which means minimum version is 3.3
* Python 3.8 is already in development, be a bit more future proof
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
a27e547290
Fix uss39_barcode.py to work with Python3 as well
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
86ecb9fe30
Fix cmake script for PythonLibs
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
0812f71bd3
Fix builtins import in Python3
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
f316b98f45
Fix conversation of Python 3 str -> wxString
...
Conversation of a NoneType for example failed before
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
22e5e52598
Fix warning: 'HAVE_CLOCK_GETTIME' macro redefined
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
7365cb8e52
Get Exception handling working with Python 3
...
The old way to get the full stacktrace was incorrect, and does not work
with Python 3:
https://stackoverflow.com/questions/3702675/how-to-print-the-full-traceback-without-halting-the-program#comment84297600_33723119
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
88d04f3bcb
Get Action Plugins working with Python 3, fix some unicode string errors
2018-10-19 09:59:06 +02:00
Thomas Pointhuber
8805706ccb
Fix incompatibilites between Python 2 and Python 3
2018-10-19 09:59:05 +02:00
Thomas Pointhuber
7548a3b1bf
Add KICAD_SCRIPTING_PYTHON3 flag to about dialog and doc
2018-10-19 09:59:05 +02:00
Thomas Pointhuber
e9da6811a6
Fix initialisation of the pcbnew python module
2018-10-19 09:59:05 +02:00
Thomas Pointhuber
1a11480bfd
Add cmake flag to switch to python3 build
2018-10-19 09:59:05 +02:00
Thomas Pointhuber
e729454409
Add missing python 3 versions to FindPythonLibs.cmake
2018-10-19 09:59:05 +02:00
Thomas Pointhuber
284904b72c
Rewrite C extensions to also support Python 3
2018-10-19 09:59:05 +02:00
Thomas Pointhuber
de7b362695
Rewrite some code to work on Python 2.7 and 3+
2018-10-19 09:59:03 +02:00
Seth Hillbrand
e1f30a3b38
pcbnew: Fix single-net connectivity
...
Ensure that changes affecting fewer than 4 nets still get updates in the
ratsnest.
2018-10-18 17:11:58 -07:00
Seth Hillbrand
ea1bc4300d
QA: Add unicode to test_utf8.cpp
...
Previous test strings did not utilize extended table unicode, so some
cases slipped through testing. When initializing wxString, we need to
be careful to specify that we are initializing from a UTF-8 string
otherwise the system will utilize a locale-specific initialization.
2018-10-18 11:36:49 -07:00
Seth Hillbrand
6d8a759c75
UTF8: Fix MSVC builds
...
MSVC does not support variable length arrays. Substitute a std::vector
instead.
2018-10-18 11:35:45 -07:00
Jeff Young
a5c892d9cd
Update line width each time a new object is drawn.
...
Fixes: lp:1797481
* https://bugs.launchpad.net/kicad/+bug/1797481
2018-10-18 15:25:56 +01:00
Jeff Young
c06e533689
Add hack to Resolve all symbols when painting.
...
Seems rather expensive, but this is what the Legacy canvas did.
In fairness, it does check the last-mod-date of the libraries
and skips it if they haven't changed.
Fixes: lp:1798446
* https://bugs.launchpad.net/kicad/+bug/1798446
2018-10-18 14:14:54 +01:00
Tomasz Włostowski
bdc64ff0b3
router: DP_GATEWAYS::FilterByOrientation() should have exactly opposite filtering condition!
...
Fixes: lp:1797914
* https://bugs.launchpad.net/kicad/+bug/1797914
2018-10-18 14:29:19 +02:00