name: 'Setup and run pregeneration' description: 'Sets up the dependencies needed to generate generated files and runs all generation scripts' runs: using: "composite" steps: - name: Set up Python 3.12 uses: actions/setup-python@v6 with: python-version: '3.12' - name: Install jinja and protobuf run: python -m pip install jinja2 protobuf grpcio-tools shell: bash - name: Install protobuf and perl dependencies run: | sudo apt-get update sudo apt-get install -y protobuf-compiler liblist-moreutils-perl wget https://github.com/HebiRobotics/QuickBuffers/releases/download/1.3.3/protoc-gen-quickbuf-1.3.3-linux-x86_64.exe chmod +x protoc-gen-quickbuf-1.3.3-linux-x86_64.exe shell: bash - name: Regenerate ntcore run: ./ntcore/generate_topics.py shell: bash - name: Regenerate mrccomm run: ./hal/generate_nanopb.py shell: bash - name: Regenerate imgui run: | ./thirdparty/imgui_suite/generate_fonts.sh ./thirdparty/imgui_suite/generate_gl3w.py shell: bash - name: Regenerate HIDs run: | ./wpilibc/generate_hids.py ./wpilibj/generate_hids.py ./commandsv2/generate_hids.py shell: bash - name: Regenerate PWM motor controllers run: | ./wpilibc/generate_pwm_motor_controllers.py ./wpilibj/generate_pwm_motor_controllers.py shell: bash - name: Regenerate mrcal minimath run: ./tools/wpical/generate_mrcal.py shell: bash - name: Regenerate wpimath run: | ./wpimath/generate_nanopb.py ./wpimath/generate_numbers.py ./wpimath/generate_quickbuf.py --quickbuf_plugin protoc-gen-quickbuf-1.3.3-linux-x86_64.exe shell: bash - name: Regenerate Commands v3 run: | ./commandsv3/generate_files.py --quickbuf_plugin protoc-gen-quickbuf-1.3.3-linux-x86_64.exe shell: bash - name: Regenerate wpiunits run: ./wpiunits/generate_units.py shell: bash - name: Regenerate wpiutil nanopb run: ./wpiutil/generate_nanopb.py shell: bash