Skip to content

Modernize Processing sketches and add ribbon and field shaders #5

Modernize Processing sketches and add ribbon and field shaders

Modernize Processing sketches and add ribbon and field shaders #5

Workflow file for this run

name: Processing 4
on:
push:
branches: [master]
pull_request:
branches: [master]
permissions:
contents: read
jobs:
verify:
name: Java 17 / Processing 4.5.6
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Check out repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Set up Java 17
uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0
with:
distribution: temurin
java-version: "17.0.20+101"
cache: maven
- name: Compile library; run parser tests; regenerate API documentation
run: mvn --batch-mode --no-transfer-progress clean verify javadoc:javadoc
- name: Verify bundled library and documentation are current
run: |
cmp target/BVHParser.jar p5f_sample/code/BVHParser.jar
find target/reports/apidocs -type f \( -name '*.html' -o -name '*.css' -o -name '*.js' \
-o -name 'ADDITIONAL_LICENSE_INFO' \) \
-exec perl -pi -e 's/[ \t]+$//' {} +
diff --recursive --brief target/reports/apidocs p5f_sample/lib/doc
- name: Restore Processing 4.5.6 cache
id: processing-cache
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ runner.temp }}/processing-4.5.6
key: processing-4.5.6-linux-x64-ddb816ca
- name: Download Processing 4.5.6
if: steps.processing-cache.outputs.cache-hit != 'true'
env:
PROCESSING_URL: https://github.com/processing/processing4/releases/download/processing-1434-4.5.6/processing-4.5.6-linux-x64-portable.zip
PROCESSING_SHA256: ddb816ca2c02e862a5dcf22b96bb4f81f412c4878673752b36837a7770970a6c
run: |
curl --fail --location --retry 3 --output "${RUNNER_TEMP}/processing.zip" "${PROCESSING_URL}"
echo "${PROCESSING_SHA256} ${RUNNER_TEMP}/processing.zip" | sha256sum --check
mkdir -p "${RUNNER_TEMP}/processing-4.5.6"
unzip -q "${RUNNER_TEMP}/processing.zip" -d "${RUNNER_TEMP}/processing-4.5.6"
- name: Compile and render all sketches; reject invalid and missing shaders
run: |
PROCESSING_BIN=$(find "${RUNNER_TEMP}/processing-4.5.6" -type f \( -name processing -o -name Processing \) -print -quit)
test -n "${PROCESSING_BIN}"
chmod +x "${PROCESSING_BIN}"
xvfb-run --auto-servernum ./scripts/verify-sketches.sh \
"${PROCESSING_BIN}" "${RUNNER_TEMP}/sketch-verification"
- name: Preserve rendered frames and runtime logs
if: always()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: processing-render-verification
path: |
${{ runner.temp }}/sketch-verification/**/frame.png
${{ runner.temp }}/sketch-verification/**/runtime.log
if-no-files-found: warn