Commit Graph

600 Commits

Author SHA1 Message Date
Salvador E. Tropea 16ddb9465f Added Internal BoM + KiCost integration
- Currently very basic, but you get "Costs" and "Costs (DNF)" work
  sheets in the XLSX output when the xlsx.kicost option is enabled.
2021-04-15 11:14:37 -03:00
Frank Leon Rose b946e519fb _top & _bottom select all components on a side 2021-04-05 22:15:22 -04:00
Frank Leon Rose 6e0deccdc1 Add invert_bottom parameter 2021-04-05 21:52:50 -04:00
Salvador E. Tropea 3ddb29ff9e Updated the config template.
With the fixes in #63
2021-04-01 09:02:40 -03:00
Salvador E. Tropea 26e5289771 Updated the list of contributors 2021-04-01 09:02:14 -03:00
Seth Kazarians 7e722caf40 Fixed Typos in source files per recommendation from @set-soft. 2021-03-31 15:10:21 -07:00
Salvador E. Tropea 7c3f273684 Basic KiCost support. 2021-03-31 12:27:55 -03:00
Salvador E. Tropea 01291ebe63 Added field rename filter.
Including an internal version to emulate KiCost behavior.
2021-03-23 13:20:26 -03:00
Salvador E. Tropea cc77ba9204 Updated the docs and config template. 2021-03-19 19:42:09 -03:00
Salvador E. Tropea 4c96c35f5c Added new pre-flight option (erc_warnings) 2021-02-24 12:58:07 -03:00
Salvador E. Tropea e3d79b6527 Moved the news to the top of the README (replacing 0.7.0) news 2021-02-12 20:19:40 -03:00
Salvador E. Tropea 097ee10ac6 Added link to the Spora example. 2021-02-12 20:17:55 -03:00
Salvador E. Tropea d1c74d681b Fixed missing python3-distutils dependency on Debian package. 2021-02-12 17:26:36 -03:00
Salvador E. Tropea 8d5c0109f9 Bumped version to 0.10.0 2021-02-12 16:08:46 -03:00
Salvador E. Tropea 80b7510c80 Made the JLCPCB position example more clear and easier to reuse. 2021-02-12 11:08:09 -03:00
Salvador E. Tropea ec938ad3af Fixed reference in README.md 2021-02-11 13:06:23 -03:00
Salvador E. Tropea 84e511e690 Documented the `import` section. 2021-02-11 13:04:00 -03:00
Salvador E. Tropea a79c422087 Modified the manufacturers examples so they can be included.
- Better descriptions
- Unique names (gerbers -> Manufacturer_gerbers)
2021-02-11 12:38:02 -03:00
Salvador E. Tropea 8352d3ef94 Splitted other example tables 2021-02-05 11:19:53 -03:00
Salvador E. Tropea e776aaa1c2 Removed empty lines in the merged table. 2021-02-05 11:16:15 -03:00
Salvador E. Tropea 175e437bf8 Splitted the merged table example. 2021-02-05 11:15:16 -03:00
Salvador E. Tropea ed80e37bb7 Updated the BoM consolidation example. 2021-02-05 11:12:40 -03:00
Salvador E. Tropea 9ae5bcc3a9 Converted CSV examples to markdown tables. 2021-02-05 10:33:15 -03:00
Salvador E. Tropea 8f38499031 Added BoM consolidation example. 2021-02-05 10:25:06 -03:00
Salvador E. Tropea c6ad93dc78 Added clarification about the need of dot in edge_cut_extension option. 2021-01-28 15:37:28 -03:00
Salvador E. Tropea 409df8cca0 Fixed minimum KiCad version required is 5.1.6.
- KiCad 5.1.5 lacks GetBuildVersion()
- Fixes #45
2021-01-26 12:42:49 -03:00
Salvador E. Tropea 73cb98f113 Makefile generation. 2021-01-22 17:22:18 -03:00
Salvador E. Tropea eba8da098d Added more credits to the README 2021-01-21 14:54:42 -03:00
Salvador E. Tropea 15474ae4d7 Now you can consolidate more than one project in one BoM.
The basic idea comes from pimpmykicadbom by Anton Savov (@antto)
2021-01-21 14:43:47 -03:00
Salvador E. Tropea 88cd5927dc Now you can ask to compress the targets of an output (by out put name) 2021-01-18 16:12:30 -03:00
Salvador E. Tropea 159e8996e8 Added support for ZIP/TAR/RAR generation. 2021-01-15 13:33:33 -03:00
Salvador E. Tropea 75059b7b86 Added gerber and drill examples for various manufacturers.
From KiCad Gerber Zipper.
2021-01-14 10:40:59 -03:00
Salvador E. Tropea 9f4763c36b Custom reports for plot outputs (i.e. custom gerber job generation) 2021-01-14 10:24:04 -03:00
Salvador E. Tropea 9f6e6b2912 Updated the readme and example. 2021-01-13 16:58:43 -03:00
Salvador E. Tropea ceb6bbe52a Unified the capitalization after colons. 2021-01-12 15:39:05 -03:00
Salvador E. Tropea e0ab45e95d Now the default output name applies to the DRC and ERC report names.
This provides more coherent file names.
2021-01-12 13:44:09 -03:00
Salvador E. Tropea b2594ec8d3 Adapted Makefile to the new example.kibot.yaml file name. 2021-01-12 13:43:35 -03:00
Salvador E. Tropea fa86ba3506 Added note about pip limitations regarding to non-python deps.
Closes #41
2021-01-05 15:31:17 -03:00
Salvador E. Tropea 9ce0f891cd Added a note about virtualenv to the docs.
Closes #39
2021-01-05 15:23:52 -03:00
Salvador E. Tropea a6c4bd3bc9 Made clear that generic_plot.kibot.yaml is just a template.
Closes #40
2021-01-05 15:14:22 -03:00
Salvador E. Tropea b0cc64e5c5 Various fixes in the generated example.
- Now we can have a `example` different than the default.
- Added some _default members
- Support for missing schematic when using --list

Related to #40
2021-01-05 15:06:23 -03:00
Salvador E. Tropea 86a62bb8ff Fix example generation for list(dict) cases.
Related to #40
2021-01-05 13:53:00 -03:00
Salvador E. Tropea 6eba98d27f Fix incomplete pre-flight comments in generated example.
Related to #40
2021-01-05 13:34:08 -03:00
Salvador E. Tropea 9a1e1f39e7 Internal BoM: added `no_conflict` option.
Used to exclude fields from conflict detection.
2021-01-05 12:09:29 -03:00
Salvador E. Tropea c626f864f9 The step output now can download missing 3D models. 2020-12-30 15:22:00 -03:00
Salvador E. Tropea a5681d38e1 Try to fix the rotations table.
Escaping pipes.
2020-12-29 10:48:21 -03:00
Salvador E. Tropea 7165750496 Added some documentation about the rotation filter. 2020-12-29 10:44:48 -03:00
Salvador E. Tropea 0f7a55dc8b Added support to generate negative X positions for the bottom layer 2020-12-28 09:30:33 -03:00
Salvador E. Tropea d201843b6a File name patterns are allowed for the `netlist_file` option.
- Closes #33
- File name patterns: %F is the name of the source file without
  extension, but with the path.
2020-12-16 11:10:36 -03:00
Salvador E. Tropea 305e3251fa Updated the README and generic example.
- Added gerber notes
- Added new gerber option (KiCad 6)
2020-11-06 17:13:23 -03:00
Salvador E. Tropea e467368ea8 Added some notes about the gerber files. 2020-11-06 17:12:55 -03:00
nerdyscout bd7160b6a2 fix indentation and proper upload-artefacts version 2020-11-06 17:46:13 +00:00
Salvador E. Tropea de9628e5c1 Added columns configuration for position files.
You can customize which columns are used, their names and order.
Closes #22
2020-10-23 14:18:11 -03:00
Salvador E. Tropea 6bbd15eaf2 Updated README and generic example.
More KiCad 5 specific settings.
2020-10-19 16:49:08 -03:00
Salvador E. Tropea d2cceb7975 Updated README and generic example
KiCad 5 options
2020-10-19 13:37:06 -03:00
Salvador E. Tropea 1c26dd5f66 Added note about pip installing at system level.
Recommended manual cache generation.
2020-10-17 15:19:09 -03:00
Salvador E. Tropea 4a97885495 Added support for KiCad 6 error filters. 2020-10-15 17:00:58 -03:00
Salvador E. Tropea f5d9a69232 Updated the README and generic example
New mirror option.
2020-10-14 16:06:14 -03:00
Salvador E. Tropea 86ead74c27 Added KiBot warning filters.
- Closes #15
- This patch also changes the logging initialization, that was broken at
  some recent point.
- Also adds tests to ensure the mechanism used to avoid repeated
  warnings is working.
2020-10-12 16:31:47 -03:00
Salvador E. Tropea 8605ccdea4 Moved @nerdyscout changes to README.md to the README.in file. 2020-10-09 18:32:53 -03:00
Salvador E. Tropea 71fe37cfc6 Support for new `pcbnew_do export` options. 2020-10-09 11:27:30 -03:00
Salvador E. Tropea 75ae78a479 Marked the language of the README examples 2020-09-28 19:54:25 -03:00
Salvador E. Tropea 5e7c969af4 Added white border to the text in the logo
Helps for dark themes
2020-09-28 19:48:45 -03:00
Salvador E. Tropea 43bf78bfb9 Added some help about filters and variants. 2020-09-28 19:25:04 -03:00
Salvador E. Tropea 27e4c23236 Added support for reference separator in BoMs.
So you can get things like "R1, R2, R3"
From the following PR: SchrodingersGat/KiBoM#139
by @n0dyjeff
2020-09-19 17:35:31 -03:00
Salvador E. Tropea 2c98b2b634 Linked to the variants site instead of the repo.
Now I use a nice skin ;-)
2020-09-11 17:55:32 -03:00
Salvador E. Tropea ed40c64af7 Added note and link to the variants example site 2020-09-11 17:15:53 -03:00
Salvador E. Tropea 5cb239a651 Added the variants example 2020-09-11 17:15:20 -03:00
Salvador E. Tropea f25fd80b65 Applied #11 to README.in to preserve changes. 2020-09-09 08:43:16 -03:00
Salvador E. Tropea 23e46df1c5 Added variants support to the PCB print (PDF)
Needs some adjustement, but is working.
2020-09-07 19:26:16 -03:00
Salvador E. Tropea 0e394b468b Added variants support to the schematic SVG print. 2020-09-06 18:22:38 -03:00
Salvador E. Tropea 64f50d2a07 Moved repeated code related to variants to a base class. 2020-09-06 17:36:29 -03:00
Salvador E. Tropea b94a2cb6a4 Updated the readme and generic example.
Explanations about which IBoM options are native.
2020-09-05 18:59:21 -03:00
Salvador E. Tropea d09400d49d Added support for variants to the PcbDraw output. 2020-09-04 18:08:22 -03:00
Salvador E. Tropea cf46a8ba86 Added variants support to the STEP output.
3D Models of excluded components are removed.
2020-09-03 18:50:30 -03:00
Salvador E. Tropea 8c34d96ccf Updated README and generic example.
Variants in plot outputs
2020-09-03 11:12:13 -03:00
Salvador E. Tropea 26ee971e26 Added variants suport to out_position
Also: we never include virtual components.
2020-09-02 18:08:50 -03:00
Salvador E. Tropea 20936da07e Updated the README and generic example.
- Plural removed from BoM variant
- Support for filter in sch_variant and pdf_print_sch
- Support for variant in pdf_print_sch
2020-09-01 16:57:31 -03:00
Salvador E. Tropea 4b007938c1 Updated README and generic example.
- New output format (Schematic variant)
- Support for global output names in gerber.
2020-08-31 20:52:48 -03:00
Salvador E. Tropea a1455e0f46 Added more flexibility to filters.
Support for:
- Pass all
- Negated (in addition to its internal option)
- List of filters
2020-08-29 19:32:04 -03:00
Salvador E. Tropea 4cc5494f5f Updated the README and generic example.
- Functionality of IBoM that I reincorporated.
- Support for filters in internal BoM.
2020-08-29 17:43:49 -03:00
Salvador E. Tropea cc006c6260 Updated README and generic example.
Mainly because I moved IBoM options to IBoM variants.
2020-08-28 20:15:12 -03:00
Salvador E. Tropea 5ecb253525 Updated the README and example.
Mainly because of the addition of the variant to file names.
2020-08-28 16:50:41 -03:00
Salvador E. Tropea ab8550796d Added debug information to the docs generation.
This is run during the lint run, before even knowing if the code
is valid.
Having debug information is quite useful here.
2020-08-28 16:33:25 -03:00
SET 92530491b6 Fixed missing r in "nerdyscout" name 2020-08-18 23:19:55 -03:00
SET ac8e4f9c83 Added example of v0.6.0 Debian package installation. 2020-08-18 17:24:45 -03:00
SET f5c47ce290 Added pip installation instructions. 2020-08-18 17:20:49 -03:00
SET 73cade67bd Changed the project name in Coveralls. 2020-08-18 13:06:14 -03:00
SET a311794390 Added link to GitHub actions to the build status badge. 2020-08-18 13:01:06 -03:00
SET 4904e47cf5 Added PyPI future badge
Also unified the badges.
2020-08-18 12:58:41 -03:00
SET 018ce8d0a4 Changed README.md images to be loaded from outside GitHub 2020-08-18 10:55:29 -03:00
SET 231ffa5628 Added comment about update_xml is no longer needed. 2020-08-17 19:52:32 -03:00
SET cd6c1d5ba4 Added CASE2020 paper and poster. 2020-08-17 19:47:24 -03:00
SET cd1ea69c58 Added a picture with the data flow to the README. 2020-08-17 19:38:34 -03:00
SET 89914443f0 Renamed the kiplot module as kibot.
Also added src/kibot script.
Updated the documentation and Debian packaging.
The default extension for config files now is .kibot.yaml
2020-08-16 22:04:03 -03:00
SET f897f04cb9 Changed KiPlot -> KiBom in various places of the README.
Also added some credits.
2020-08-16 18:05:00 -03:00
SET 7e04d4190f Added logo and changed project name in the README. 2020-08-16 17:48:58 -03:00
SET 6ed344cfd6 Updated the README, generic example and CHANGELOG.
SVG output for all and internal BoM for the CHANGELOG.
2020-08-16 17:37:48 -03:00
SET e8c85a0272 Added logo with slogan 2020-08-16 11:32:40 -03:00
SET 5e68035ad6 Added variant of the robot logo.
Prettier but also heavier.
2020-08-16 10:10:15 -03:00
SET 276c644e1e Added SVG version of the robot logo. 2020-08-16 10:09:45 -03:00
SET 70cec67f19 Updated the README and generic example. 2020-08-16 00:22:32 -03:00
SET 6c4df66aeb Updated the README and generic example. 2020-08-15 11:02:12 -03:00
SET 07046f0d68 Updated README and generic example. 2020-08-13 23:07:21 -03:00
SET f231ac6835 Updated the README and the generic example. 2020-08-12 20:08:44 -03:00
SET 9b5259a18d Added some logo images.
"Ki" from KiCad, the funny bot and the combination in two resolutions.
2020-08-12 13:07:26 -03:00
SET 303bfb38fb Updated README.md and YAML example 2020-08-12 12:02:43 -03:00
SET fe2f5d6c65 Updated the documentation
Included new options: highlight_empty and max_col_width
2020-08-11 12:45:28 -03:00
Salvador E. Tropea 46c55fcf91 Separated the format specific options for internal BoM
And now we have more options.
- CVS: can quote all values.
- HTML and XLSX: styles adjust, including a logo.
- XLSX: now has the same options as HTML
Also a fix in the "join" mechanism for "case insensitive" support.
2020-08-05 19:57:32 -03:00
Salvador E. Tropea 99eab1c2f1 Removed `number_rows` from README.md and exampl config. 2020-08-01 18:42:01 -03:00
Salvador E. Tropea 544f34c6fc Added native BoM generator.
Based on KiBoM, but reading the data directly from the .sch
Information from the libs not supported yet.
2020-07-27 22:04:01 -03:00
Salvador E. Tropea 7dc94bf7be Added default output file name pattern.
Can be applied to all outputs.
2020-07-23 18:26:03 -03:00
Salvador E. Tropea 43b97db20c Now IBoM output file is coherent with other outputs.
The user can select the IBoM name mechanism, but the default is to use
a name coherent with all the other outputs.
2020-07-22 19:51:35 -03:00
Salvador E. Tropea 64bbf3d6e3 Updated the documentation and example.
- Output filenames changes.
- KiBoM configuration.
2020-07-22 18:35:24 -03:00
Salvador E. Tropea 247ffa99b1 Updated the README.in (missing in a1d5f62fcd) 2020-07-22 18:04:09 -03:00
Salvador E. Tropea a1d5f62fcd Updated the README.md and added a brief YAML explanation. 2020-07-22 11:20:04 -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 9fdc02ecea Added aliases for options.
The test case is the pdf_pcb_print.output_name, which is different than
other *.output options. Now output_name is an alias for output.
2020-07-12 09:41:16 -03:00
Salvador E. Tropea 52e6bb1b5f Added support for PcbDraw 2020-07-11 13:49:03 -03:00
Salvador E. Tropea 558ef81195 Updated Coveralls badge. 2020-07-09 18:50:04 -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 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 ee11ecf8e7 Added number, variant, conf and separator KiBoM options. 2020-07-02 23:30:57 -03:00
Salvador E. Tropea 25730bce39 Added a note about inner layer names in the README.md
After analyzing all the forks I found that at least 6 forks tried to fix the
Inner.X vs InX.Cu difference.
Also one seems to add support for the names used by pcbnew, but breaks
compatibility with old config files.
2020-07-02 17:19:04 -03:00
Salvador E. Tropea 4538236574 Now outputs and preflights are loaded as plugins.
They can be added from ~/.config/kiplot/plugins/
Also sorted the preflights in the YAML example and allower -v for
--help-list-outputs, needed to know from where are the plugins loaded.
2020-07-02 12:30:30 -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 4ae54f3ded Added --example/-x option to generate a configuration example.
The example contains all the available preflights and outputs.
If the user specifies a PCB the names of the layers are from the provided PCB
2020-06-30 20:09:14 -03:00
Salvador E. Tropea 017f2ace47 Fixed redundant "Supported outputs" in the README and updated command line help 2020-06-29 12:57:06 -03:00
Salvador E. Tropea a436aea8e7 Now the README.md is sychronized using the help output.
The --help-outputs and --help are embedded in the README.md
To make it easier to read now options are enclosed in `` and the list of
outputs is sorted.
2020-06-27 18:28:05 -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 a63e12579b Changed all the examples to set "sketch_plot" to false.
This is what we usually want, but this wasn't implemented.
2020-06-24 11:56:39 -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 9dccf7113f Generic config example update and cleanup 2020-06-19 15:48:16 -03:00
Salvador E. Tropea 8374238b6d Added STEP configuration examples. 2020-06-15 13:23:41 -03:00
Salvador E. Tropea fcdbbbe92d Added another example of YAML config 2020-05-20 08:58:34 -03:00
John Beard 02f3db1a2d Add preflight options, but they don't wowork 2018-06-02 17:21:47 +01:00
John Beard ac2ceedae2 Add HPGL and PDF to config 2018-06-02 17:06:37 +01:00
John Beard 57c320984a Add svg, fix mirror plot 2018-06-02 16:56:20 +01:00
John Beard 6dfbaea4e0 Add gerber drills 2018-06-02 16:51:58 +01:00
John Beard d3b331e3ad Add validation 2018-06-02 16:33:11 +01:00
John Beard f7805cbe09 Add postscript and other stuff 2018-06-02 15:51:50 +01:00
John Beard 5aada8a3cd Add postscript and other stuff 2018-06-02 15:51:24 +01:00
John Beard 1519ff2e08 Overhaul config parsing 2018-06-02 13:31:03 +01:00
John Beard fb7e579a64 Even more working 2018-06-02 12:28:46 +01:00
John Beard 5298dc2c72 Getting there 2018-06-01 23:56:22 +01:00
John Beard 21e185c9d6 Initial commit 2018-06-01 20:08:57 +01:00