Skip to content

Commit

Permalink
Upgrade to Kicad 7 (rusefi#5178)
Browse files Browse the repository at this point in the history
* update to kicad 7

* update rusefi_lib

* update InteractiveHtmlBom

* use my branch for now
  • Loading branch information
chuckwagoncomputing authored Mar 13, 2023
1 parent 37b97cc commit cfce02f
Show file tree
Hide file tree
Showing 7 changed files with 15 additions and 11 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/gen-diffs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ jobs:
- name: Install sshpass, kicad, and tk bindings
run: |
sudo bash misc/actions/add-ubuntu-latest-apt-mirrors.sh
sudo add-apt-repository --yes ppa:kicad/kicad-6.0-releases
sudo add-apt-repository --yes ppa:kicad/kicad-7.0-releases
sudo apt-get install sshpass kicad python3-pip python3-tk scour librsvg2-bin
pip install python-dateutil pygubu
- name: Get KiCad-Diff
run: git clone https://github.com/leoheck/KiCad-Diff.git
run: git clone -b exit-nicely https://github.com/chuckwagoncomputing/KiCad-Diff.git

- name: Set SSH variables
env:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/gen-ibom.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ name: Generate Interactive BOMs
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:

jobs:
generate:
Expand All @@ -18,6 +19,7 @@ jobs:
- name: Install prerequisite software
run: |
sudo bash misc/actions/add-ubuntu-latest-apt-mirrors.sh
sudo add-apt-repository --yes ppa:kicad/kicad-7.0-releases
sudo apt-get install kicad sshpass
- name: Set SSH variables
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ err.txt
log.txt
*.rusefi_binary
*.msq
*.kicad_prl

# Eclipse
.metadata/
Expand Down
2 changes: 1 addition & 1 deletion hardware/InteractiveHtmlBom
Submodule InteractiveHtmlBom updated 46 files
+1 −1 .gitignore
+27 −0 .jsbeautifyrc
+26 −19 DATAFORMAT.md
+1 −0 InteractiveHtmlBom/.gitattributes
+43 −13 InteractiveHtmlBom/Run.bat
+2 −1 InteractiveHtmlBom/__init__.py
+129 −85 InteractiveHtmlBom/core/config.py
+82 −47 InteractiveHtmlBom/core/ibom.py
+42 −37 InteractiveHtmlBom/core/units.py
+ InteractiveHtmlBom/dialog/bitmaps/btn-arrow-down.png
+ InteractiveHtmlBom/dialog/bitmaps/btn-arrow-up.png
+ InteractiveHtmlBom/dialog/bitmaps/btn-minus.png
+ InteractiveHtmlBom/dialog/bitmaps/btn-plus.png
+ InteractiveHtmlBom/dialog/bitmaps/btn-question.png
+114 −67 InteractiveHtmlBom/dialog/dialog_base.py
+212 −61 InteractiveHtmlBom/dialog/settings_dialog.py
+4 −2 InteractiveHtmlBom/dialog_test.py
+7 −0 InteractiveHtmlBom/ecad/__init__.py
+74 −3 InteractiveHtmlBom/ecad/common.py
+34 −30 InteractiveHtmlBom/ecad/easyeda.py
+862 −0 InteractiveHtmlBom/ecad/fusion_eagle.py
+98 −15 InteractiveHtmlBom/ecad/genericjson.py
+251 −86 InteractiveHtmlBom/ecad/kicad.py
+12 −4 InteractiveHtmlBom/ecad/kicad_extra/__init__.py
+0 −19 InteractiveHtmlBom/ecad/kicad_extra/parser_base.py
+58 −25 InteractiveHtmlBom/ecad/schema/genericjsonpcbdata_v1.schema
+30 −16 InteractiveHtmlBom/ecad/svgpath.py
+39 −20 InteractiveHtmlBom/generate_interactive_bom.py
+1 −1 InteractiveHtmlBom/i18n/language_en.bat
+17 −0 InteractiveHtmlBom/i18n/language_zh.bat
+ InteractiveHtmlBom/icon.png
+19 −12 InteractiveHtmlBom/version.py
+102 −25 InteractiveHtmlBom/web/ibom.css
+20 −4 InteractiveHtmlBom/web/ibom.html
+336 −140 InteractiveHtmlBom/web/ibom.js
+105 −62 InteractiveHtmlBom/web/render.js
+371 −0 InteractiveHtmlBom/web/table-util.js
+111 −53 InteractiveHtmlBom/web/util.js
+2 −2 README.md
+70 −0 icons/btn-arrow-down.svg
+70 −0 icons/btn-arrow-up.svg
+72 −0 icons/btn-minus.svg
+80 −0 icons/btn-plus.svg
+87 −0 icons/btn-question.svg
+90 −78 icons/plugin.svg
+272 −174 settings_dialog.fbp
2 changes: 1 addition & 1 deletion hardware/rusefi_lib
13 changes: 7 additions & 6 deletions misc/jenkins/InteractiveHtmlBom/run.sh
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
#!/bin/bash

INTERACTIVE_HTML_BOM_NO_DISPLAY="true"
IBOM_CMD="python3 hardware/InteractiveHtmlBom/InteractiveHtmlBom/generate_interactive_bom.py --no-browser --name-format \"%f_latest\" --dest-dir ../ibom --include-nets"
echo "IBOM_CMD=$IBOM_CMD"
ibom() {
python3 hardware/InteractiveHtmlBom/InteractiveHtmlBom/generate_interactive_bom.py --no-browser --name-format "%f_latest" --dest-dir ../ibom --include-nets $@
}

pwd
[ -e hardware/frankenso/frankenso.kicad_pcb ] || { echo "hardware/frankenso/frankenso.kicad_pcb not found. Was this invoked from wrong folder?"; exit -1; }
echo "Current directory: $(pwd)"
[ $(basename $(pwd)) = 'rusefi' ] || { echo "Not in 'rusefi' directory. Was this invoked from the wrong directory?"; exit 1; }

for f in $(ls hardware/*/*.kicad_pcb); do
if ls $(dirname $f)/$(basename $f .kicad_pcb).net 2>/dev/null; then
$IBOM_CMD --netlist-file $(ls $(dirname $f)/$(basename $f .kicad_pcb).net) $f
ibom --netlist-file $(ls $(dirname $f)/$(basename $f .kicad_pcb).net) $f
else
$IBOM_CMD $f
ibom $f
fi
done
2 changes: 1 addition & 1 deletion misc/jenkins/generate_ibom/gen_upload_ibom.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash

echo "Should be executed from project root folder. Will try to upload to $RUSEFI_FTP_SERVER"
echo "Should be executed from project root folder. Will try to upload to $RUSEFI_SSH_SERVER"
pwd
# ibom is part of Doxygen job simply in order to reduce workspace HDD usage on my tiny build server
bash misc/jenkins/InteractiveHtmlBom/run.sh
Expand Down

0 comments on commit cfce02f

Please sign in to comment.