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
43b7e27a22
Documented the output_class macro
2020-06-26 12:02:18 -03:00
Salvador E. Tropea
5ce3da2bcc
Added a macro decorator to register output classes.
2020-06-25 11:32:13 -03:00
Salvador E. Tropea
46a20404a4
Added preflights help.
2020-06-25 10:31:23 -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
fa1ea5bdc9
Outputs help and options review
...
- Included properties
- The final dot is placed by the printing code (removed from messages)
- docstrings line lengths limited
- Better HPGL help
- Fixed ibom default output (.html.html)
- pdf_pcb_print to use PCB name when not output name
- Default PS scaling factor to 1 (not 2)
2020-06-25 09:05:46 -03:00
Salvador E. Tropea
fb5c32f0ad
Added negative numbers support to the document macro.
2020-06-25 08:09:39 -03:00
Salvador E. Tropea
6295b00657
Implemented the `sketch_plot` option.
2020-06-24 12:00:53 -03:00
Salvador E. Tropea
505039332b
Made sketch_plot default to false when absent.
2020-06-24 11:59:13 -03:00
Salvador E. Tropea
090aa6b8f1
Removed the "plot" option "check_zone_fills".
...
Not used and overlapped with the preflight option.
2020-06-24 11:26:08 -03:00
Salvador E. Tropea
ac4ae89aba
Added command line help for the outputs.
...
--help-list-outputs list supported outputs
--help-outputs list details for the supported outputs
--help-output OUTPUT shows the help for this particular output
2020-06-24 11:02:17 -03:00
Salvador E. Tropea
89fb93d6d7
Documented the output formats in the source code.
2020-06-24 11:01:43 -03:00
Salvador E. Tropea
458d4ba0a9
Removed flake8 issues
2020-06-23 10:27:11 -03:00
Salvador E. Tropea
d68376ba2e
Added a small test to gerbers output.
...
Currently commented.
2020-06-23 10:26:29 -03:00
Salvador E. Tropea
6859f89c9c
Copied the experiments implementation to the macros file
...
Is more robust
2020-06-23 10:25:29 -03:00
Salvador E. Tropea
2bb2bd2034
Added preliminary tests to add "automagic" documenation for the output options
2020-06-22 19:47:37 -03:00
Salvador E. Tropea
20d79d58ad
Restricted the YAML support to safe features.
...
I think it doesn't change anything important, but looks sensitive.
2020-06-21 11:58:35 -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
7679604646
Major code refactor
...
Pro:
- Much easier to add new outputs and pre-flights
- All options are optional
- Much better configuration syntax check
- Access to data is simpler
Cons:
- Much more source code files
- I focused on one application, not multiple instances running on the same
process.
2020-06-19 15:54:55 -03:00
Salvador E. Tropea
c2c221151b
Bumped version to 0.4.0.
2020-06-17 15:38:49 -03:00
Salvador E. Tropea
b8f8ed53bd
Added a mechanism to avoid problems with ibom
...
This new mechanism should be accepted in the upstream.
So we will be able to use unpatched ibom.
2020-06-17 15:34:43 -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
ef64a57697
Documented the fact that current kicad2step program never fails.
...
Well, it fails, but returns 0.
2020-06-15 15:17:09 -03:00
Salvador E. Tropea
2766b5afcb
Added STEP file output
2020-06-15 13:21:24 -03:00
Salvador E. Tropea
8fbcffba0f
Bumped version to 0.3.0
2020-06-14 15:28:25 -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
406a9ab374
Fixed gzip exception name.
2020-06-14 12:02:15 -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
Salvador E. Tropea
aef19e31c7
Bumped version to 0.2.5
2020-06-11 13:10:45 -03:00
Salvador E. Tropea
c390ec3cb8
Added support for kicad-automation-tools v1.4.0 DRC/ERC filters
2020-06-09 13:49:04 -03:00
Salvador E. Tropea
9e3865d881
Removed another redundant makedirs.
2020-05-26 19:28:14 -03:00
Salvador E. Tropea
46248a6e2e
Removed redundant checks to create the output dir.
...
They became useless after adding it to _configure_output_dir
2020-05-26 19:15:10 -03:00
Salvador E. Tropea
be7a613fc8
Removed os import on plot_config.py. No longer used.
2020-05-26 19:14:10 -03:00
Salvador E. Tropea
ee7de07ee4
Removed impossible error condition
2020-05-26 14:55:04 -03:00
Salvador E. Tropea
6c5c33be12
Excluded from coverage an internal error.
...
Is code that gets executed only if we are in the middle of an
implementation.
2020-05-26 14:52:54 -03:00
Salvador E. Tropea
9f60eca419
Removed two PlotConfig members formerly used for testing.
2020-05-26 14:45:19 -03:00
Salvador E. Tropea
3b7bfe40f7
Set the domain for log messages so we get "kiplot..." and not "kilog...."
2020-05-26 14:33:34 -03:00
Salvador E. Tropea
103ef8b79e
Fixed: Most formats that needed layers didn't complain when ommited
2020-05-26 13:50:38 -03:00
Salvador E. Tropea
bb6bae95a2
Excluded from coverage the fatal case case when python-yaml isn't installed.
2020-05-26 12:43:14 -03:00
Salvador E. Tropea
53be46e1fe
Fixed the pragma in __main__ (typo)
2020-05-26 12:27:48 -03:00
Salvador E. Tropea
9672871ebe
Excluded the module import main() exclusion from coverage
2020-05-26 12:23:01 -03:00
Salvador E. Tropea
153d967015
Excluded an "internal error check" from coverage and commented why.
2020-05-25 20:01:31 -03:00
Salvador E. Tropea
1dda835cc5
Removed some dead code about configurations.
...
_configure_plot_ctrl is called only for "layer" outputs, there is no
point trying to configure other formats.
Also some of the "configuration" were ridiculous calls with an assert
that only tested Python's sanity. Probably optimized out by python
compiler.
2020-05-25 19:23:11 -03:00
Salvador E. Tropea
c22ccb607a
Fixed: All pcbnew plot formats generated gerber job files
2020-05-25 18:31:31 -03:00
Salvador E. Tropea
b053017284
Tolerate config files without outputs
2020-05-20 10:36:28 -03:00
Salvador E. Tropea
da94eb3f57
Excluded from coverage the test for pcbnew import
2020-05-20 09:24:59 -03:00
Salvador E. Tropea
84831cbdfc
Bumped version to 0.2.4.
2020-05-19 12:14:06 -03:00
Salvador E. Tropea
26b4f5c385
Adapted to kicad-automation-scripts 1.3.x
2020-05-19 12:09:19 -03:00
Salvador E. Tropea
bcfaead5f1
Fixed: for print_sch, when the PCB name included a path, it wasn't removed and the
...
output pointed to a mix of both paths, failing.
2020-05-19 11:37:51 -03:00