Salvador E. Tropea
a4c0df7fb5
Fixed flake8 warnings.
2020-07-22 18:16:18 -03:00
Salvador E. Tropea
b89d1f481c
Fixes in SCH meta-data collection.
...
- filename destruction
- code not executed
Also a test to cover all the cases.
2020-07-22 18:14:04 -03:00
Salvador E. Tropea
d5168c37cd
Added filename expansion for SCH related outputs.
...
pdf_sch_print is the first to support it.
2020-07-13 19:20:25 -03:00
Salvador E. Tropea
3822a39671
Added _pos to all position formats in the ID field.
2020-07-12 18:59:50 -03:00
Salvador E. Tropea
9d10c991da
Changed default name for step files (adds -3D)
2020-07-12 18:55:08 -03:00
Salvador E. Tropea
031c69e27c
Added `position` output configuration.
2020-07-12 18:46:37 -03:00
Salvador E. Tropea
36eedc9fce
Added `drill` output configuration
2020-07-12 17:43:15 -03:00
Salvador E. Tropea
b8b1277f5f
Drill map file names can be configured.
2020-07-12 17:01:23 -03:00
Salvador E. Tropea
b6347d8992
Drill report now uses %i='drill_report' %x='txt'
2020-07-12 16:27:46 -03:00
Salvador E. Tropea
bc52d932b0
Changed default file name for pdf_pcb_print
...
Now %i is the list of layers (suffixes) and %x is PDF.
The default is %f-%i.%x
2020-07-12 16:17:38 -03:00
Salvador E. Tropea
41de8c032c
Added `output` option to control the file name to all plot output formats.
2020-07-12 13:00:38 -03:00
Salvador E. Tropea
e2854ef524
Added gerber.gerber_job_file option to control the gerber job file name.
2020-07-12 12:28:00 -03:00
Salvador E. Tropea
63999aa009
Preflight filters parsed by Optionable class.
...
This makes the filters similar to output options.
- Adds coherence to error messages.
- Enable aliases (used the ones suggested by @leoheck)
Additionally now the README.md preflights documentation comes directly
from --help-preflights
2020-07-12 11:52:44 -03:00
Salvador E. Tropea
52e6bb1b5f
Added support for PcbDraw
2020-07-11 13:49:03 -03:00
Salvador E. Tropea
f72ff3f441
Extra dot in step.metric_units docstring.
...
Remove dead code in check_eeschema_do()
Fixed the way we read scale stuff from a PCB
Added special checks for check_script and check_version
2020-07-09 12:50:27 -03:00
Salvador E. Tropea
587ef177b3
Added test for corrupted PCB, skip a preflight that isn't in use and output
...
plugin
2020-07-09 09:54:25 -03:00
Salvador E. Tropea
a48e9ecc96
Added tests to cover out_pdf_pcb_print.py, error case left out
2020-07-09 09:20:52 -03:00
Salvador E. Tropea
d4677a2c2e
Added tests for:
...
- Inner layer that doesn't exist
- Technical layers
- Wrong layer group/spec
2020-07-08 23:34:45 -03:00
Salvador E. Tropea
995b6990aa
Added HPGL and PS autoscaling tests.
...
Added test for example in a dir that must be created.
Removed code not used in docstring trim.
2020-07-08 23:16:04 -03:00
Salvador E. Tropea
8f17733354
Added PS autoscale and --example -p without PCB tests.
2020-07-08 22:55:41 -03:00
Salvador E. Tropea
42342236da
Added test fro KiBoM with variant and print_sch_pdf fail.
2020-07-08 22:42:24 -03:00
Salvador E. Tropea
05460f4541
Added test for wrong boolean
2020-07-08 21:06:35 -03:00
Salvador E. Tropea
1917b4c601
Added more tests for errors
2020-07-08 20:41:16 -03:00
Salvador E. Tropea
307bed3a36
Added more preflight tests
2020-07-08 19:49:33 -03:00
Salvador E. Tropea
38baa62cbe
Fixed ERC/DRC error count report.
2020-07-08 19:28:07 -03:00
Salvador E. Tropea
4869ead2eb
Added test for failling DRC
2020-07-08 16:52:53 -03:00
Salvador E. Tropea
4111131008
Added test for run_erc not boolean.
2020-07-08 16:47:07 -03:00
Salvador E. Tropea
922b853084
Fixed ignore_unconnected.
...
Also added a test and a test for the error type.
Additionally the BasePreflight now provides default run/apply members.
2020-07-08 16:29:30 -03:00
Salvador E. Tropea
4368364489
Refactored the BaseOutput class to make it more similar to the YAML
...
Now the options are just an attribute of the outputs.
It means we have a set of classes for the options.
All the output content is parsed by the classes, including the Layers.
Now the layers support a simple string (with interesting shortcuts), a list of
strings or the original list of dicts.
2020-07-08 15:17:24 -03:00
Salvador E. Tropea
45ecb1d02a
Added a mechanism to specify suboptions.
...
Now the legacy drill.map.type and drill.report.filename are specified in this
way.
The BaseOutput class now inherits from Optionable.
Suboptions are just Optionable classes.
Also: added traceback print when an error is reported and we are in debug mode.
2020-07-05 12:40:57 -03:00
Salvador E. Tropea
1ca21efe94
Now the docstring for string options can specify a list of allowed values
...
This reduces the number of setters/getters we need to write.
On the other side the time to validate the YAML is increased.
2020-07-02 09:25:06 -03:00
Salvador E. Tropea
ec35d2443f
Added option to copy plot options from the PCB to the YAML example.
...
Also added DXF.metric_units and updated the README.
2020-07-01 20:43:03 -03:00
Salvador E. Tropea
3a1d5d0652
Added pen_number and pen_speed HPGL options
2020-07-01 11:11:33 -03:00
Salvador E. Tropea
be8339ddff
Added tests to cover all the out_any_drill.py errors.
2020-06-30 22:57:59 -03:00
Salvador E. Tropea
d926a5419e
Added --example basic tests
...
Also added support for output directory to --example
2020-06-30 20:43:42 -03:00
Salvador E. Tropea
3c6f4950c7
Now the schematic can be specified separately.
...
We now test if the PCB and/or SCH are there only when we need them.
2020-06-29 19:25:54 -03:00
Salvador E. Tropea
42d1f14056
Now layers are solved when we really need it.
...
So we can do some operations (like --list) without loading the board.
Also: now the names for the layers are asked to pcbnew classes (not from file)
2020-06-29 12:55:02 -03:00
Salvador E. Tropea
c82c2f0c39
Added support for all the missing IBoM options.
...
Note that variants_blacklist and variants_whitelist needs a fresh IBoM.
These options didn't work and crashed IBoM. It was reported as a result of
the tests included in this commit.
2020-06-27 15:04:35 -03:00
Salvador E. Tropea
d48f258c33
Added tests for the various help options.
2020-06-26 14:48:40 -03:00
Salvador E. Tropea
2f0f3f755d
Changed the command line parser from argparse to docopt.
...
This make the code cleaner and better documented.
Now the usage is more clear, and also a little bit more strict.
I'm using a modified docopt because I preffer using args.option instead of
args['--option'], I also fixed a few flake8 issues in docopt.py.
2020-06-26 12:04:56 -03:00
Salvador E. Tropea
acd5592a45
Now the map.type and report.filename are deprecated in favor of map and report.
...
The old mechanism is supported, but removed from examples.
Added a test case for the new mechanism.
Documented the reason for the complex properties.
Added docstrings to these particular cases (with None as default).
2020-06-25 09:37:43 -03:00
Salvador E. Tropea
19023ef4e6
Added tests to cover 100% of kiplot/config_reader.py
...
Mostly parser errors.
2020-06-19 23:38:09 -03:00
Salvador E. Tropea
6ed99d8515
Tests adapted to the new error message strings.
2020-06-19 16:00:16 -03:00
Salvador E. Tropea
3382b4fe7b
Fixed the way options with arguments are passed to kicad2step.
2020-06-15 15:58:08 -03:00
Salvador E. Tropea
c2a735e9a6
For some reason Python sys.path vector has a limit and I was abusing it.
...
Each test module setups the path to find the needed modules, but didn't check
if it was necesary. Creating a long path that finally started to fail.
2020-06-15 15:14:53 -03:00
Salvador E. Tropea
fc19d2c6c0
Added tests for errors parsing STEP files generation.
2020-06-15 13:40:30 -03:00
Salvador E. Tropea
685fef2ef6
Added test for STEP files generation
2020-06-15 13:39:59 -03:00
Salvador E. Tropea
0d9256fb24
The 'check_zone_fills' option is now independent of 'run_drc'
...
Implemented in a different way.
For all internal commands now we use Python bindings to fill the zones as
suggested by @arikrupnik in johnbeard/kiplot#11
For 'print_pcb' now we ask KiCad to do it before printing (needs v1.4.1)
2020-06-14 15:12:56 -03:00
Salvador E. Tropea
4101f69cd4
Added support for compressed YAML files.
2020-06-14 11:05:08 -03:00
Salvador E. Tropea
61f1ebbab2
Better debug info, fixed errors and no .kicad_pcb dependency
...
- When a BoM operation fails now we show the output of the child process.
(Only enabled when using debug verbosity)
- The error levels 1 and 2 were overlapped with internal Python codes.
- Now we delay the PCB load until we really need it. Which could be never.
2020-06-12 15:10:56 -03:00