Jon Evans
2abce40553
Better selection heuristics for highlight tool
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4011
2020-10-12 22:47:31 -04:00
qu1ck
e784743284
Fix pcbnew drawings api
...
Add some basic tests
2020-10-12 16:38:32 +00:00
Michael Kavanagh
c40483d18a
Cleanup: Move KiCad files into plugins folder
2020-10-12 16:36:08 +00:00
Jeff Young
42eecdfd3a
Collapse silk constraints down to one.
...
Also updates the rule syntax help and code-completion with a bunch
of diff-pair and other stuff that hadn't been updated yet.
2020-10-11 13:19:23 +01:00
Jon Evans
61f731aa1d
Fix disambiguation for vector buses with different ranges
...
Previously disambiguation was looking for exact matches,
but vector buses are permitted to have different ranges and
still participate in merging, so they need to be disambiguated.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5925
2020-10-08 22:26:24 -04:00
Tomasz Wlostowski
5e4fb46aef
MINOPTMAX: added OptThenMin() method as syntax sugar
2020-10-09 00:01:26 +02:00
Roberto Fernandez Bautista
9faccda68d
Fix compile errors in MSVC
2020-10-07 19:33:46 +01:00
Tomasz Wlostowski
1d34845683
qa: added missing files
2020-10-07 17:49:27 +02:00
Tomasz Wlostowski
d24e0ea7a0
qa: fix build script
2020-10-07 17:43:12 +02:00
Tomasz Wlostowski
bd27d38d9a
DRAW_PANEL_GAL: added DebugOverlay() method, creating a temporary overlay for drawing debug graphics
2020-10-07 16:36:37 +02:00
Michael Kavanagh
42496a7d62
Convert DRC rules syntax help to markdown
...
Note, the original markdown spec specifies using 4 spaces to indent a
code block (https://daringfireball.net/projects/markdown/syntax )
Wrapping with three backticks doesn't work with this lib. Wrapping
with a single backtick for span elements works ok.
2020-10-06 17:18:35 +00:00
Jon Evans
76bfa47a77
Allow creating new projects when doing a Save As in eeschema
2020-10-05 22:36:26 -04:00
Jeff Young
37906511f5
Class renaming.
...
DRAWSEGMENT -> PCB_SHAPE
EDGE_MODULE -> FP_SHAPE
TEXTE_PCB -> PCB_TEXT
TEXTE_MODULE -> FP_TEXT
2020-10-05 11:55:33 +01:00
Jeff Young
7a4900b8dc
PCB_LINE_T -> PCB_SHAPE_T and PCB_MODULE_EDGE_T -> PCB_FP_SHAPE_T
...
Also updated footprint text and zone types for consistencey.
2020-10-04 16:49:04 +01:00
Jeff Young
85c6cebd77
Rework silk-to-pad checker to handle all solder mask clipping of silk.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5851
2020-10-04 13:21:01 +01:00
Mikolaj Wielgus
d9fd6e549b
Remove "useMils" variable from numeric evaluator
2020-10-03 20:06:56 +00:00
Mikolaj Wielgus
400c15b8eb
Add mils to units, remove useMils variables
2020-10-03 20:06:56 +00:00
jean-pierre charras
3144bab36f
final cleanup about removing useless include
2020-10-03 16:40:36 +02:00
jean-pierre charras
f702da95c7
Minor code cleanup, step2: remove more useless include.
...
fix also a minor compil warning
2020-10-01 15:39:47 +02:00
jean-pierre charras
3f8c9d49f8
Revert "Code cleanup: remove useless wx/wx.h include inside a few files."
...
due to compil issue on Linux
This reverts commit cffccc3970
.
2020-09-30 20:47:20 +02:00
jean-pierre charras
cffccc3970
Code cleanup: remove useless wx/wx.h include inside a few files.
...
in most of files, including wx.h is not necessary, when only 2 or 3 wx files must be included.
Moreover, on windows, including wx.h sometimes create compil warnings about
shadowed vars defined in some specific windows headers.
2020-09-30 20:03:27 +02:00
Seth Hillbrand
bf3cb0b1d0
Standardize pad type enums
2020-09-30 08:38:35 -07:00
Jeff Young
bf67648562
Support optional location reporting in SHAPE collisions.
...
Also fixes a few bugs in the collision routines.
2020-09-28 23:28:33 +01:00
Jeff Young
a2d9acb647
Rename DRC rule function onLayer to existsOnLayer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5647
2020-09-27 21:33:37 +01:00
Tomasz Wlostowski
d2ed27b500
libeval_compiler: fix string comparison
2020-09-27 16:45:46 +02:00
Tomasz Wlostowski
aebfe4c9f0
drc_proto: restore DRC RTree code (accidential deletion)
2020-09-27 16:45:46 +02:00
Jeff Young
8735ebdc70
Remove one more stale group test.
2020-09-25 23:30:46 +01:00
Jeff Young
0818bd05d2
Remove no-longer-applicable tests from group_saveload.
2020-09-25 21:10:13 +01:00
Jeff Young
6fde9ea8a5
Don't leave stale pointers in groups when exchanging modules.
...
Also simplifies groups so that other areas of code that have to know
about them at least don't have to know as much. One of the simplifications
is to not worry so much about empty groups until save time; others are in
the access logic to parent groups.
Also simplifies user model slightly by removing Merge and Flatten
(which are just ungroup/group and ungroup/ungroup/.../group).
Also allows multiple groups to have the same name. This is useful when
using groups for a classification system.
Fixes https://gitlab.com/kicad/code/kicad/issues/5788
2020-09-25 18:43:19 +01:00
Seth Hillbrand
856cf51fc8
Fix typo
2020-09-23 14:00:39 -07:00
Wayne Stambaugh
188232de6f
Pcbnew: add user defined layers and allow all layers to have user names.
...
This changes the file format. All previous copper layers that had a user
defined name are forced back to the canonical name and the user defined
name is stored as an optional quoted string in the layer definition and
only used for UI and plotting purposes. All copper object layer names
are now the canonical name for internal file use.
ADDED: Nine new user definable non-copper layers that can be optionally
added to the board layer stack.
CHANGED: All board layers can now be renamed by the user.
CHANGED: User defined layer names can now contain space characters.
Fixes https://gitlab.com/kicad/code/kicad/issues/1969
2020-09-23 15:41:43 -04:00
jean-pierre charras
0b03d8a5ff
Fix a few Coverity warnings.
2020-09-20 16:30:23 +02:00
Jeff Young
67b5d24995
Support ESC & Cancel for DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5698
2020-09-18 22:14:00 +01:00
Ian McInerney
4ca103c82c
Fix problem in groups QA test
...
The items should always be added to the group.
2020-09-18 11:17:37 +01:00
Jeff Young
a3d65a2b43
Smoother progress reporting for DRC checks.
...
Also moves Messages tab out to an overlay, and restores the longer
messages now that messages are no longer a textbox in the upper right.
2020-09-17 20:13:39 +01:00
Ian McInerney
9ea2dbe87b
Cleanup the PCB_GROUP QA test set
2020-09-16 02:04:17 +01:00
Jeff Young
b4229d9a3e
Fix testcase crash when progressReporter was null.
...
(And it helps if the DRC tester you're trying to test is actually
in the make file.)
2020-09-15 22:25:12 +01:00
Jeff Young
e2e229da96
Finish exorcising the old DRC system.
...
This moves the various BOARD_ITEM calls to the new system, and make
the DRC_ENGINE long-lived so that it can field those queries.
2020-09-15 20:15:46 +01:00
Jeff Young
665212341d
Cleanup (consistent naming, 100-char line width, message precision).
2020-09-15 12:07:31 +01:00
Jeff Young
514da2f886
Move DRC dialog to new DRC engine.
2020-09-14 22:39:36 +01:00
Jeff Young
748bee1bc7
Hook up netclasses and board minimums to new DRC engine.
...
Improves implicit rule reporting.
Makes some internal names more consistent.
Moves DRC_REPORT to the test framework.
Removes priority (which isn't supported in the grammar)
2020-09-13 17:08:24 +01:00
Jeff Young
8420fcc33b
Cleanup.
2020-09-13 17:08:24 +01:00
Jeff Young
5be887a60f
Iron out some wrinkles in the DRC migration.
2020-09-12 01:57:37 +01:00
Jeff Young
ce2937a399
Move rest of DRC tests to kicad.
2020-09-11 23:14:12 +01:00
Jeff Young
5424d6fa09
Move new clearance tests into kicad.
2020-09-11 21:26:57 +01:00
Jeff Young
cc86630f11
Start pulling new DRC engine into Kicad.
2020-09-11 16:04:11 +01:00
Jeff Young
6b4a6f4d3e
Restore min seg limit for rounded-corner pads.
...
It suffered from a cacophony of errors, starting with an errant
comment that made it later look like a bug. Sigh.
2020-09-11 14:41:45 +01:00
Wayne Stambaugh
d45c11b4b5
Exclude from bill of materials and board netlist to library symbols.
...
ADDED: Support for exclude from bill of materials and board netlist to
library symbols.
Fixes https://gitlab.com/kicad/code/kicad/issues/4915
2020-09-09 09:03:37 -04:00
Roberto Fernandez Bautista
3b3af5327f
CADSTAR PCB Archive Importer: Move code into common/plugins and pcbnew/plugins folders
2020-09-08 21:21:20 +00:00
Roberto Fernandez Bautista
632d45e833
CADSTAR PCB Archive Importer: Parse PARTS section
2020-09-08 21:21:20 +00:00
Roberto Fernandez Bautista
4c2f38f1ad
CADSTAR PCB Archive Importer: Parse LIBRARY section + code refactoring
...
code refactoring:
- Renamed CADSTAR_COMMON to CADSTAR_ARCHIVE_COMMON
- Renamed CPA_FILE to CADSTAR_PCB_ARCHIVE_PARSER
- Made CADSTAR_PCB_ARCHIVE_PARSER a derived class of CADSTAR_ARCHIVE_COMMON
- Moved all structures in cadstar_pcb_archive_parser.h/.cpp to be defined inside CADSTAR_PCB_ARCHIVE_PARSER class
2020-09-08 21:21:20 +00:00
Roberto Fernandez Bautista
86bf592bac
ADDED: CADSTAR PCB Archive Importer
...
Initial commit
- Imports directly mappable layer stackup (only physical board fabrication layers for now)
2020-09-08 21:21:20 +00:00
Seth Hillbrand
459cc326e0
Remove errant header
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5553
2020-09-08 06:44:56 -07:00
Seth Hillbrand
02a5d47de9
Avoid passing references in EESchema
...
This returns the connection list by value. This allows easier Python
use
Also renames m_End() to GetEnd()
2020-09-08 06:29:27 -07:00
Tomasz Wlostowski
1cd349c8f6
drc_proto: report rule hits only for rule-driven tests
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
0ef6d85a1f
drc_proto: added rule hit accounting in various tests
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
0f015aeb59
drc_proto: add dummy default constraint for courtyard clearance
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
e1af46d099
qa: temporarily disable test_gal_pixel_aligmnent due to unfinished changes in PCB_TEST_FRAME_BASE
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
7aefe6fdb4
qa_utils: PCB_TEST_FRAME compiles again...
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
91860dae2d
drc_proto: use GetLayer() in disabled layer tests
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
b53d753796
drc_proto: don't stitch together multiple rules's microcode
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
9176062d0f
drc_proto: return 'safe' null constraint if no matching rule found. To be fixed
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
fc58c4a20e
drc_proto: netclass wip
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
8a5297180e
drc_proto: initial version of legacy rule import (without overrides yet)
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
05b88acf16
drc_proto: wip adding accessors to DRC_RULE/DRC_RULE_CONDITION
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
8e4a3f5e65
drc_proto: nicer logging on the console
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
b107c4a025
drc_proto: working on progress reporting
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
466cbe2f00
libeval_compiler: fixhandling of method calls with empty argument list (e.g. 'A.method()' )
2020-09-08 01:31:42 +02:00
Tomasz Wlostowski
adbd94553d
drc_proto: all tests now supported in drc_proto. Not tested yet!
2020-09-08 01:31:42 +02:00
qu1ck
3dbebda168
Fix GetCustomShapeAsPolygon and add a unit test
...
Fixes #5497
2020-09-04 20:30:54 -07:00
Seth Hillbrand
3095d0e335
DRC_TREE: Allow indexing on triangulated zones
...
Also move to BOARD_ITEM* as we might want to run DRC on non-copper items
2020-09-04 15:53:49 -07:00
Jeff Young
e6f4e156b6
Fix the SCH_PINs test to be more reflective of the codebase.
2020-09-01 15:25:49 +01:00
Jeff Young
9e12ea9bb6
Cleanup some dead code and make better use of iterators.
...
Also applies coding style around auto and lambdas.
2020-08-28 11:05:58 +01:00
Seth Hillbrand
0d65d76a9a
Add modified qa project
2020-08-25 10:40:44 -07:00
Thomas Pointhuber
a03fb7a9a8
Altium: Refactor and add initial structure for schematic importer
...
altium: move pcbnew/altium2kicadpcb_plugin -> pcbnew/plugins/altium
See: https://gitlab.com/kicad/code/kicad/-/issues/4412
2020-08-23 19:01:08 +00:00
Seth Hillbrand
a3fc028c9b
CHANGED: locked parameter explictly written
...
Removed the bitmap status field that saved internal states into the
file, creating rcs churn. Also removed the unneeded count variables at
the start of the file as these created merge conflicts for every board
that had multiple revisions
Fixes https://gitlab.com/kicad/code/kicad/issues/1850
2020-08-19 03:51:30 +00:00
Wayne Stambaugh
ede39780e2
Remove all debugging output that cannot be disabled.
...
The use of printf, wxLogDebug, and std::err/std::out causes excessive
debugging output which makes finding specific debugging messages more
difficult than it needs to be.
There is still some debugging output in test code that really needs to
be moved into a unit test.
Add debugging output section to the coding policy regarding debugging
output.
2020-08-18 10:17:36 -04:00
Tomasz Wlostowski
8c94d88c78
qa: fix incorrect cast error on OSX/MSVC
2020-08-14 09:48:40 +02:00
Tomasz Wlostowski
f582783b27
qa/drc_proto: updated DRC rule file format to the last version, post-rebase fixes too
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
e0ffdc8fe7
drc_proto: update file format, get the thing to compile again
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
52fefd15e0
common: include drc_proto keywords in the main DRC parser
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
d937fadd6f
Migrate RC_ITEM to use shared_ptr
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
2b6ef6964a
qa/pcbnew: test introspected properties in the expression compiler
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
7c15c788b8
qa/pcbnew: boost test fixture for libeval_compiler
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
35e45c5917
drc_proto: edge clearance wip
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
e38796396f
qa/drc_proto: default values for fields in DRC_RULE
2020-08-13 14:50:59 +02:00
Tomasz Wlostowski
782fcc6139
qa/drc_proto: fix regressions in DRC_RULE_PARSER
2020-08-13 14:50:59 +02:00
Jeff Young
393bb0fd83
Fix assert where geometry routine wasn't ready to handle layers.
...
This introduces layer handling to a lot of the geometry routines.
Many of them don't do much with it now, but it does help multi-layer
zones and will help when padstacks are implemented.
2020-08-12 22:20:08 +01:00
Jeff Young
463100d67f
Remove a long-standing hack to keep divots out of adjacent zones.
...
The new algorithm unions any adjacent zones before doing the
chamfer/fillet and then subtracts the other zones back out afterwards.
Fixes https://gitlab.com/kicad/code/kicad/issues/3812
2020-08-12 22:20:08 +01:00
Qbort
b41892e4da
Rename class GROUP in pcbnew to PCB_GROUP
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5156
2020-08-12 15:36:08 +01:00
Seth Hillbrand
7c455f2357
First pass at DRC RTree functionality
...
This implements a copper-layer RTree with functions for iterating over
the elements in a copper layer and providing Nearest Neighbor returns
for BOARD_CONNECTED_ITEMS
2020-08-11 16:52:29 -07:00
Joshua Redstone
ee428876ec
ADDED: Group/Ungroup function
...
This implements the group/ungroup functions to mark a set of EDA_ITEMs as a unit, allowing them to be moved and rotated as a unit
2020-08-11 19:37:07 +00:00
Seth Hillbrand
41edf5c5bf
Updating DRC to handle vias with differing layers
2020-08-10 03:27:27 +00:00
Jeff Young
4317881012
Improve delete-unused-layers to better handle multi-layer items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5116
2020-08-09 15:39:51 +01:00
Mark Roszko
c6e388db14
Implement an app progress indicator in the taskbar
...
ADDED: Progress indicator in the taskbar
This adds a progress indicator to the Windows and macOS taskbar
icons to display the progress of some operations.
Note, this requires wxWidgets 3.1+
2020-08-09 10:55:00 +00:00
Jeff Young
e5b50d90a7
Update DRC rules to new layer and disallow grammars.
...
Also adds support for hooking rules up to named zones.
Fixes https://gitlab.com/kicad/code/kicad/issues/2041
2020-08-07 21:49:36 +01:00
Qbort
9977299340
Fix compile errors in drc_engine.cpp and panel_setup_rules.cpp
2020-07-31 21:47:01 +00:00
Tomasz Wlostowski
23e834fdb5
qa: fixed test fixture name collision causing test failures
2020-07-31 20:01:15 +02:00
Ian McInerney
268dec5c19
Cleanup some build and Coverity warnings
2020-07-31 02:46:05 +01:00
Jeff Young
fdb23d1a2d
Add DRC check for items (pads for now) shorting two nets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4955
2020-07-30 21:42:23 +01:00
Jeff Young
577c1be391
Report all DRC rule errors, not just the first.
2020-07-30 14:27:42 +01:00
Tomasz Wlostowski
b06c158764
drc_proto: thou shalt count rule hits from 1, not 0
2020-07-30 00:02:36 +02:00
Tomasz Wlostowski
8de484eff3
drc_proto: follow up Jeff's changes
2020-07-30 00:02:15 +02:00
Tomasz Wlostowski
faf469bd23
drc_proto: follow up Jeff's changes to libeval_compiler
2020-07-29 23:15:19 +02:00
Tomasz Wlostowski
9401165e6c
qa: temporarily disable libeval_compiler_test
2020-07-29 23:14:34 +02:00
Tomasz Wlostowski
e32c38ef81
drc_proto: simple test cases for copper clearance and hole clearance tests
2020-07-29 23:14:34 +02:00
Tomasz Wlostowski
128ae8b49e
drc_proto: working on hole size/track width checker
2020-07-29 23:14:34 +02:00
Tomasz Wlostowski
ff1872379d
drc_proto: report rule hit statistics
2020-07-29 23:14:34 +02:00
Tomasz Wlostowski
7fc532df2e
drc_proto: import new error reporting code from Jeff
2020-07-29 23:14:34 +02:00
Tomasz Wlostowski
6615397541
drc_proto: DRC_RULE now uses new libeval API
2020-07-29 23:14:34 +02:00
Tomasz Wlostowski
a504bd0795
drc_proto: don't launch DRC providers with empty/incomplete rule sets
2020-07-29 23:14:03 +02:00
Tomasz Wlostowski
cf0bb60fbb
drc_proto: migrated GetEffectiveShape(s) to SHAPE_COMPOUND
2020-07-29 23:14:03 +02:00
Tomasz Wlostowski
1a2e02040a
qa/libs/kimath: simple test suite for collisions of SHAPE_COMPOUNDs
2020-07-29 23:14:03 +02:00
Tomasz Wlostowski
8d9d3ff795
qa/drc_proto: debug level settable by env var
2020-07-29 23:14:03 +02:00
Tomasz Wlostowski
91b68e4578
drc_proto: follow up Jeff's changes in legacy DRC/board model
2020-07-29 23:14:03 +02:00
Tomasz Wlostowski
abe6ccf97e
common: re-enable libeval_compiler and DRC proto test (fixed missing file issues)
2020-07-29 23:14:03 +02:00
Jeff Young
0fecb5f277
Be more explicit about string/character conversions.
...
This *may* fix the bug where a layer name isn't displayed correctly
in the error dialog. But probably not.
2020-07-28 20:44:40 +01:00
Seth Hillbrand
1374d82114
Adding QA project files
2020-07-28 10:44:51 -07:00
Jeff Young
552dde8976
Fix return value going out of scope.
...
(From Coverity report.)
2020-07-26 13:41:43 +01:00
Jeff Young
bf445c1a95
Performance enhancements.
...
1) cache pad polygon outlines
huge improvement in connectivity performance and a decent
improvement in DRC performance
2) don't pre-allocate CONTEXT stack
significant improvement in DRC rule performance
2) don't keep re-encoding strings
decent improvement in DRC rule performance
2020-07-25 13:03:33 +01:00
Jeff Young
6529e339a9
Don't store context in the uCode. (It's not thread-safe.)
...
Although it does give some pretty funny results when filling zones.
2020-07-23 22:21:13 +01:00
Jeff Young
a6b6084a60
Add preflighting for DRC rule function calls.
2020-07-22 14:33:32 +01:00
Jeff Young
c52df811ae
Add expression eval to constraint min/max/opt values.
...
Also adds error reporting for above.
2020-07-21 23:43:10 +01:00
Jeff Young
095937563b
Hook libeval compiler up to rule parser
...
- convert expression string tokens to single-quote-delimited
- fix bug where netclass assignments weren't getting updated after
board setup dialog
- move property manager rebuild to lazy evaluation
- improve performance with wider use of const&
- retire DRC_SELECTOR stuff
- use wxString for GUI stuff (particularly translated stuff)
- fix EqualTo() to return false instead of asserting when op types
don't match
- fix buffer overruns with fixed-size string buffers
- make expression function calls case-insensitive
- integrate expression errors into rule parser
- produce more and better error messages
- keep BOARD_ITEM ptrs const as long as possible
- fix a couple of uninitialized variables
2020-07-20 22:11:53 +01:00
jean-pierre charras
6d8fb94d86
Fix a few Coverity warnings.
2020-07-20 16:19:19 +02:00
Seth Hillbrand
69d75b90b1
Adding failed arc test
...
This test implements a case where the current arc calculations fail
2020-07-18 13:03:22 -07:00
Ian McInerney
7b705af038
Refactor common QA components to create a single common library
...
This moves the program-specific code (e.g. BIU files) into
the program tests.
Also, create title_block.cpp to break a dependency that pulled
in eda_text.cpp when using the TITLE_BLOCK object.
2020-07-18 16:21:15 +01:00
Ian McInerney
019313711a
Move geometry tests into the kimath qa test
2020-07-18 16:19:01 +01:00
Jeff Young
d1da053d2e
Update test to prettier file extension wildcard syntax.
2020-07-17 21:22:28 +01:00
Jeff Young
7340c97ef9
Undo for schematic-wide operations.
...
Editing value/footprint fields of multi-unit components.
Find/Change.
Annotation.
Back annotation.
Fixes https://gitlab.com/kicad/code/kicad/issues/2122
Fixes https://gitlab.com/kicad/code/kicad/issues/4869
Fixes https://gitlab.com/kicad/code/kicad/issues/3933
Fixes https://gitlab.com/kicad/code/kicad/issues/4871
Fixes https://gitlab.com/kicad/code/kicad/issues/3899
2020-07-13 12:32:17 +01:00
Jeff Young
1872d05f72
Fix netlist test golden file to include proper escaping.
2020-07-07 11:18:52 +01:00
Ian McInerney
6672efdf2c
Disable DRC prototype by default
2020-07-06 00:55:36 +01:00
Tomasz Wlostowski
0a4c8cd45c
drc_proto: import latest Jeff & Jon's changes + update copyright headers
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
e9d37dd7ce
drc_proto: implement QueryWorstConstraint
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
bc86ea7682
drc_proto: use separate lexer for rule file from current pcbnew DRC
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
0e0cf5dff8
drc_proto: moving to GetEffectiveShapes()
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
1cabc1bc0f
qa/drc_proto: rework common clearance code into base class, start working on hole clearance test refactor
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
b3ce23f0e2
PCB_EXPR_EVALUATOR: implement isPlated virtual property
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
d57d5d73b2
qa: clearance test works and reports. about to do board outline clearance test
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
bd19892cd0
qa/drc_proto: clearance test seems to work with conditional rules, need to clean up & add reporting
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
6bddc4bdd6
qa: more tests for libeval_compiler
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
085698d17c
drc_proto: wip
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
aaa91655aa
libeval_compiler: integrated in common/
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
b82ec2161f
libeval_compiler: initial version
2020-07-05 22:44:38 +02:00
Tomasz Wlostowski
bff209b07c
qa: disable single test in PROPERTY test suite due to boost incompatibility
2020-07-05 22:44:38 +02:00
Maciej Suminski
f084a86601
Properties replacement method
...
Adds a possibility to replace properties inherited from base types with
a more specific ones. For example, such properties may have:
- different meaning which should be reflected in property name
(e.g. TRACK::{G,S}etWidth() sets actual track width, but
VIA::{G,S}etWidth() modifies the diameter)
- different set of possible values (e.g. BOARD_CONNECTED_ITEM::SetLayer()
should accept any copper layer, but MODULE::SetLayer() works only with
F.Cu and B.Cu)
2020-07-05 22:44:38 +02:00
Maciej Suminski
cbd5004fd4
Properties (introspection)
...
Introduces classes:
- INSPECTED: base class for types taking advantage of
generic properties system.
- PROPERTY*: meta-data storing information about properties
- PROPERTY_MANAGER: singleton class to get properties data
2020-07-05 22:44:38 +02:00
Jon Evans
4dbbe1cf68
Project settings fixes from review
...
- Fix file extension for new project
- Fixes for exceptions on MSW
- Fix some ASAN issues
- Allow SETTINGS_MANAGER to run headless
- Don't flag schematic as modified after schematic setup is closed
- Don't automatically unload projects when LoadProject is called
- Don't unload project if it's the same as the current one
- Make sure to properly init/de-init template field names
2020-07-02 22:08:54 -04:00
Jon Evans
12b4a55ae8
Port Eeschema to new project settings
...
DRC/ERC error serialization changed to use explicit tokens
Old stored severities and ignored errors are discarded
2020-07-02 22:08:54 -04:00
Jon Evans
c0aa6965de
Migrate PcbNew project settings to new framework
...
Various architecture upgrades to support this.
Creating a BOARD now requires a valid PROJECT, which caused
some (mostly transparent) changes to the Python API internals.
ADDED: Project local settings file
CHANGED: Board design settings are no longer stored in PCB file
CHANGED: Net classes are no longer stored in PCB file
CHANGED: Importing board settings now reads boards, not just projects
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2578
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4070
2020-07-02 22:08:54 -04:00