-
-
Notifications
You must be signed in to change notification settings - Fork 2k
ci: Add CI step to check if precompiled regl shaders need to be updated #7786
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
ea52bec
3417dd7
c79c346
6f66274
42b3c85
4213feb
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -23,6 +23,7 @@ jobs: | |
| outputs: | ||
| stackgl_modules: ${{ steps.check.outputs.stackgl_modules }} | ||
| topojson: ${{ steps.check.outputs.topojson }} | ||
| regl_codegen: ${{ steps.check.outputs.regl_codegen }} | ||
| steps: | ||
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | ||
| with: | ||
|
|
@@ -42,6 +43,11 @@ jobs: | |
| if git diff --name-only "$BASE"...HEAD -- stackgl_modules/ | grep -q .; then | ||
| echo "stackgl_modules=true" >> "$GITHUB_OUTPUT" | ||
| fi | ||
| # stackgl_modules/ is listed here too because the regl-* shader libs live there; | ||
| # changes can alter shader output and require regenerating the precompiled shaders. | ||
| if git diff --name-only "$BASE"...HEAD -- src/traces/scattergl/ src/traces/scatterpolargl/ src/traces/splom/ src/traces/parcoords/ src/lib/prepare_regl.js stackgl_modules/ devtools/regl_codegen/ | grep -q .; then | ||
| echo "regl_codegen=true" >> "$GITHUB_OUTPUT" | ||
| fi | ||
|
|
||
| # ============================================================ | ||
| # Root build job - all dependent jobs fan out from here | ||
|
|
@@ -753,3 +759,54 @@ jobs: | |
| name: topojson-dist | ||
| retention-days: 7 | ||
| path: topojson/dist/ | ||
|
|
||
| check-regl-codegen: | ||
| needs: [detect-changes, install-and-cibuild] | ||
| if: >- | ||
| (github.event_name == 'push' && github.ref_name == github.event.repository.default_branch) || | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @camdecoster Does this mean the job will only be triggered on push to
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We want it to run on pull requests also, right? |
||
| needs.detect-changes.outputs.regl_codegen == 'true' | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 10 | ||
| steps: | ||
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | ||
| - uses: ./.github/actions/setup-workspace | ||
| - uses: ./.github/actions/setup-chrome | ||
|
|
||
| - name: Run regl codegen | ||
| run: | | ||
| # Wipe the codegen output dir so orphaned shader files surface as deletions in the diff below. | ||
| rm -rf src/generated/regl-codegen/* | ||
| node devtools/regl_codegen/server.mjs & | ||
| SERVER_PID=$! | ||
| until curl -sf -o /dev/null http://localhost:3000/build/regl_codegen-bundle.js 2>/dev/null; do | ||
| sleep 1 | ||
| done | ||
| $CHROME_BIN --headless=new --no-sandbox --enable-unsafe-swiftshader --ignore-gpu-blocklist http://localhost:3000/devtools/regl_codegen/index.html & | ||
| wait $SERVER_PID | ||
|
|
||
| - name: Check regl precompiled shaders are up to date | ||
| run: | | ||
| # git add -N so newly-generated (untracked) shader files show up in git diff | ||
| git add -N src/generated/regl-codegen/ | ||
| if ! git diff --exit-code \ | ||
| src/generated/regl-codegen/ \ | ||
| src/traces/scattergl/regl_precompiled.js \ | ||
| src/traces/scatterpolargl/regl_precompiled.js \ | ||
| src/traces/splom/regl_precompiled.js \ | ||
| src/traces/parcoords/regl_precompiled.js; then | ||
| echo "::error::Regl precompiled shaders are out of date. Download the 'regl-codegen' artifact from this workflow run and commit the updated files to this pull request." | ||
| exit 1 | ||
| fi | ||
|
|
||
| - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 | ||
| name: Upload updated regl codegen files | ||
| if: failure() | ||
| with: | ||
| name: regl-codegen | ||
| retention-days: 7 | ||
| path: | | ||
| src/generated/regl-codegen/ | ||
| src/traces/scattergl/regl_precompiled.js | ||
| src/traces/scatterpolargl/regl_precompiled.js | ||
| src/traces/splom/regl_precompiled.js | ||
| src/traces/parcoords/regl_precompiled.js | ||
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -163,18 +163,38 @@ npm run schema | |||||||||
| #### Step 9: REGL - Review & commit potential changes to precompiled regl shaders | ||||||||||
|
|
||||||||||
| If you are implementing a new feature that involves regl shaders, or if you are | ||||||||||
| making changes that affect the usage of regl shaders, you would need to run | ||||||||||
| making changes that affect the usage of regl shaders, you would need to regenerate the precompiled regl shader code. | ||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Comment on lines
165
to
+166
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. "if you are making changes that affect the usage of regl shaders" How would a contributor know whether this applies to them? Is it a "if you know, you know" type of situation? Or, is there a list of files which, if they are changed, the regl shader code will definitely need to be regenerated? |
||||||||||
|
|
||||||||||
| This is needed because regl performs codegen in runtime which breaks CSP | ||||||||||
| compliance, and so for strict builds we pre-generate regl shader code here. | ||||||||||
|
|
||||||||||
| The CI pipeline will automatically detect when regl-related files have changed and | ||||||||||
| run the codegen process. If the precompiled shaders are out of date, the | ||||||||||
| `check-regl-codegen` job will fail and upload a `regl-codegen` artifact containing | ||||||||||
| the updated files. The artifact represents the full desired state of the codegen | ||||||||||
| output (CI wipes the output directory before regenerating, so any orphaned shader | ||||||||||
| files are pruned). To fix this: | ||||||||||
|
|
||||||||||
| 1. Download the `regl-codegen` artifact from the failed workflow run | ||||||||||
| 2. Delete `src/generated/regl-codegen/` in your working tree, then unzip the | ||||||||||
| artifact at the repo root so it replaces (rather than merges into) the | ||||||||||
| existing directory. Also overwrite the four `regl_precompiled.js` files | ||||||||||
| under `src/traces/{scattergl,scatterpolargl,splom,parcoords}/`. | ||||||||||
|
Comment on lines
+179
to
+182
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't quite follow this -- will these If you have a link to an uploaded artifact, I can verify |
||||||||||
| 3. Commit and push the changes to your pull request | ||||||||||
|
|
||||||||||
| Alternatively, you can regenerate the code locally: | ||||||||||
|
|
||||||||||
| ```bash | ||||||||||
| rm -rf src/generated/regl-codegen/* | ||||||||||
| npm run regl-codegen | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| to regenerate the regl code. This will prompt you to open a browser window. This will then run through all | ||||||||||
| traces with 'regl' in the tags, and store the captured code into | ||||||||||
| [src/generated/regl-codegen](https://github.com/plotly/plotly.js/blob/master/src/generated/regl-codegen). If no updates are necessary, it will be a no-op, but if there are changes, you will need to commit them. | ||||||||||
|
|
||||||||||
| This is needed because regl performs codegen in runtime which breaks CSP | ||||||||||
| compliance, and so for strict builds we pre-generate regl shader code here. | ||||||||||
| The `rm -rf` mirrors what CI does, so any orphaned shader files left over from | ||||||||||
| previous changes get cleaned up. `npm run regl-codegen` will prompt you to open a | ||||||||||
|
Comment on lines
+192
to
+193
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||
| browser window, run through all traces with 'regl' in the tags, and store the | ||||||||||
| captured code into | ||||||||||
| [src/generated/regl-codegen](https://github.com/plotly/plotly.js/blob/master/src/generated/regl-codegen). | ||||||||||
|
Comment on lines
+194
to
+196
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Some of the captured code will also be stored into Or do those files need to be moved manually? |
||||||||||
| Commit any changes that result. | ||||||||||
|
|
||||||||||
| #### Other npm scripts that may be of interest in development | ||||||||||
|
|
||||||||||
|
|
||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,13 +1,13 @@ | ||
| 'use strict'; | ||
| var v0 = require('../../generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45'); | ||
| var v1 = require('../../generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0'); | ||
| var v2 = require('../../generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470'); | ||
| var v3 = require('../../generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d'); | ||
| var v0 = require('../../generated/regl-codegen/30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0'); | ||
| var v1 = require('../../generated/regl-codegen/3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d'); | ||
| var v2 = require('../../generated/regl-codegen/453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45'); | ||
| var v3 = require('../../generated/regl-codegen/a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470'); | ||
|
|
||
| /* eslint-disable quote-props */ | ||
| module.exports = { | ||
| '453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45': v0, | ||
| '30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0': v1, | ||
| 'a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470': v2, | ||
| '3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d': v3 | ||
| '30680f8f6712ef1af5cf7547e0af35b036fb300c67b07967cf448492ff4de4d0': v0, | ||
| '3fd666968f3ce90d1c048b7a9aab515f3ce387a5401a10f8b66121c9469d1c0d': v1, | ||
| '453a70fefa48db31713162aeb1ac438cb8579f54504f3b23acf32128df3dfd45': v2, | ||
| 'a3970baf1d8cac9305ee830c7026550387343d4dde2353dd86a4d082c97d3470': v3 | ||
| }; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,25 +1,25 @@ | ||
| 'use strict'; | ||
| var v0 = require('../../generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b'); | ||
| var v1 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81'); | ||
| var v2 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623'); | ||
| var v3 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7'); | ||
| var v4 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d'); | ||
| var v5 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210'); | ||
| var v6 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5'); | ||
| var v7 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019'); | ||
| var v8 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923'); | ||
| var v9 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034'); | ||
| var v1 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210'); | ||
| var v2 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923'); | ||
| var v3 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034'); | ||
| var v4 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623'); | ||
| var v5 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019'); | ||
| var v6 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81'); | ||
| var v7 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d'); | ||
| var v8 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5'); | ||
| var v9 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7'); | ||
|
|
||
| /* eslint-disable quote-props */ | ||
| module.exports = { | ||
| '3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b': v0, | ||
| 'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v1, | ||
| '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v2, | ||
| 'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v3, | ||
| 'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v4, | ||
| '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v5, | ||
| 'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v6, | ||
| 'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v7, | ||
| '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v8, | ||
| '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v9 | ||
| '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v1, | ||
| '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v2, | ||
| '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v3, | ||
| '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v4, | ||
| 'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v5, | ||
| 'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v6, | ||
| 'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v7, | ||
| 'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v8, | ||
| 'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v9 | ||
| }; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,25 +1,25 @@ | ||
| 'use strict'; | ||
| var v0 = require('../../generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b'); | ||
| var v1 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81'); | ||
| var v2 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623'); | ||
| var v3 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7'); | ||
| var v4 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d'); | ||
| var v5 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210'); | ||
| var v6 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5'); | ||
| var v7 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019'); | ||
| var v8 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923'); | ||
| var v9 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034'); | ||
| var v1 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210'); | ||
| var v2 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923'); | ||
| var v3 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034'); | ||
| var v4 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623'); | ||
| var v5 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019'); | ||
| var v6 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81'); | ||
| var v7 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d'); | ||
| var v8 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5'); | ||
| var v9 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7'); | ||
|
|
||
| /* eslint-disable quote-props */ | ||
| module.exports = { | ||
| '3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b': v0, | ||
| 'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v1, | ||
| '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v2, | ||
| 'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v3, | ||
| 'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v4, | ||
| '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v5, | ||
| 'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v6, | ||
| 'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v7, | ||
| '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v8, | ||
| '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v9 | ||
| '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v1, | ||
| '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v2, | ||
| '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v3, | ||
| '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v4, | ||
| 'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v5, | ||
| 'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v6, | ||
| 'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v7, | ||
| 'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v8, | ||
| 'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v9 | ||
| }; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,25 +1,25 @@ | ||
| 'use strict'; | ||
| var v0 = require('../../generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b'); | ||
| var v1 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81'); | ||
| var v2 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623'); | ||
| var v3 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5'); | ||
| var v4 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019'); | ||
| var v5 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7'); | ||
| var v6 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d'); | ||
| var v7 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210'); | ||
| var v8 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923'); | ||
| var v9 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034'); | ||
| var v1 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210'); | ||
| var v2 = require('../../generated/regl-codegen/6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923'); | ||
| var v3 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034'); | ||
| var v4 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623'); | ||
| var v5 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019'); | ||
| var v6 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81'); | ||
| var v7 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d'); | ||
| var v8 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5'); | ||
| var v9 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7'); | ||
|
|
||
| /* eslint-disable quote-props */ | ||
| module.exports = { | ||
| '3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b': v0, | ||
| 'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v1, | ||
| '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v2, | ||
| 'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v3, | ||
| 'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v4, | ||
| 'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v5, | ||
| 'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v6, | ||
| '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v7, | ||
| '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v8, | ||
| '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v9 | ||
| '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v1, | ||
| '6a5d6bd29c15cf7614221b94c3f384df47c2c46fbe4456e8c57b5cd14c84d923': v2, | ||
| '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v3, | ||
| '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v4, | ||
| 'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v5, | ||
| 'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v6, | ||
| 'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v7, | ||
| 'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v8, | ||
| 'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v9 | ||
| }; |
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding an additional line of explanation (feel free to adjust if not accurate)